JP2017534133A - 分散ストレージ及びレプリケーションシステム、並びに方法 - Google Patents
分散ストレージ及びレプリケーションシステム、並びに方法 Download PDFInfo
- Publication number
- JP2017534133A JP2017534133A JP2017539482A JP2017539482A JP2017534133A JP 2017534133 A JP2017534133 A JP 2017534133A JP 2017539482 A JP2017539482 A JP 2017539482A JP 2017539482 A JP2017539482 A JP 2017539482A JP 2017534133 A JP2017534133 A JP 2017534133A
- Authority
- JP
- Japan
- Prior art keywords
- partition
- view
- osd
- osd node
- primary
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2064—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring while ensuring consistency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2028—Failover techniques eliminating a faulty processor or activating a spare
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2041—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with more than one idle spare processing component
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2048—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share neither address space nor persistent storage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2094—Redundant storage or storage space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/273—Asynchronous replication or reconciliation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0709—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
- G06F11/0757—Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Hardware Redundancy (AREA)
- Stored Programmes (AREA)
Abstract
Description
プロセッサは、メモリに接続されて、メモリの中の命令を読み取ることであって、命令は、MDCモジュール、IOルーティングモジュール、及びOSDノードの機能を実行するために使用される命令を含むこと、及び命令により、プロセッサが以下の操作、すなわち、
MDCモジュールが、システムにおけるOSDノードが障害を有するOSDノードであると決定すること、障害を有するOSDノード上のpartitionを決定すること、障害を有するOSDノード上のpartitionを含むpartitionグループのpartition viewを更新すること、及び更新されたpartition viewにおけるpartitionグループが位置付けられている一次OSDノードに更新通知を送信して、一次OSDノードが、更新されたpartition viewにより、IO要求に対応するデータのレプリケーションを処理することを可能にすること、
を実行することを可能にするように適応される。
プロセッサは、メモリに接続されて、メモリの中の命令を読み取ることであって、命令は、MDCモジュール、IOルーティングモジュール、及びOSDノードの機能を実行するために使用される命令を含むこと、及び命令により、プロセッサが以下の操作、すなわち、
IOルーティングモジュールが、IO要求を受信することであって、IO要求は、keyを含む、受信すること、keyにより、IO要求に対応するデータが属するpartitionグループを決定すること、データが属するpartitionグループの一次OSDノードを決定すること、データが属するpartitionグループのIO viewのIO viewバージョン情報をIO要求に追加すること、及び決定された一次OSDノードに、IO viewバージョン情報を搬送するIO要求を送信すること、を可能にすること、
一次OSDノードが、IO要求を受信すること、IO viewバージョン情報により、IO要求におけるIO viewバージョンが、ローカルで記憶されたIO viewバージョンと整合性があると決定した後、IO要求を実行すること、IO viewバージョン情報を搬送するレプリケーション要求を生成すること、及びレプリケーション要求を、データが属するpartitionの二次OSDノードに送信すること、を可能にすること、並びに
二次OSDノードが、レプリケーション要求を受信し、IO viewバージョン情報により、レプリケーション要求におけるIO viewバージョンが、二次OSDノード上にローカルで記憶されたIO viewバージョンと整合性があると決定した後、レプリケーション要求を実行して、二次OSDノード上のIO要求に対応するデータが、一次OSDノード上のIO要求に対応するデータと整合性を保つことを可能にすること、
を実行することを可能にするように適応される。
プロセッサは、メモリに接続されて、メモリの中の命令を読み取ることであって、命令は、MDCモジュール、IOルーティングモジュール、及びOSDノードの機能を実行するために使用される命令を含むこと、及び命令により、プロセッサが以下の操作、すなわち、
OSDノードが、フェイルバックの後、MDCモジュールに、OSDノード上のpartitionを含むpartitionグループのIO viewを要求するクエリ要求を送信することであって、OSDノードは、フェイルバックOSDノードと呼ばれ、クエリ要求は、フェイルバックOSDノードのOSD識別子を搬送する、送信すること、MDCによって返されるIO viewを受信すること、IO viewにおける一次OSDに対してデータ回復要求を開始して、障害中にフェイルバックOSDノードによって更新されたデータを回復することを要求すること、障害中に更新され、かつ一次OSDによって送信されるデータを受信すること、及びpartitionグループのものであり、かつフェイルバックOSDノードがデータ回復を完了した後にMDCモジュールによって更新されたpartition viewにより、IO要求のレプリケーションを処理すること、を可能にすること、
MDCモジュールが、フェイルバックOSDノードのクエリ要求を受信すること、クエリ要求におけるOSD識別子によりフェイルバックOSDノードにIO viewを返すこと、及びフェイルバックOSDノードがデータ回復を完了した後、partitionグループのpartition viewを更新すること、を可能にすること、並びに
一次OSDノードが、フェイルバックOSDノードのデータ回復要求を受信すること、フェイルバックOSDノードに、障害中に更新されたデータを送信すること、及びpartitionグループのものであり、かつフェイルバックOSDノードがデータ回復を完了した後にMDCモジュールによって更新されたpartition viewにより、IO要求に対応するデータのレプリケーションを処理すること、を可能にすること、
を実行することを可能にするように適応される。
partition X一次OSDノードが障害を有するようになった後、システムにおけるMDCモジュールが、IO要求を処理するプロセスにおいて、partition X一次OSDノードが障害を有するようになったことを検出した場合、partitionグループのpartition viewにおけるpartition X一次OSDノードを新たなpartition X二次OSDノードとして設定し、その新たなpartition X二次OSDノードのpartitionステータスに不整合であるという印を付け、partitionグループのpartition viewにおけるpartition X二次OSD1ノードを新たなpartition X一次OSDノードとして設定し、その新たなpartition X一次OSDノードにpartitionグループの更新されたpartition viewを送信し、partitionグループのIO viewにおけるpartition X二次OSD1ノードを新たなpartition X一次OSDノードとして設定し、IOルーティングモジュールにpartitionグループの更新されたIO viewを送信し、
IOルーティングモジュールが、partitionグループのものであり、かつMDCモジュールによって送信される更新されたIO viewを受信し、partitionグループの更新されたIO viewにより、その新たなpartition X一次OSDノードにIO要求を送信し、かつ
その新たなpartition X一次OSDノードが、IO要求を受信すること、IO要求を実行した後、レプリケーション要求を生成すること、及びその新たなレプリケーション要求を、partitionの更新されたpartition viewにおける別の二次OSDノードに送信するように適応され、レプリケーション要求を生成するステップ、及びレプリケーション要求を送信するステップは、前述のステップ714及び716と同一である。
partition X二次OSDノードが障害を有するようになった後、MDCモジュールが、IO要求を処理するプロセスにおいて、partition X二次OSDノードが障害を有するようになったことを検出した場合、partition viewにおけるpartition X二次OSDノードのpartitionステータスに不整合であるという印を付け、partition X一次OSDノードにpartitionグループの更新されたpartition viewを送信するようにさらに適応され、かつ
一次OSDノードが、partitionグループの更新されたpartition viewを受信した後、更新されたpartition viewにおいてpartitionステータスに整合性がある別の二次OSDノードにレプリケーション要求を送信し、partitionステータスが不整合であるpartition X二次OSDノードにレプリケーション要求を送信することを省くように適応される。
MDCモジュールが、IO要求を処理するプロセスにおいて、新たなOSDノードがクラスタに参加することを決定した場合、partition X一次OSDノードに、その新たなOSDノードが、partition Xが位置付けられる新たな二次OSDノードの役割をすることを通知し、partitionデータ同期が完了された後、partitionグループのpartition view及びIO viewを更新し、partition X一次OSDノード上にローカルで記憶されたpartition viewを更新するようpartition X一次OSDノードに指示し、かつ
partition X一次OSDノードが、partition X一次OSDノード上の一次partitionのデータを新たな二次OSDノードに同期させ、更新されたローカルで記憶されたpartitionにより、その新たな二次OSDノードにレプリカ要求を送信する。
(1)障害を有するOSDノード上のpartitionが二次partitionを含む場合、二次partitionを含むpartitionグループのpartition viewにおける障害を有するOSDノードのpartitionステータスに不整合であるという印が付けられ、同時に、partitionグループの一次OSDノードに更新されたpartition viewについての通知が行われ、partitionプロセスの一次OSDノードが、更新されたpartition viewにより、IO要求に対応するデータのレプリケーションを処理し、
(2)障害を有するOSDノード上のpartitionが一次partitionを含む場合、一次partitionを含むpartitionグループのpartition viewにおいて一次OSDノードの役割をする障害を有するOSDノードが、新たな二次OSDノードとして設定され、新たな二次OSDノードに対応するpartitionステータスに不整合であるという印が付けられ、partitionステータスに整合性がある二次OSDノードが、一次partitionを含むpartitionグループのpartition viewにおける元の二次OSDノードから選択され、選択された二次OSDノードが新たな一次OSDノードとして設定され、次に、その新たな一次OSDノードにpartition view更新についての通知が行われ、別の二次OSDノードにIO view更新についての通知が行われ、partitionグループの一次OSDが障害を有するようになり、かつすべての二次partitionが位置付けられるOSDノードのpartitionステータスが不整合である場合、partition view及びIO viewに対して変更はまったく行われず、一次partitionレプリカが、最新の完全なデータを有することを確実にして、その結果、データレプリケーション整合性を確実にすることが要求される。
新たな一次OSDノードが、更新されたローカルで記憶されたpartition viewにより、IOルーティングモジュールからのIO要求に対応するデータを、更新されたローカルで記憶されたpartition viewにおける、partitionステータスに整合性があるpartitionが位置付けられるpartition上の二次OSDノード上に、又は更新されたローカルで記憶されたpartition viewに位置付けられる、partitionステータスが不整合であるが、データを回復しているpartition上の二次OSDノードに障害を隔離するように、かつ適切な、中断のないIO要求処理を確実にするようにして、その結果、システムのフォールトトレランスを向上させ、かつシステムのパフォーマンス及び利用可能性を相応するように向上させることを特に含み得る。さらに、OSDノード障害の影響範囲が、partition粒度におけるクラスタビューの制御を用いて狭められることが可能であり、したがって、システムは、大規模に拡張されることが可能であり、システム拡張性が向上される。
(1)OSD viewを更新すること、すなわち、OSDxノードのステータスが、「イン(IN)」かつ「アップ(UP)」状態から「イン(IN)」かつ「ダウン(DOWN)」状態に更新されること、
(2)partition viewを変更すること、すなわち、P1に関して、OSDyノードがP1の一次OSDノードとして設定され(partitionステータスに整合性がある第1の二次OSDノードが、P1の二次OSDノードリストから選択され、partitionグループの一次OSDノードとして設定される)、OSDxがP1の二次OSDノードとして設定され、OSDxの対応するpartitionステータスが「不整合である」に更新され、Pnに関して、Pnの二次OSDxのpartitionステータスが不整合に変更されること、
(3)IO viewを更新すること、すなわち、P1に関して、元のOSDxノードが、P1のIO viewにおける一次OSDノードとしてOSDyノードで置き換えられ、Pnに関して、障害を有するOSDxノードは、Pnの二次OSDノードの役割をするに過ぎず、Pnの一次OSDyノードは、障害を有するようにならないため、PnのIO viewは更新されないことを特に含み得る。
(1)二次OSDノードが、一次OSDノードと、障害中に一次OSDノードによって実行されたデータ変更を同期し、これは、インクリメンタルな同期プロセスであり、無論、実際の応用形態において、partitionのすべてのデータは、実際の状況により同期され得る。
(2)二次OSDノードが一次OSDノードのものと整合性がある状態に戻った後、MDCモジュールが、クラスタビューを変更する。
(3)MDCモジュールが、各モジュール及び各ノードに更新されたクラスタビューについて通知して、各モジュール及び各ノードが、通知された更新されたクラスタビューによりIO要求レプリケーション又はIO要求転送を処理するようにする。
(1)OSDノードが、障害前にpartitionグループの二次OSDノードである場合、partition viewだけが変更されることが可能であり、partition viewに対応する二次OSDノードのpartitionステータスは、「整合性がある」状態に変更され、変更されたpartition viewが一次OSDノードに通知される。
(2)OSDノードが、障害前にpartitionグループの一次OSDノードである場合、partition viewとIO viewの両方が変更され、前のOSDノードがpartitionグループの新たな一次OSDノードに設定され、現在の一次OSDがpartitionグループの二次OSDノードとして設定され、新たな一次OSDノードがpartition viewを変更するよう指示され、IOルーティングモジュール及び二次OSDノードがIO viewを変更するよう指示される。
Claims (37)
- 分散ストレージ及びレプリケーションシステムであって、前記システムは、少なくとも1つのメタデータ制御(MDC)モジュールと、複数のIOルーティングモジュールと、複数のオブジェクトベースのストレージデバイス(OSD)ノードとを備え、前記MDCモジュールは、各OSDノードに関して、各OSDノードによって管理される物理ストレージリソースに対応する少なくとも1つの論理パーティション(partition)を構成し、前記少なくとも1つのpartitionは、一次partition、二次partition、又は一次partitionと二次partitionの任意の組合せであり、一次partition、及び前記一次partitionに対応する二次partitionは、partitionグループを構成し、同一のpartitionグループの中の一次partitionと二次partitionは、異なるOSDノード上に位置付けられ、一次partitionが位置付けられるOSDノードは、前記一次partitionを備えるpartitionグループの一次OSDノードであり、二次partitionが位置付けられるOSDノードは、前記二次partitionを備えるpartitionグループの二次OSDノードであり、並びに前記partitionによりpartitionビューを生成し、前記partitionビューは、partitionグループの中のpartitionが位置付けられるOSDについての情報を備える、ように適応され、前記IOルーティングモジュールは、受信されたIO要求をOSDノードへルーティングするように適応され、前記OSDノードは、前記IO要求により、前記IO要求に対応するデータの記憶を実行するように適応され、
前記MDCは、当該システムの中のOSDノードが障害を有するOSDノードであると決定し、前記障害を有するOSDノード上のpartitionを決定し、前記障害を有するOSDノード上の前記partitionを備えるpartitionグループのpartitionビューを更新し、前記更新されたpartitionビューにおける一次OSDノードに更新通知を送信し、
前記一次OSDノードは、前記MDCモジュールによって送信された前記更新通知を受信した後、前記更新されたpartitionビューにより、前記IO要求に対応する前記データのレプリケーションを処理するように適応される、
システム。 - 前記partitionビューは、partitionグループの中のpartitionが位置付けられるOSDのものである一次/二次ID及び対応するpartitionステータスを特に備え、前記一次OSDノードは、前記更新されたpartitionビューにより、前記一次OSDノード上にローカルで記憶されたpartitionビューを更新するようにさらに適応され、
前記更新されたpartitionビューにより、前記IO要求に対応する前記データのレプリケーションを前記処理することは、
前記更新されたローカルで記憶されたpartitionビューにより、前記IOルーティングモジュールからの前記IO要求に対応する前記データを、partitionステータスが前記更新されたローカルで記憶されたpartitionビューにおいて整合性がある二次OSDノード上に、或いはpartitionステータスが前記更新されたローカルで記憶されたpartitionビューにおいて整合性がある二次OSDノード、及びpartitionステータスが前記更新されたローカルで記憶されたpartitionビューにおいて不整合であるが、データを回復している二次OSDノードの上にレプリケートすることを特に備える、請求項1に記載のシステム。 - 前記MDCモジュールは、IOビューを生成し、前記IOビューは、partitionグループの一次OSDノードの識別子を備え、並びに前記IOルーティングモジュール、及び前記partitionビューにおいて前記partitionが位置付けられる前記OSDノードに前記IOビューを送信するように適応され、
前記一次OSDノードは、前記更新されたpartitionビューにより、前記一次OSDノード上にローカルで記憶されたIOビューを更新し、及び前記更新されたローカルで記憶されたIOビューにより、前記IO要求に対応する前記データのレプリケーションを処理するようにさらに適応される、請求項2に記載のシステム。 - 前記MDCモジュールは、前記障害を有するOSDノード上の前記partitionが一次partitionを備えると決定した場合、前記一次partitionを備えるpartitionグループのIOビューを更新し、前記更新されたIOビューについて前記更新されたpartitionビューにおける二次OSDノードに通知するようにさらに適応され、
前記更新されたpartitionビューにおける前記二次OSDノードは、前記更新されたIOビューにより、ローカルで記憶されたIOビューを更新し、前記更新されたローカルで記憶されたIOビューにより、前記IO要求に対応する前記データのレプリケーションを処理するように適応される、請求項3に記載のシステム。 - 前記MDCモジュールは、前記更新されたIOビューについて前記IOルーティングモジュールに通知するようにさらに適応され、
前記IOルーティングモジュールは、前記更新されたIOビューにより、前記IOルーティングモジュール上にローカルで記憶されたIOビューを更新し、前記更新されたローカルで記憶されたIOビューにより、前記IO要求の転送を処理する、請求項4に記載のシステム。 - 前記障害を有するOSDノード上の前記partitionを備えるpartitionグループのpartitionビューを前記更新することは、
前記障害を有するOSDノード上の前記partitionが二次partitionを備える場合、前記二次partitionを備えるpartitionグループのpartitionビューにおいて前記障害を有するOSDノードのpartitionステータスに不整合であるという印を付けること、並びに
前記障害を有するOSDノード上の前記partitionが前記一次partitionを備える場合、前記一次partitionを備える前記partitionグループのpartitionビューにおいて一次OSDノードの役割をする前記障害を有するOSDノードを新たな二次OSDノードとして設定すること、前記新たな二次OSDノードに対応するpartitionステータスに不整合であるという印を付けること、partitionステータスが整合性がある二次OSDノードを、前記一次partitionを備える前記partitionグループの前記partitionビューにおける元の二次OSDノードから選択すること、及び前記選択された二次OSDノードを新たな一次OSDノードとして設定することを特に備える、請求項4に記載のシステム。 - 前記障害を有するOSDノードがフェイルバック及びデータ回復を完了した後、前記MDCモジュールは、前記更新されたpartitionビュー及び前記更新されたIOビューをさらに更新し、前記さらに更新されたpartitionビューにおける一次OSDノードに更新通知を送信し、及び前記さらに更新されたpartitionビューにおける二次OSDノードに更新通知を送信するように適応され、
前記さらに更新されたpartitionビューにおける前記一次OSDノードは、前記さらに更新されたpartitionビューにより、前記IO要求に対応する前記データのレプリケーションを処理するように適応され、
前記さらに更新されたpartitionビューにおける前記二次OSDノードは、前記さらに更新されたIOビューにより、前記IO要求に対応する前記データのレプリケーションを処理するように適応される、請求項6に記載のシステム。 - 前記システムは複数のホストを備え、前記MDCモジュール、前記IOルーティングモジュール、及び前記OSDノードは、前記複数のホストのうちの少なくとも1つに別々に配置され、前記OSDノードは、前記ホスト上の物理ストレージリソースを管理するように適応される、請求項1から7のいずれか一項に記載のシステム。
- 分散ストレージ及びレプリケーションシステムであって、前記システムは、少なくとも1つのメタデータ制御(MDC)モジュールと、複数のIOルーティングモジュールと、複数のオブジェクトベースのストレージデバイス(OSD)ノードとを備え、前記MDCモジュールは、各OSDノードに関して、各OSDノードによって管理される物理ストレージリソースに対応する少なくとも1つの論理パーティション(partition)を構成し、前記少なくとも1つのパーティションは、一次partition、二次partition、又は一次partitionと二次partitionの任意の組合せであり、一次partition、及び前記一次partitionに対応する二次partitionは、partitionグループを構成し、同一のpartitionグループの中の一次partitionと二次partitionは、異なるOSDノード上に位置付けられ、一次partitionが位置付けられるOSDノードは、前記一次partitionを備えるpartitionグループの一次OSDノードであり、二次partitionが位置付けられるOSDノードは、前記二次partitionを備えるpartitionグループの二次OSDノードであり、並びに前記partitionによりpartitionビュー及びIOビューを生成し、前記partitionビューは、partitionグループの中のpartitionが位置付けられるOSDについての情報を備え、前記IOビューは、partitionグループの一次OSDの識別子を備える、ように適応され、前記IOルーティングモジュールは、受信されたIO要求をOSDノードへルーティングするように適応され、前記OSDノードは、前記IO要求によりIOデータ記憶を実行するように適応され、
前記IOルーティングモジュールは、前記IO要求を受信し、前記IO要求はkeyを備え、前記keyにより、前記IO要求に対応するデータが属するpartitionグループを決定し、及び前記データが属する前記partitionグループの一次OSDノードを決定し、前記データが属する前記partitionグループのIOビューのIOビューバージョン情報を前記IO要求に追加し、及び前記決定された一次OSDノードに、前記IOビューバージョン情報を搬送する前記IO要求を送信するように適応され、
前記一次OSDノードは、前記IO要求を受信し、前記IOビューバージョン情報により、前記IO要求におけるIOビューバージョンが、前記一次OSDノード上にローカルで記憶されたIOビューバージョンと整合性があると決定した後、前記IO要求を実行し、前記IOビューバージョン情報を搬送するレプリケーション要求を生成し、及び前記データが属する前記partitionグループの二次OSDノードに前記レプリケーション要求を送信するように適応され、
前記二次OSDノードは、前記レプリケーション要求を受信し、及び前記IOビューバージョン情報により、前記レプリケーション要求におけるIOビューバージョンが、前記二次OSDノード上にローカルで記憶されたIOビューバージョンと整合性があると決定した後、前記レプリケーション要求を実行して、前記二次OSDノード上の前記IO要求に対応するデータが、前記一次OSDノード上の前記IO要求に対応するデータと整合性を保つように適応される、システム。 - 前記一次OSDノードは、前記IOビューバージョン情報により、前記IO要求における前記IOビューバージョンが、前記一次OSD上にローカルで記憶された前記IOビューバージョンより早期であると決定した後、前記IOルーティングモジュールにエラーを返し、及び前記IO要求における前記IOビューバージョンが、前記一次OSD上にローカルで記憶された前記IOビューバージョンより後期であると決定した後、キャッシュキューに前記IO要求を追加し、及び前記データが属する前記partitionグループの前記IOビューの前記IOビューバージョン情報に関して前記MDCモジュールにクエリを行って、前記一次OSD上にローカルで記憶された前記IOビューバージョンが前記IO要求における前記IOビューバージョンと整合性があると決定した後、前記IO要求を実行するようにさらに適応され、
前記IOルーティングモジュールは、前記一次OSDノードによって返された前記エラーを受信した後、前記データが属する前記partitionグループの前記IOビューに関して前記MDCモジュールにクエリを行い、及び更新されたIOビューバージョン情報を獲得した後、前記更新されたIOビューバージョン情報を搬送するIO要求を送信するように適応される、請求項9に記載のシステム。 - 前記IOビューバージョン情報は、IOビューバージョン番号を備え、前記一次OSDノードは、前記IO要求に関するシーケンス識別子をさらに生成し、前記シーケンス識別子を、前記二次OSDノードに送信される前記レプリケーション要求に追加し、前記シーケンス識別子は、前記IOビューバージョン番号と、シーケンス番号とを備え、前記シーケンス番号は、IOビューバージョン内の前記IOビューにおけるpartitionグループに対応するデータに対する変更操作の通し番号を示し、
前記二次OSDノードは、前記シーケンス識別子により前記レプリケーション要求を実行するようにさらに適応される、請求項9に記載のシステム。 - 前記一次OSDノードは、前記IO要求が変更操作である場合、1つのentryを記録するようにさらに適応され、前記entryは、操作タイプと、前記データが属する前記partitionグループのpartitionグループIDと、前記シーケンス識別子と、前記keyとを備える、請求項11に記載のシステム。
- 前記レプリケーション要求は、前記partitionグループに関する前記一次OSDノードによって送信された前のレプリケーション要求におけるシーケンス識別子をさらに搬送し、
前記二次OSDノードは、前記レプリケーション要求を受信した後、前記前のレプリケーション要求における前記シーケンス識別子が、前記二次OSDノード上にローカルで記憶された最大のシーケンス識別子と整合性がある場合、前記レプリケーション要求を実行するように適応される、請求項11に記載のシステム。 - 前記二次OSDノードは、前記前のレプリケーション要求における前記シーケンス識別子が、前記二次OSDノード上にローカルで記憶された前記最大のシーケンス識別子より大きいと決定される場合、欠落している要求を再送信して、前記二次OSDノード上のデータが前記一次OSDノード上のデータと整合性を保つよう前記一次OSDノードに要求するようにさらに適応される、請求項13に記載のシステム。
- 前記partitionビューは、partitionグループの中のpartitionが位置付けられるOSDのものである一次/二次ID及び対応するpartitionステータスを特に備え、前記MDCモジュールは、
前記IO要求を処理するプロセスにおいて、前記一次OSDノードが障害を有するようになったことを検出した場合、前記データが属する前記partitionグループの前記partitionビューにおける前記一次OSDノードを新たな二次OSDノードとして設定し、及び前記新たな二次OSDのpartitionステータスに不整合であるという印を付け、前記データが属する前記partitionグループの前記partitionビューにおける前記二次OSDノードの任意の二次OSDノードを新たな一次OSDノードとして設定し、前記データが属する前記partitionグループの前記更新されたpartitionビューについて前記新たな一次OSDノードに通知し、前記新たな一次OSDノードを使用することによって、前記データが属する前記partitionグループの前記IOビューを更新し、及び前記データが属する前記partitionの前記更新されたIOビューについて前記IOルーティングモジュールに通知するようにさらに適応され、
前記IOルーティングモジュールは、前記MDCモジュールによって送信された前記partitionグループのものである前記更新されたIOビューを受信し、及び前記partitionグループの前記更新されたIOビューにより前記新たな一次OSDノードに前記IO要求を送信するようにさらに適応され、
前記新たな一次OSDノードは、前記IO要求を受信し、前記IO要求を実行した後、第2のレプリケーション要求を生成し、及び前記第2のレプリケーション要求を、partitionステータスが、前記データが属する前記partitionグループの前記更新されたpartitionビューにおいて整合性のある二次OSDノードに送信するように適応される、請求項9に記載のシステム。 - 前記partitionビューは、partitionグループの中のpartitionが位置付けられるOSDノードのものである一次/二次ID及び対応するpartitionステータスを特に備え、前記MDCモジュールは、前記IO要求を処理するプロセスにおいて、前記二次OSDノードのうちのいずれかの二次OSDノードが障害を有するようになったことを検出した場合、前記データが属する前記partitionグループの前記partitionビューにおける前記いずれかの二次OSDノードのpartitionステータスに不整合であるという印を付け、及び前記データが属する前記partitionグループの前記更新されたpartitionビューについて前記一次OSDノードに通知するようにさらに適応され、
前記一次OSDノードは、前記データが属する前記partitionグループの前記更新されたpartitionビューを受信した後、partitionステータスが、前記更新されたpartitionビューにおいて整合性がある二次OSDノードに前記レプリケーション要求を送信し、及びpartitionステータスが不整合である前記二次OSDノードに前記レプリケーション要求を送信することを省くように適応される、請求項9に記載のシステム。 - 前記システムは複数のホストを備え、前記MDCモジュール、前記IOルーティングモジュール、及び前記OSDノードは、前記複数のホストのうちの少なくとも1つに別々に配置され、前記OSDノードは、前記ホスト上の物理ストレージリソースを管理するように適応される、請求項9から16のいずれか一項に記載のシステム。
- 分散ストレージ及びレプリケーションシステムであって、前記システムは、少なくとも1つのメタデータ制御(MDC)モジュールと、複数のIOルーティングモジュールと、複数のオブジェクトベースのストレージデバイス(OSD)ノードとを備え、前記MDCモジュールは、各OSDノードに関して、各OSDノードによって管理される物理ストレージリソースに対応する少なくとも1つの論理パーティション(partition)を構成し、前記少なくとも1つのpartitionは、一次partition、二次partition、又は一次partitionと二次partitionの任意の組合せであり、一次partition、及び一次partitionに対応する二次partitionは、partitionグループを構成し、同一のpartitionグループの中の一次partitionと二次partitionは、異なるOSDノード上に位置付けられ、一次partitionが位置付けられるOSDノードは、前記一次partitionを備えるpartitionグループの一次OSDノードであり、二次partitionが位置付けられるOSDノードは、前記二次partitionを備えるpartitionグループの二次OSDノードであり、並びに前記partitionによりpartitionビュー及びIOビューを生成し、前記partitionビューは、partitionグループの中のpartitionが位置付けられるOSDについての情報を備え、前記IOビューは、partitionグループの一次OSDの識別子を備える、ように適応され、前記IOルーティングモジュールは、受信されたIO要求をOSDノードへルーティングするように適応され、前記OSDノードは、前記IO要求により、前記IO要求に対応するデータの記憶を実行するように適応され、
前記OSDノードは、フェイルバックの後、前記MDCモジュールに前記OSDノード上のpartitionを備えるpartitionグループのIOビューを要求するクエリ要求を送信し、前記OSDノードは、フェイルバックOSDノードと呼ばれ、前記クエリ要求は、前記フェイルバックOSDノードのOSD識別子を搬送し、前記MDCによって返される前記IOビューを受信し、前記IOビューにおける一次OSDに対して、障害中に前記フェイルバックOSDノードによって更新されたデータを回復することを要求するデータ回復要求を開始し、前記障害中に更新されかつ前記一次OSDによって送信される前記データを受信し、及び前記partitionグループのものでありかつ前記フェイルバックOSDノードがデータ回復を完了した後に前記MDCモジュールによって更新された前記partitionビューにより、前記IO要求のレプリケーションを処理するように適応され、
前記MDCモジュールは、前記フェイルバックOSDノードの前記クエリ要求を受信し、前記クエリ要求における前記OSD識別子により前記フェイルバックOSDノードに前記IOビューを返し、及び前記フェイルバックOSDノードがデータ回復を完了した後、前記partitionグループの前記partitionビューを更新するように適応され、
前記一次OSDノードは、前記フェイルバックOSDノードの前記データ回復要求を受信し、前記フェイルバックOSDノードに、前記障害中に更新された前記データを送信し、及び前記partitionグループのものでありかつ前記フェイルバックOSDノードがデータ回復を完了した後に前記MDCモジュールによって更新された前記partitionビューにより、前記IO要求に対応するデータのレプリケーションを処理するように適応される、システム。 - 前記MDCモジュールは、前記フェイルバックOSDノードが障害を有するようになった後、前記フェイルバックの前に、前記partitionグループのものである前記partitionビュー及び前記IOビューを更新するようにさらに適応され、
前記クエリ要求における前記OSD識別子により前記フェイルバックOSDノードに前記IOビューを前記返すことは特に、前記フェイルバックOSDノードに前記更新されたIOビューを返すことである、請求項18に記載のシステム。 - 前記一次OSDノードは、前記データ回復要求を受信した後、前記フェイルバックOSDノード上の前記partitionに関して前記IOルーティングモジュールによって送信された前記IO要求を受信し、前記IO要求を実行し、及び前記フェイルバックOSDノードに、IOキー情報、及び前記IO要求に対応する前記データを搬送するレプリケーション要求を送信するようにさらに適応され、
前記フェイルバックOSDノードは、ログに、前記IOキー情報、及び前記IO要求に対応する前記データを搬送する前記レプリケーション要求を書き込み、前記データ回復が完了された後、前記ログのレコードにより、前記フェイルバックOSDノードによって管理される物理ストレージリソースへの前記IO要求に対応する前記データを更新する、請求項18に記載のシステム。 - 前記データ回復要求は、前記フェイルバックOSDノード上の前記partitionに関するIO操作のものであり、かつ前記フェイルバックOSDノード上にローカルで記録された最大のシーケンス識別子を搬送し、前記最大のシーケンス識別子は、前記フェイルバックOSDノード上の前記partitionを備える前記partitionグループの前記IOビューの最新のIOビューバージョン番号であり、データに対する変更操作の最大の通し番号が、前記最新のIOビューバージョン番号に対応する前記IOビューにおけるpartitionに対応し、
前記障害中に更新された前記データを前記フェイルバックOSDノードに前記送信することは、
前記データ回復要求における前記最大のシーケンス識別子が、前記一次OSDノード上にローカルで記憶された現在の最小のシーケンス識別子以上であると決定すること、前記障害中に前記フェイルバックOSDノードに欠落しているentryを前記フェイルバックOSDノードに送信すること、前記entryにより前記フェイルバックOSDノードによって開始されたデータ回復要求を受信すること、及び前記entryに対応するデータを前記フェイルバックOSDノードに送信することを備え、
前記最小のシーケンス識別子は、前記partitionグループの前記IOビューのものであり、かつ前記一次OSDノード上に記憶された最小のIOビューバージョン番号であり、データに対する変更操作の最小の通し番号は、前記最小のIOビューバージョン番号に対応する前記IOビューにおけるpartitionに対応する、請求項18に記載のシステム。 - 前記データ回復要求は、前記フェイルバックOSDノード上の前記partitionに関するIO操作のものであり、かつ前記フェイルバックOSDノード上にローカルで記録された最大のシーケンス識別子を搬送し、
前記最大のシーケンス識別子は、前記フェイルバックOSDノード上の前記partitionを備える前記partitionグループの前記IOビューの最新のIOビューバージョン番号を備え、データに対する変更操作の最大の通し番号が、前記最新のIOビューバージョン番号に対応する前記IOビュー内の前記IOビューにおけるpartitionに対応し、
前記障害中に更新された前記データを前記フェイルバックOSDノードに送信することは、
前記データ回復要求における前記最大のシーケンス識別子が、前記一次OSDノード上にローカルで記憶された現在の最小のシーケンス識別子より小さいと決定すること、前記一次OSD上にローカルで記憶された前記現在の最小のシーケンス識別子を前記フェイルバックOSDノードに送信すること、前記partitionグループに属し、かつ前記一次OSDノード上にある一次partitionに対応するすべてのデータを同期させるために、前記フェイルバックOSDノードによって開始されたデータ回復要求を受信すること、及び前記一次partitionに対応するすべてのデータを前記フェイルバックOSDノードに送信することを備え、
前記最小のシーケンス識別子は、前記partitionグループの前記IOビューのものであり、かつ前記一次OSDノード上に記憶された最小のIOビューバージョン番号であり、データに対する変更操作の最小の通し番号が、前記最小のIOビューバージョン番号に対応する前記IOビューにおけるpartitionに対応する、請求項18に記載のシステム。 - 前記MDCモジュールは、前記フェイルバックOSDノードがデータ回復を完了した後、前記partitionグループの前記partitionビューを更新する前に、
前記一次OSDノードによって送信されるビュー更新要求通知を受信し、前記ビュー更新要求通知は、前記partitionグループのものであり、かつ前記一次OSDノード上にローカルで記憶される最新のpartitionビューバージョン番号を搬送し、及び前記partitionグループのものであり、かつ前記一次OSDノード上にローカルで記憶される前記最新のpartitionビューバージョン番号が、前記MDCによってローカルで保持される最新のpartitionビューバージョン番号と整合性があると決定した後、前記更新操作を実行するように適応される、請求項18に記載のシステム。 - 前記partitionグループの前記partitionビューを前記更新することは、
前記partitionビューにおける前記フェイルバックOSDノードのpartitionステータスを整合性があるに更新すること、及び前記フェイルバックOSDノードが前記障害前に前記partitionグループの一次OSDノードであると決定した後、前記フェイルバックOSDノードを、前記partitionグループの新たな一次OSDノードとして再設定すること、及び前記一次OSDノードを、前記partitionグループの新たな二次OSDノードとして設定することを特に備える、請求項18に記載のシステム。 - 前記システムは複数のホストを備え、前記MDCモジュール、前記IOルーティングモジュール、及び前記OSDノードは、前記複数のホストのうちの少なくとも1つに別々に配置され、前記OSDノードは、前記ホスト上の物理ストレージリソースを管理するように適応される、請求項18から24のいずれか一項に記載のシステム。
- 分散ストレージ及びレプリケーションシステムであって、前記システムは、少なくとも1つのメタデータ制御(MDC)モジュールと、複数のIOルーティングモジュールと、複数のオブジェクトベースのストレージデバイス(OSD)ノードとを備え、前記MDCモジュールは、各OSDノードに関して、各OSDノードによって管理される物理ストレージリソースに対応する少なくとも1つの論理パーティション(partition)を構成し、前記少なくとも1つのpartitionは、一次partition、二次partition、又は一次partitionと二次partitionの任意の組合せであり、一次partition、及び一次partitionに対応する二次partitionは、partitionグループを構成し、同一のpartitionグループの中の一次partitionと二次partitionは、異なるOSDノード上に位置付けられ、一次partitionが位置付けられるOSDノードは、前記一次partitionを含むpartitionグループの一次OSDノードであり、二次partitionが位置付けられるOSDノードは、前記二次partitionを備えるpartitionグループの二次OSDノードであり、並びに前記partitionによりpartitionビューを生成し、前記partitionビューは、partitionグループの中のpartitionが位置付けられるOSDについての情報を備える、ように適応され、前記IOルーティングモジュールは、受信されたIO要求をOSDノードへルーティングするように適応され、前記OSDノードは、前記IO要求により、前記IO要求に対応するデータの記憶を実行するように適応され、
前記システムは、メモリと、プロセッサとを備え、
前記メモリは、コンピュータ可読命令を記憶するように適応され、前記命令は、前記MDCモジュール、前記IOルーティングモジュール、及び前記OSDノードの機能を実行するのに使用され、
前記プロセッサは、前記メモリに接続され、前記メモリの中の前記命令を読み取り、かつ前記命令により、前記プロセッサが、
前記システムにおけるOSDノードが障害を有するOSDノードであると決定し、前記障害を有するOSDノード上のpartitionを決定する工程と、前記障害を有するOSDノード上の前記partitionを備えるpartitionグループのpartitionビューを更新する工程と、前記更新されたpartitionビューにおける前記partitionグループが位置付けられる一次OSDノードに更新通知を送信して、前記一次OSDノードが、前記更新されたpartitionビューにより、前記IO要求に対応するデータのレプリケーションを処理するようにする工程と、
を実行することを可能にするように適応される、システム。 - 分散ストレージ及びレプリケーションシステムであって、前記システムは、少なくとも1つのメタデータ制御(MDC)モジュールと、複数のIOルーティングモジュールと、複数のオブジェクトベースのストレージデバイス(OSD)ノードとを備え、前記MDCモジュールは、各OSDノードに関して、各OSDノードによって管理される物理ストレージリソースに対応する少なくとも1つの論理パーティション(partition)を構成し、前記少なくとも1つのpartitionは、一次partition、二次partition、又は一次partitionと二次partitionの任意の組合せであり、一次partition、及び前記一次partitionに対応する二次partitionは、partitionグループを構成し、同一のpartitionグループの中の一次partitionと二次partitionは、異なるOSDノード上に位置付けられ、一次partitionが位置付けられるOSDノードは、前記一次partitionを備えるpartitionグループの一次OSDノードであり、二次partitionが位置付けられるOSDノードは、前記二次partitionを備えるpartitionグループの二次OSDノードであり、並びに前記partitionによりpartitionビュー及びIOビューを生成し、前記partitionビューは、partitionグループの中のpartitionが位置付けられるOSDについての情報を備え、前記IOビューは、partitionグループの一次OSDの識別子を備える、ように適応され、前記IOルーティングモジュールは、受信されたIO要求をOSDノードへルーティングするように適応され、前記OSDノードは、前記IO要求により、前記IO要求に対応するデータの記憶を実行するように適応され、
前記システムは、メモリと、プロセッサとを備え、
前記メモリは、コンピュータ可読命令を記憶するように適応され、前記命令は、前記MDCモジュール、前記IOルーティングモジュール、及び前記OSDノードの機能を実行するのに使用され、
前記プロセッサは、前記メモリに接続され、前記メモリの中の前記命令を読み取り、かつ前記命令により、前記プロセッサが、
前記IOルーティングモジュールが、前記IO要求を受信し、前記IO要求はkeyを備え、前記keyにより、前記IO要求に対応する前記データが属するpartitionグループを決定し、前記データが属する前記partitionグループの一次OSDノードを決定し、前記データが属する前記partitionグループのIOビューのIOビューバージョン情報を前記IO要求に追加し、及び前記決定された一次OSDノードに、前記IOビューバージョン情報を搬送する前記IO要求を送信することを可能にする工程と、
前記一次OSDノードが、前記IO要求を受信し、前記IOビューバージョン情報により、前記IO要求におけるIOビューバージョンが、ローカルで記憶されたIOビューバージョンと整合性があると決定した後、前記IO要求を実行し、前記IOビューバージョン情報を搬送するレプリケーション要求を生成し、及び前記データが属する前記partitionの二次OSDノードに前記レプリケーション要求を送信することを可能にする工程と、並びに
前記二次OSDノードが、前記レプリケーション要求を受信し、及び前記IOビューバージョン情報により、前記レプリケーション要求におけるIOビューバージョンが、前記二次OSDノード上にローカルで記憶されたIOビューバージョンと整合性があると決定した後、前記レプリケーション要求を実行して、前記二次OSDノード上の前記IO要求に対応するデータが、前記一次OSDノード上の前記IO要求に対応するデータと整合性を保つことを可能にする工程と、
を実行することを可能にするように適応される、システム。 - 分散ストレージ及びレプリケーションシステムであって、前記システムは、少なくとも1つのメタデータ制御(MDC)モジュールと、複数のIOルーティングモジュールと、複数のオブジェクトベースのストレージデバイス(OSD)ノードとを備え、前記MDCモジュールは、各OSDノードに関して、各OSDノードによって管理される物理ストレージリソースに対応する少なくとも1つの論理パーティション(partition)を構成し、前記少なくとも1つのpartitionは、一次partition、二次partition、又は一次partitionと二次partitionの任意の組合せであり、一次partition、及び前記一次partitionに対応する二次partitionは、partitionグループを構成し、同一のpartitionグループの中の一次partitionと二次partitionは、異なるOSDノード上に位置付けられ、一次partitionが位置付けられるOSDノードは、前記一次partitionを備えるpartitionグループの一次OSDノードであり、二次partitionが位置付けられるOSDノードは、前記二次partitionを備えるpartitionグループの二次OSDノードであり、並びに前記partitionによりpartitionビュー及びIOビューを生成し、前記partitionビューは、partitionグループの中のpartitionが位置付けられるOSDについての情報を備え、前記IOビューは、partitionグループの一次OSDの識別子を備える、ように適応され、前記IOルーティングモジュールは、OSDノードに受信されたIO要求をルーティングするように適応され、前記OSDノードは、前記IO要求により、前記IO要求に対応するデータの記憶を実行するように適応され、
前記システムは、メモリと、プロセッサとを備え、
前記メモリは、コンピュータ可読命令を記憶するように適応され、前記命令は、前記MDCモジュール、前記IOルーティングモジュール、及び前記OSDノードの機能を実行するのに使用され、
前記プロセッサは、前記メモリに接続され、前記メモリの中の前記命令を読み取り、かつ前記命令により、前記プロセッサが、
前記OSDノードが、フェイルバックの後、前記MDCモジュールに前記OSDノード上のpartitionを備えるpartitionグループのIOビューを要求するクエリ要求を送信し、前記OSDノードは、フェイルバックOSDノードと呼ばれ、前記クエリ要求は、前記フェイルバックOSDノードのOSD識別子を搬送し、前記MDCによって返される前記IOビューを受信し、前記IOビューにおける一次OSDに対して、障害中に前記フェイルバックOSDノードによって更新されたデータを回復することを要求するデータ回復要求を開始し、前記障害中に更新され、かつ前記一次OSDによって送信される前記データを受信し、及び前記partitionグループのものであり、かつ前記フェイルバックOSDノードがデータ回復を完了した後に前記MDCモジュールによって更新されたpartitionビューにより、前記IO要求のレプリケーションを処理することを可能にする工程と、
前記MDCモジュールが、前記フェイルバックOSDノードの前記クエリ要求を受信し、前記クエリ要求における前記OSD識別子により前記フェイルバックOSDノードに前記IOビューを返し、及び前記フェイルバックOSDノードがデータ回復を完了した後、前記partitionグループの前記partitionビューを更新することを可能にする工程と、
前記一次OSDノードが、前記フェイルバックOSDノードの前記データ回復要求を受信し、前記フェイルバックOSDノードに、前記障害中に更新された前記データを送信し、及び前記partitionグループのものであり、かつ前記フェイルバックOSDノードがデータ回復を完了した後に前記MDCモジュールによって更新された前記partitionビューにより、前記IO要求に対応する前記データのレプリケーションを処理することを可能にする工程と、
を実行することを可能にするように適応される、システム。 - 分散ストレージシステムにおいてデータ記憶及びデータレプリケーションを管理するための方法であって、前記システムは、少なくとも1つのメタデータ制御(MDC)モジュールと、複数のIOルーティングモジュールと、複数のオブジェクトベースのストレージデバイス(OSD)ノードとを備え、前記MDCモジュールは、各OSDノードに関して、各OSDノードによって管理される物理ストレージリソースに対応する少なくとも1つの論理パーティション(partition)を構成し、前記少なくとも1つのpartitionは、一次partition、二次partition、又は一次partitionと二次partitionの任意の組合せであり、一次partition、及び前記一次partitionに対応する二次partitionは、partitionグループを構成し、同一のpartitionグループの中の一次partitionと二次partitionは、異なるOSDノード上に位置付けられ、一次partitionが位置付けられるOSDノードは、前記一次partitionを備えるpartitionグループの一次OSDノードであり、二次partitionが位置付けられるOSDノードは、前記二次partitionを備えるpartitionグループの二次OSDノードであり、並びに前記partitionによりpartitionビューを生成し、前記partitionビューは、partitionグループの中のpartitionが位置付けられるOSDについての情報を備える、ように適応され、前記IOルーティングモジュールは、OSDノードに受信されたIO要求をルーティングするように適応され、前記OSDノードは、前記IO要求により、前記IO要求に対応するデータの記憶を実行するように適応され、前記方法は、
前記システムにおけるOSDノードが障害を有するOSDノードであると決定し、前記障害を有するOSDノード上のpartitionを決定し、前記障害を有するOSDノード上の前記partitionを備えるpartitionグループのpartitionビューを更新すること、及び前記更新されたpartitionビューにおける一次OSDノードに更新通知を送信する工程を備え、
前記一次OSDノードは、前記MDCモジュールによって送信された前記更新通知を受信した後、前記更新されたpartitionビューにより、前記IO要求に対応する前記データのレプリケーションを処理するように適応される、方法。 - 前記partitionビューは、partitionグループの中のpartitionが位置付けられるOSDのものである一次/二次ID及び対応するpartitionステータスを特に備え、前記一次OSDノードは、前記更新されたpartitionビューにより、前記一次OSDノード上にローカルで記憶されたpartitionビューを更新するようにさらに適応され、
前記更新されたpartitionビューにより、前記IO要求に対応する前記データのレプリケーションを前記処理することは、
前記更新されたローカルで記憶されたpartitionビューにより、前記IOルーティングモジュールからの前記IO要求に対応する前記データを、partitionステータスが前記更新されたローカルで記憶されたpartitionビューにおいて整合性がある二次OSDノード上に、或いはpartitionステータスが前記更新されたローカルで記憶されたpartitionビューにおいて整合性がある二次OSDノード、及びpartitionステータスが前記更新されたローカルで記憶されたpartitionビューにおいて不整合であるが、データを回復している二次OSDノードの上にレプリケートすることを特に備える、請求項29に記載の方法。 - 前記方法は、
前記障害を有するOSDノード上の前記partitionが一次partitionを備えると決定した場合、前記MDCモジュールによる、前記一次partitionを備えるpartitionグループのIOビューを更新し、及び前記更新されたIOビューについて前記更新されたpartitionビューにおける二次OSDノードに通知する工程と、
前記更新されたpartitionビューにおける前記二次OSDノードによる、前記更新されたIOビューにより、ローカルで記憶されたIOビューを更新し、及び前記更新されたローカルで記憶されたIOビューにより、前記IO要求に対応する前記データのレプリケーションを処理する工程と、
をさらに備える請求項29に記載の方法。 - 前記障害を有するOSDノード上の前記partitionを備えるpartitionグループのpartitionビューを前記更新することは、
前記障害を有するOSDノード上の前記partitionが二次partitionを備える場合、前記二次partitionを備えるpartitionグループのpartitionビューにおいて前記障害を有するOSDノードのpartitionステータスに不整合であるという印を付けること、並びに
前記障害を有するOSDノード上の前記partitionが前記一次partitionを備える場合、前記一次partitionを備える前記partitionグループのpartitionビューにおいて一次OSDノードの役割をする前記障害を有するOSDノードを新たな二次OSDノードとして設定し、前記新たな二次OSDノードに対応するpartitionステータスに不整合であるという印を付け、partitionステータスが整合性がある二次OSDノードを、前記一次partitionを備える前記partitionグループの前記partitionビューにおける元の二次OSDノードから選択し、及び前記選択された二次OSDノードを新たな一次OSDノードとして設定することを特に備える、請求項31に記載の方法。 - 前記方法は、
前記障害を有するOSDノードがフェイルバック及びデータ回復を完了した後、前記MDCモジュールによる、前記更新されたpartitionビュー及び前記更新されたIOビューをさらに更新し、前記さらに更新されたpartitionビューにおける一次OSDノードに更新通知を送信し、及び前記さらに更新されたpartitionビューにおける二次OSDノードに更新通知を送信する工程と、
前記さらに更新されたpartitionビューにおける前記一次OSDノードによる、前記さらに更新されたpartitionビューにより、前記IO要求に対応する前記データのレプリケーションを処理する工程と、
前記さらに更新されたpartitionビューにおける前記二次OSDノードによる、前記さらに更新されたIOビューにより、前記IO要求に対応する前記データのレプリケーションを処理する工程と、
をさらに備える請求項32に記載の方法。 - 分散ストレージシステムにおいてデータ記憶及びデータレプリケーションを管理するための方法であって、前記システムは、少なくとも1つのメタデータ制御(MDC)モジュールと、複数のIOルーティングモジュールと、複数のオブジェクトベースのストレージデバイス(OSD)ノードとを備え、前記MDCモジュールは、各OSDノードに関して、各OSDノードによって管理される物理ストレージリソースに対応する少なくとも1つの論理パーティション(partition)を構成し、前記少なくとも1つのpartitionは、一次partition、二次partition、又は一次partitionと二次partitionの任意の組合せであり、一次partition、及び前記一次partitionに対応する二次partitionは、partitionグループを構成し、同一のpartitionグループの中の一次partitionと二次partitionは、異なるOSDノード上に位置付けられ、一次partitionが位置付けられるOSDノードは、前記一次partitionを備えるpartitionグループの一次OSDノードであり、二次partitionが位置付けられるOSDノードは、前記二次partitionを備えるpartitionグループの二次OSDノードであり、並びに前記partitionによりpartitionビュー及びIOビューを生成し、前記partitionビューは、partitionグループの中のpartitionが位置付けられるOSDについての情報を備え、前記IOビューは、partitionグループの一次OSDノードの識別子を備える、ように適応され、前記IOルーティングモジュールは、OSDノードに受信されたIO要求をルーティングするように適応され、前記OSDノードは、前記IO要求によりIOデータ記憶を実行するように適応され、前記方法は、
前記IOルーティングモジュールが、前記IO要求を受信し、前記IO要求は、keyを備え、前記keyにより、前記IO要求に対応するデータが属するpartitionグループを決定し、及び前記データが属する前記partitionグループの一次OSDノードを決定し、前記データが属する前記partitionグループのIOビューのIOビューバージョン情報を前記IO要求に追加すること、及び前記決定された一次OSDノードに、前記IOビューバージョン情報を搬送する前記IO要求を送信するように適応されること、
前記一次OSDノードが、前記IO要求を受信し、前記IOビューバージョン情報により、前記IO要求におけるIOビューバージョンが、前記一次OSDノード上にローカルで記憶されたIOビューバージョンと整合性があると決定した後、前記IO要求を実行し、前記IOビューバージョン情報を搬送するレプリケーション要求を生成し、及び前記データが属する前記partitionグループの二次OSDノードに前記レプリケーション要求を送信するように適応されること、
前記二次OSDノードが、前記レプリケーション要求を受信し、及び前記IOビューバージョン情報により、前記レプリケーション要求におけるIOビューバージョンが、前記二次OSDノード上にローカルで記憶されたIOビューバージョンと整合性があると決定した後、前記レプリケーション要求を実行して、前記二次OSDノード上の前記IO要求に対応するデータが、前記一次OSDノード上の前記IO要求に対応するデータと整合性を保つように適応されること、
を備える方法。 - 前記partitionビューは、partitionグループの中のpartitionが位置付けられるOSDのものである一次/二次ID及び対応するpartitionステータスを特に備え、前記方法は、
前記IO要求を処理するプロセスにおいて、前記一次OSDノードが障害を有するようになったことを検出した場合、前記MDCモジュールによる、前記データが属する前記partitionグループの前記partitionビューにおける前記一次OSDノードを新たな二次OSDノードとして設定し、及び前記新たな二次OSDのpartitionステータスに不整合であるという印を付ける工程と、前記データが属する前記partitionグループの前記partitionビューにおける前記二次OSDノードの任意の二次OSDノードを新たな一次OSDノードとして設定し、前記データが属する前記partitionグループの前記更新されたpartitionビューについて前記新たな一次OSDノードに通知する工程と、前記新たな一次OSDノードを使用することによって、前記データが属する前記partitionグループの前記IOビューを更新し、及び前記データが属する前記partitionの前記更新されたIOビューについて前記IOルーティングモジュールに通知する工程と、をさらに備え、
前記IOルーティングモジュールは、前記MDCモジュールによって送信された前記partitionグループのものである前記更新されたIOビューを受信し、及び前記partitionグループの前記更新されたIOビューにより前記新たな一次OSDノードに前記IO要求を送信するようにさらに適応され、
前記新たな一次OSDノードは、前記IO要求を受信し、前記IO要求を実行した後、第2のレプリケーション要求を生成し、及び前記第2のレプリケーション要求を、partitionステータスが、前記データが属する前記partitionグループの前記更新されたpartitionビューにおいて整合性のある二次OSDノードに送信するように適応される、請求項34に記載の方法。 - 前記partitionビューは、partitionグループの中のpartitionが位置付けられるOSDのものである一次/二次ID及び対応するpartitionステータスを特に備え、前記方法は、
前記IO要求を処理するプロセスにおいて、前記二次OSDノードのうちのいずれかの二次OSDノードが障害を有するようになったことを検出した場合、前記MDCモジュールによる、前記データが属する前記partitionグループの前記partitionビューにおける前記いずれかの二次OSDノードのpartitionステータスに不整合であるという印を付け、及び前記データが属する前記partitionグループの前記更新されたpartitionビューについて前記一次OSDノードに通知する工程をさらに備え、
前記一次OSDノードは、前記データが属する前記partitionグループの前記更新されたpartitionビューを受信した後、partitionステータスが、前記更新されたpartitionビューにおいて整合性がある二次OSDノードに前記レプリケーション要求を送信し、及びpartitionステータスが不整合である前記二次OSDノードに前記レプリケーション要求を送信することを省くように適応される、請求項34に記載の方法。 - 分散ストレージシステムにおいてデータ記憶及びデータレプリケーションを管理するための方法であって、前記システムは、少なくとも1つのメタデータ制御(MDC)モジュールと、複数のIOルーティングモジュールと、複数のオブジェクトベースのストレージデバイス(OSD)ノードとを備え、前記MDCモジュールは、各OSDノードに関して、各OSDノードによって管理される物理ストレージリソースに対応する少なくとも1つの論理パーティション(partition)を構成し、前記少なくとも1つのpartitionは、一次partition、二次partition、又は一次partitionと二次partitionの任意の組合せであり、一次partition、及び前記一次partitionに対応する二次partitionは、partitionグループを構成し、同一のpartitionグループの中の一次partitionと二次partitionは、異なるOSDノード上に位置付けられ、一次partitionが位置付けられるOSDノードは、前記一次partitionを備えるpartitionグループの一次OSDノードであり、二次partitionが位置付けられるOSDノードは、前記二次partitionを備えるpartitionグループの二次OSDノードであり、並びに前記partitionによりpartitionビュー及びIOビューを生成し、前記partitionビューは、partitionグループの中のpartitionが位置付けられるOSDについての情報を備え、前記IOビューは、partitionグループの一次OSDの識別子を備える、ように適応され、前記IOルーティングモジュールは、前記OSDノードに受信されたIO要求をルーティングするように適応され、前記OSDノードは、前記IO要求により、前記IO要求に対応するデータの記憶を実行するように適応され、前記方法は、
前記OSDノードが、フェイルバックの後、前記MDCモジュールに前記OSDノード上のpartitionを備えるpartitionグループのIOビューを要求するクエリ要求を送信し、前記OSDノードは、フェイルバックOSDノードと呼ばれ、前記クエリ要求は、前記フェイルバックOSDノードのOSD識別子を搬送し、前記MDCによって返される前記IOビューを受信し、前記IOビューにおける一次OSDに対して、障害中に前記フェイルバックOSDノードによって更新されたデータを回復することを要求するデータ回復要求を開始し、前記障害中に更新され、かつ前記一次OSDによって送信される前記データを受信し、及び前記partitionグループのものであり、かつ前記フェイルバックOSDノードがデータ回復を完了した後に前記MDCモジュールによって更新されたpartitionビューにより、前記IO要求のレプリケーションを処理するように適応されること、
前記MDCモジュールが、前記フェイルバックOSDノードの前記クエリ要求を受信し、前記クエリ要求における前記OSD識別子により前記フェイルバックOSDノードに前記IOビューを返し、及び前記フェイルバックOSDノードがデータ回復を完了した後、前記partitionグループの前記partitionビューを更新するように適応されること、及び
前記一次OSDノードが、前記フェイルバックOSDノードの前記データ回復要求を受信し、前記フェイルバックOSDノードに、前記障害中に更新された前記データを送信し、及び前記partitionグループのものであり、かつ前記フェイルバックOSDノードがデータ回復を完了した後に前記MDCモジュールによって更新された前記partitionビューにより、前記IO要求に対応するデータのレプリケーションを処理するように適応されることを備える方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2014/090445 WO2016070375A1 (zh) | 2014-11-06 | 2014-11-06 | 一种分布式存储复制***和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017534133A true JP2017534133A (ja) | 2017-11-16 |
JP6382454B2 JP6382454B2 (ja) | 2018-08-29 |
Family
ID=55908392
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017539482A Active JP6382454B2 (ja) | 2014-11-06 | 2014-11-06 | 分散ストレージ及びレプリケーションシステム、並びに方法 |
Country Status (7)
Country | Link |
---|---|
US (1) | US10713134B2 (ja) |
EP (1) | EP3159794B1 (ja) |
JP (1) | JP6382454B2 (ja) |
CN (1) | CN106062717B (ja) |
BR (1) | BR112016030547B1 (ja) |
SG (1) | SG11201703220SA (ja) |
WO (1) | WO2016070375A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021535468A (ja) * | 2018-08-29 | 2021-12-16 | アリババ グループ ホウルディング リミテッド | データ書き込みのための方法及び装置 |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10275184B2 (en) | 2014-07-22 | 2019-04-30 | Oracle International Corporation | Framework for volatile memory query execution in a multi node cluster |
US10002148B2 (en) * | 2014-07-22 | 2018-06-19 | Oracle International Corporation | Memory-aware joins based in a database cluster |
US9875259B2 (en) | 2014-07-22 | 2018-01-23 | Oracle International Corporation | Distribution of an object in volatile memory across a multi-node cluster |
US10073885B2 (en) | 2015-05-29 | 2018-09-11 | Oracle International Corporation | Optimizer statistics and cost model for in-memory tables |
US10567500B1 (en) * | 2015-12-21 | 2020-02-18 | Amazon Technologies, Inc. | Continuous backup of data in a distributed data store |
JP2018073231A (ja) * | 2016-11-01 | 2018-05-10 | 富士通株式会社 | ストレージシステムおよびストレージ装置 |
JP6279780B1 (ja) * | 2017-02-20 | 2018-02-14 | 株式会社東芝 | 分散ストレージの非同期リモートレプリケーションシステムおよび分散ストレージの非同期リモートレプリケーション方法 |
JP6724252B2 (ja) * | 2017-04-14 | 2020-07-15 | 華為技術有限公司Huawei Technologies Co.,Ltd. | データ処理方法、記憶システムおよび切り換え装置 |
CN107046575B (zh) * | 2017-04-18 | 2019-07-12 | 南京卓盛云信息科技有限公司 | 一种用于云存储***的高密度存储方法 |
CN107678918B (zh) * | 2017-09-26 | 2021-06-29 | 郑州云海信息技术有限公司 | 一种分布式文件***的osd心跳机制设置方法及装置 |
CN107832164A (zh) * | 2017-11-20 | 2018-03-23 | 郑州云海信息技术有限公司 | 一种基于Ceph的故障硬盘处理的方法及装置 |
EP3620905B1 (en) * | 2017-12-18 | 2022-10-19 | Huawei Cloud Computing Technologies Co., Ltd. | Method and device for identifying osd sub-health, and data storage system |
CN109995813B (zh) * | 2017-12-29 | 2021-02-26 | 华为技术有限公司 | 一种分区扩展方法、数据存储方法及装置 |
CN110096220B (zh) | 2018-01-31 | 2020-06-26 | 华为技术有限公司 | 一种分布式存储***、数据处理方法和存储节点 |
CN110515535B (zh) * | 2018-05-22 | 2021-01-01 | 杭州海康威视数字技术股份有限公司 | 硬盘读写控制方法、装置、电子设备及存储介质 |
CN108845772B (zh) * | 2018-07-11 | 2021-06-29 | 郑州云海信息技术有限公司 | 一种硬盘故障处理方法、***、设备及计算机存储介质 |
CN109144788B (zh) * | 2018-09-10 | 2021-10-22 | 网宿科技股份有限公司 | 一种重建osd的方法、装置及*** |
CN109144789B (zh) * | 2018-09-10 | 2020-12-29 | 网宿科技股份有限公司 | 一种重启osd的方法、装置及*** |
CN109189738A (zh) * | 2018-09-18 | 2019-01-11 | 郑州云海信息技术有限公司 | 一种分布式文件***中主osd的选取方法、装置及*** |
CN111104057B (zh) * | 2018-10-25 | 2022-03-29 | 华为技术有限公司 | 存储***中的节点扩容方法和存储*** |
CN109558437B (zh) * | 2018-11-16 | 2021-01-01 | 新华三技术有限公司成都分公司 | 主osd调整方法及装置 |
CN111435331B (zh) * | 2019-01-14 | 2022-08-26 | 杭州宏杉科技股份有限公司 | 存储卷写数据方法、装置、电子设备及机器可读存储介质 |
US11016952B2 (en) | 2019-01-31 | 2021-05-25 | Rubrik, Inc. | Systems and methods to process a topology change in a clustered database |
US11514024B2 (en) | 2019-01-31 | 2022-11-29 | Rubrik, Inc. | Systems and methods for shard consistency in a clustered database |
US10997130B2 (en) * | 2019-01-31 | 2021-05-04 | Rubrik, Inc. | Systems and methods for node consistency in a clustered database |
CN111510338B (zh) * | 2020-03-09 | 2022-04-26 | 苏州浪潮智能科技有限公司 | 一种分布式块存储网络亚健康测试方法、装置及存储介质 |
US11223681B2 (en) * | 2020-04-10 | 2022-01-11 | Netapp, Inc. | Updating no sync technique for ensuring continuous storage service in event of degraded cluster state |
CN112596935B (zh) * | 2020-11-16 | 2022-08-30 | 新华三大数据技术有限公司 | 一种osd故障处理方法及装置 |
CN112819592B (zh) * | 2021-04-16 | 2021-08-03 | 深圳华锐金融技术股份有限公司 | 业务请求处理方法、***、计算机设备和存储介质 |
CN113254277B (zh) * | 2021-06-15 | 2021-11-02 | 云宏信息科技股份有限公司 | 存储集群osd故障修复方法、存储介质、监视器及存储集群 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006065629A (ja) * | 2004-08-27 | 2006-03-09 | Hitachi Ltd | データ処理システム及び方法 |
JP2006209775A (ja) * | 2005-01-28 | 2006-08-10 | Hewlett-Packard Development Co Lp | データ追跡を有するストレージ複製システム |
JP2010509686A (ja) * | 2006-11-08 | 2010-03-25 | アーカイヴァス インコーポレイテッド | プライマリー・クラスタの高速リカバリ |
US20110099420A1 (en) * | 2009-10-26 | 2011-04-28 | Macdonald Mcalister Grant Alexander | Failover and recovery for replicated data instances |
JP2012221419A (ja) * | 2011-04-13 | 2012-11-12 | Hitachi Ltd | 情報記憶システム及びそのデータ複製方法 |
US20130290249A1 (en) * | 2010-12-23 | 2013-10-31 | Dwight Merriman | Large distributed database clustering systems and methods |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5790788A (en) * | 1996-07-23 | 1998-08-04 | International Business Machines Corporation | Managing group events by a name server for a group of processors in a distributed computing environment |
JP3563907B2 (ja) * | 1997-01-30 | 2004-09-08 | 富士通株式会社 | 並列計算機 |
US6308300B1 (en) * | 1999-06-04 | 2001-10-23 | Rutgers University | Test generation for analog circuits using partitioning and inverted system simulation |
CN1258145C (zh) * | 2002-08-06 | 2006-05-31 | 中国科学院计算技术研究所 | 基于虚拟存储的智能网络存储设备的*** |
US7395265B2 (en) | 2004-08-27 | 2008-07-01 | Hitachi, Ltd. | Data processing system and storage subsystem provided in data processing system |
US8533155B2 (en) | 2009-10-30 | 2013-09-10 | Hitachi Data Systems Corporation | Fixed content storage within a partitioned content platform, with replication |
WO2010040255A1 (zh) * | 2008-10-07 | 2010-04-15 | 华中科技大学 | 对象存储***的管理方法 |
US8644188B1 (en) * | 2009-06-25 | 2014-02-04 | Amazon Technologies, Inc. | Providing virtual networking functionality for managed computer networks |
CN101751284B (zh) * | 2009-12-25 | 2013-04-24 | 华为技术有限公司 | 一种分布式虚拟机监控器的i/o资源调度方法 |
EP2534569B1 (en) | 2010-02-09 | 2015-12-30 | Google, Inc. | System and method for managing replicas of objects in a distributed storage system |
US9323775B2 (en) | 2010-06-19 | 2016-04-26 | Mapr Technologies, Inc. | Map-reduce ready distributed file system |
CN102025550A (zh) * | 2010-12-20 | 2011-04-20 | 中兴通讯股份有限公司 | 一种分布式集群中数据管理的***和方法 |
US8572031B2 (en) * | 2010-12-23 | 2013-10-29 | Mongodb, Inc. | Method and apparatus for maintaining replica sets |
US8583773B2 (en) * | 2011-01-11 | 2013-11-12 | International Business Machines Corporation | Autonomous primary node election within a virtual input/output server cluster |
US8615676B2 (en) * | 2011-03-24 | 2013-12-24 | International Business Machines Corporation | Providing first field data capture in a virtual input/output server (VIOS) cluster environment with cluster-aware vioses |
US8713282B1 (en) * | 2011-03-31 | 2014-04-29 | Emc Corporation | Large scale data storage system with fault tolerance |
US8924974B1 (en) * | 2011-06-08 | 2014-12-30 | Workday, Inc. | System for error checking of process definitions for batch processes |
US20130029024A1 (en) | 2011-07-25 | 2013-01-31 | David Warren | Barbeque stove |
CN102355369B (zh) * | 2011-09-27 | 2014-01-08 | 华为技术有限公司 | 虚拟化集群***及其处理方法和设备 |
WO2013117002A1 (zh) * | 2012-02-09 | 2013-08-15 | 华为技术有限公司 | 一种数据重建方法、装置和*** |
CN102571452B (zh) * | 2012-02-20 | 2015-04-08 | 华为技术有限公司 | 多节点管理的方法和*** |
CN102724057B (zh) * | 2012-02-23 | 2017-03-08 | 北京市计算中心 | 一种面向云计算平台的分布式层次化自主管理方法 |
CN103294675B (zh) | 2012-02-23 | 2018-08-03 | 上海盛大网络发展有限公司 | 一种分布式存储***中的数据更新方法及装置 |
US9009421B2 (en) | 2012-11-13 | 2015-04-14 | International Business Machines Corporation | Dynamically improving memory affinity of logical partitions |
CN103051691B (zh) * | 2012-12-12 | 2015-09-09 | 华为技术有限公司 | 分区分配方法、装置以及分布式存储*** |
US10282228B2 (en) * | 2014-06-26 | 2019-05-07 | Amazon Technologies, Inc. | Log-based transaction constraint management |
-
2014
- 2014-11-06 CN CN201480040590.9A patent/CN106062717B/zh active Active
- 2014-11-06 JP JP2017539482A patent/JP6382454B2/ja active Active
- 2014-11-06 SG SG11201703220SA patent/SG11201703220SA/en unknown
- 2014-11-06 WO PCT/CN2014/090445 patent/WO2016070375A1/zh active Application Filing
- 2014-11-06 EP EP14905449.6A patent/EP3159794B1/en active Active
- 2014-11-06 BR BR112016030547-7A patent/BR112016030547B1/pt active IP Right Grant
-
2017
- 2017-05-08 US US15/589,856 patent/US10713134B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006065629A (ja) * | 2004-08-27 | 2006-03-09 | Hitachi Ltd | データ処理システム及び方法 |
JP2006209775A (ja) * | 2005-01-28 | 2006-08-10 | Hewlett-Packard Development Co Lp | データ追跡を有するストレージ複製システム |
JP2010509686A (ja) * | 2006-11-08 | 2010-03-25 | アーカイヴァス インコーポレイテッド | プライマリー・クラスタの高速リカバリ |
US20110099420A1 (en) * | 2009-10-26 | 2011-04-28 | Macdonald Mcalister Grant Alexander | Failover and recovery for replicated data instances |
US20130290249A1 (en) * | 2010-12-23 | 2013-10-31 | Dwight Merriman | Large distributed database clustering systems and methods |
JP2012221419A (ja) * | 2011-04-13 | 2012-11-12 | Hitachi Ltd | 情報記憶システム及びそのデータ複製方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021535468A (ja) * | 2018-08-29 | 2021-12-16 | アリババ グループ ホウルディング リミテッド | データ書き込みのための方法及び装置 |
JP7371087B2 (ja) | 2018-08-29 | 2023-10-30 | アリババ グループ ホウルディング リミテッド | データ書き込みのための方法及び装置 |
Also Published As
Publication number | Publication date |
---|---|
US20170242767A1 (en) | 2017-08-24 |
BR112016030547A8 (pt) | 2022-07-12 |
SG11201703220SA (en) | 2017-05-30 |
US10713134B2 (en) | 2020-07-14 |
CN106062717A (zh) | 2016-10-26 |
BR112016030547A2 (ja) | 2017-05-22 |
CN106062717B (zh) | 2019-05-03 |
EP3159794A4 (en) | 2017-10-25 |
JP6382454B2 (ja) | 2018-08-29 |
EP3159794A1 (en) | 2017-04-26 |
BR112016030547B1 (pt) | 2022-11-16 |
WO2016070375A1 (zh) | 2016-05-12 |
EP3159794B1 (en) | 2019-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6382454B2 (ja) | 分散ストレージ及びレプリケーションシステム、並びに方法 | |
US11360854B2 (en) | Storage cluster configuration change method, storage cluster, and computer system | |
US20240080362A1 (en) | Storage area network attached clustered storage system | |
US10795863B2 (en) | Geographically-distributed file system using coordinated namespace replication over a wide area network | |
US9934242B2 (en) | Replication of data between mirrored data sites | |
JP2019219954A (ja) | クラスタストレージシステム、データ管理制御方法、データ管理制御プログラム | |
CN105814544B (zh) | 用于支持分布式数据网格中的持久化分区恢复的***和方法 | |
CN113010496B (zh) | 一种数据迁移方法、装置、设备和存储介质 | |
CN105069152B (zh) | 数据处理方法及装置 | |
CN105493474A (zh) | 用于支持用于同步分布式数据网格中的数据的分区级别日志的***及方法 | |
CN115794499B (zh) | 一种用于分布式块存储集群间双活复制数据的方法和*** | |
CN112000444B (zh) | 数据库事务处理方法、装置、存储介质和电子设备 | |
WO2015196692A1 (zh) | 一种云计算***以及云计算***的处理方法和装置 | |
TWI669605B (zh) | 虛擬機器群組的容錯方法及其容錯系統 | |
EP2980707B1 (en) | Method for creating a database clone of a distributed database, system for creating a database clone of a distributed database, program and computer program product |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180315 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180417 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180622 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20180703 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180801 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6382454 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |