JP2016530608A - ミラーリングされるデータサイト間のデータの複製 - Google Patents

ミラーリングされるデータサイト間のデータの複製 Download PDF

Info

Publication number
JP2016530608A
JP2016530608A JP2016525437A JP2016525437A JP2016530608A JP 2016530608 A JP2016530608 A JP 2016530608A JP 2016525437 A JP2016525437 A JP 2016525437A JP 2016525437 A JP2016525437 A JP 2016525437A JP 2016530608 A JP2016530608 A JP 2016530608A
Authority
JP
Japan
Prior art keywords
data
site
data object
mirrored
sites
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.)
Pending
Application number
JP2016525437A
Other languages
English (en)
Inventor
ハント,タッド
ハウ,ジョン
Original Assignee
エグザブロックス・コーポレーション
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by エグザブロックス・コーポレーション filed Critical エグザブロックス・コーポレーション
Publication of JP2016530608A publication Critical patent/JP2016530608A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1443Transmit or communication errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2056Error 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/2064Error 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2056Error 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/2071Error 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 using a plurality of controllers
    • G06F11/2079Bidirectional techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2094Redundant storage or storage space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2097Error 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 maintaining the standby controller/processing unit updated
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/202Error 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/2023Failover techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/855Details of asynchronous mirroring using a journal to transfer not-yet-mirrored changes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Retry When Errors Occur (AREA)
  • Hardware Redundancy (AREA)

Abstract

ミラーリングされるデータサイト間のデータの複製のためのコンピュータ実装方法及びシステムが提供される。例示的な方法は、ミラーリングされるデータサイトにおいてデータオブジェクトを受信することを含むことができ、ミラーリングされるデータサイトは1又は複数のデータノードを含む。データオブジェクトは、1又は複数のデータノードに内部で複製される。次に、データオブジェクトに関連付けられるデータオブジェクト参照が生成される。データオブジェクトを参照する参照は、全ての他のミラーリングされるデータサイトへの送信のためにキューに入れられる。データオブジェクトに関連付けられるデータオブジェクト参照は、他のミラーリングされるデータサイトに送信される。データオブジェクトが各ミラーリングされるデータサイトで受信されるとき、サイト内の1又は複数のデータノードに複製される。データオブジェクトを送信した後、データオブジェクト参照は破棄される。

Description

本開示は概して、データ複製のためのシステム及び方法、より具体的には、任意のサイトから利用可能ファイルシステムの単一の一貫性のあるビューを提供するためのミラーリングされるデータサイトを含む複製インフラストラクチャに関する。
この部分に記載されたアプローチは、追求されることができるが、必ずしも以前に考えられていた又は追求されていたアプローチではない。したがって、特に明記しない限り、この部分に記載されたアプローチのいずれかが、単にこの部分にそれらが組み入れられることによってだけで従来技術と見なすことが推定されるべきではない。
コンピューティングシステムにおいて、リモート複製は、データ保護、フォールトトレランスを向上させるために、及び障害復旧を提供するために、多数のサイト間のデータのコピーをすることを含むデータ保護の形態である。本出願で使用されるとき、用語「サイト」は、物理的に異なる地理的な位置を示し得る、又は、障害対応を必要とする別個のグループを示し得る。例えば、地震からの保護は、同じ断層線によって影響を受けないサイトにレプリカを置くことを意味し得る。保護が電力関連の障害に向けられる場合、2つのサイトは、同じ建物の中又は同じラックの中にさえあり得るが、それぞれのサイトは異なる電源を有する。
単一のサイトに対するデータ保護に使用されるプロシージャ及び異なるサイト間の複製に使用されるプロシージャは実質的に異なる場合がある。したがって、従来のシステムでは、2つの完全に異なる方法論が使用され得る。
さらに、サイト間のデータオブジェクトは、様々なネットワーク及びノード障害に悩まされ得る。このような障害は、検出され且つ復旧される必要がある。
この概要は、詳細な説明に以下にさらに記載される単純な形態で、概念の選択を導入するために提供される。この概要は、請求項に記載された主題の重要な特徴又は本質的な特徴を特定することをいとするものではなく、請求項に記載された主題の範囲を決定する補助として使用されることを意図するものでもない。
本開示の様々な実施形態によれば、ミラーリングサイト間の複製の方法が提供される。幾つかの実施形態では、方法は、多数のサイト間の内容参照可能オブジェクトストア(content addressable object store)を複製することを含み、各オブジェクトは、オブジェクトデータから得られるシグネチャによって参照可能である。幾つかの実施形態では、方法は、内容参照可能オブジェクトストアに加えて構成されたファイルシステムを複製することを含み得る。
ミラーリングは、任意のサイトにおけるデータに対する変更が全ての他のサイトにコピーされるように双方向性であり得るとともに、全てのサイトは、ファイルシステムが利用可能なプロシージャにしたがってデータに同時にアクセスし得る。
加えて、方法は、複製されたサイトのセットにわたって、読み込み及び書き込み順序付けを保証することを含み得るとともに、ロックすることは、ファイルシステムがそのクライアントに伝えることを要求されることを保証する。幾つかの実施形態では、これらの順序付けルールは、規格及びプロトコルによって規定され得る。このような規格及びプロトコルの例は、POSIX、NFS、CIFS、SMB、RESTful、WebDav等を含む。
各ミラーリングされるサイトは、1又は複数のノードを含み得、その1つはゲートウェイとして選ばれ得る。幾つかの実施形態では、ゲートウェイノードは、アービトレータとして1つのサイトを選ぶように協力し得る。代替的には、ゲートウェイは、この責任を協力して分担し得る。アービトレータは、全てのファイルシステム順序付けルールが忠実に守られることを保証する。
サイトは、ミラーに加えられ得る又はそれから除去され得る。加えられたサイトは、既にデータオブジェクトを含み得る。幾つかの実施形態では、これらのデータオブジェクトは、「初期同期」方法を使用して複製され得る。初期同期方法はまた、サイトが(例えば、ネットワーク障害に起因する)切断後に再接続されるときにはいつでも使用され得る。
本出願に記載された方法を使用することで、ミラーリングされるサイトのデータオブジェクトは、ミラーサイトが切断されている間に、他のサイトによって、アクセスされ、作られ、修正され、又は変更され得る。このために、データオブジェクトは、1つのサイトで受信され得る。次に、データオブジェクトは、そのサイトの1又は複数のノードに記憶され得る。さらに、データオブジェクトは、ゲートウェイに転送され得る。幾つかのデータオブジェクトに関して、ゲートウェイは、データオブジェクト及びメタデータをミラーリングされるサイトに同期して複製し得る。他のデータオブジェクトに関して、ゲートウェイは、データオブジェクトシグネチャ及びオブジェクトメタデータをミラーリングされるサイトに同期して送信し得る。データオブジェクトは、非同期伝送のためにキューに入れられ得る。幾つかの実施形態では、メタデータはサイト識別子を含み得る。
ミラーリングされるサイトのクライアントがまだ複製されていないデータオブジェクトにアクセスする必要があるとき、このミラーリングされるサイトは、以前に送信されたオブジェクトメタデータによって識別されるサイトにデータオブジェクトに対する要求を送信する。要求されたサイトはその後、要求しているサイトにオブジェクトデータを送信し得るとともに、それを送信保留中のオブジェクトのキューから取り除き得る。
幾つかの実施形態では、同期して複製されることになるオブジェクトのキューは、データオブジェクトの最大カウントに制限され得る。したがって、キューがその最大に達したとき、サイトは新しいデータオブジェクトを受け入れることを停止し得る。
前述の及び関連する目的の達成のために、本開示の1又は複数の実施形態は、以下に十分に記載されるとともに特に請求項で指摘される特徴を有し得る。以下の説明及び図面は、本開示の1又は複数の実施形態の特定の例示の特徴を詳細に述べる。しかし、これらの特徴は、本開示の様々な実施形態の原理が用いられ得る様々な方法の幾つかを示し、この記載は、本開示のこのような実施形態及びそれらの均等物を含むことが意図される。
実施形態は、例として示され、添付の図面への限定ではなく、同様の参照符号は同様の要素を示す。
コンピュータネットワークインフラストラクチャの単純化された構造を示す。 メタデータ操作プロセッサ(MOP)及びゲートウェイサービスの移行のための単純化されたシナリオを示す。 メインゲートウェイの移行のためのシナリオを示す。 他のサイトにおけるゲートウェイサービスの接続状態の図表示を示す。 異なる層を使用するデータ複製を示す。 サイト間のデータ複製の図表示を示す。 サイト障害を示す。 サイト障害に際してとられるアクションを示す。 データの複製のための方法を示すフローチャートである。 データの複製のためのサンプルシステムを示す。 コンピュータシステムの例示的な電子的な形態におけるコンピューティングデバイスの図式表現を示す。
以下の詳細な説明は、添付の図面への参照を含み、この添付の図面は詳細な説明の一部を形成する。図面は、例示的な実施形態に従う説明を示す。「例」とも称される、これらの例示的な実施形態は、当業者が本主題を実施することを可能にするために十分詳細に記載されている。実施形態は組み合わされることができ、他の実施形態が利用されることができ、又は構造的、論理的及び電気的な変更が、請求項に記載されたものの範囲から逸脱することなしに行われることができる。したがって、以下の詳細な説明は、限定する意味で受け止められるべきではなく、範囲は、添付の請求項及びそれらの均等物によって定められる。
ここに開示されるアプローチ及び原理は、コンピュータネットワークインフラストラクチャの中のデータオブジェクトの複製のためのコンピュータに実装される方法及びシステムに関する。コンピュータネットワークインフラストラクチャは、それぞれが様々なデータオブジェクトを記憶するためのストレージリソースを有するとともに他のノードからそれらへのアクセスを可能にする複数のノードを含む。さらに、1つのノードのストレージリソースは、RAM(ランダムアクセスメモリ)、ROM(リードオンリメモリ)、ハードディスクドライブ(HDD)、又はソリッドステートドライブ(SSD)のような、1又は複数のハードドライブ又は他のメモリデバイスを含み得る。各データオブジェクト(例えば、ファイル、ファイルの集まり、又はオペレーティングシステム若しくはアプリケーションによって動作されることができる任意の他のエンティティ)は、インフラストラクチャのノードのそれぞれに複製され得る。
デバイスの間の論理接続は、様々なトポロジを形成し得る。トポロジは、物理的なネットワークのレイアウト、ネットワークのデバイスの数、及び他のファクタに依存し得る。1つの伝統的なトポロジは、データノードが円で接続されるとともに各データノードが隣接するデータノードに接続されるサイトを含む。他の伝統的なトポロジは、全てのデータノードがサイトの他の全てのデータノードに接続される「メッシュ」トポロジを含む。このようなサイトは、「リング」と称されることができる。リングは、ノードの各ペアの間の2地点間通信チャネルを使用して、メッシュに接続され得る。データノードは、2以上のリングが互いに接続され且つノードの全てのペアが2地点間通信チャネルを使用して接続されるとき、メッシュで接続されていると言われる。したがって、リングが3つのノードA、B、及びCを含む場合、3つのネットワーク接続:A−B、B−C、及びC−Aがある。1つのメンバリングが2つのノード、A、Bを含み、他が3つのノードD、E、Fを含むメッシュがある場合、次の10のネットワーク接続がある:A−B、D−E、E−F、F−D、A−D、A−E、A−F、B−D、B−E、及びB−F。
より複雑な設計では、記載されたトポロジの両方が使用され得る。例えば、データサイトは、メッシュ接続を使用して互いに通信し得る。この接続では、データサイトの全てのノードは、他のデータサイトの全てのノードにデータを複製することができる。したがって、メッシュトポロジは、データサイト間に存在することができる。このトポロジは図1によって示されている。
図1は、幾つかの例示の実施形態による、コンピュータネットワークインフラストラクチャ100の単純化された構造である。コンピュータネットワークインフラストラクチャ100は、少なくとも2つのサイト、サイトA及びBを含み、その両方がアクティブである。各サイトは、複数のノードを含み得る。各ノードは、ネットワークアドレスを維持するとともにデータオブジェクトを記憶し且つ共有することができる(さらなるコンポーネントデータ構成要素を含み得る)ネットワークデバイスである。例では、ノードは、複数のハードドライブ、コンピュータ、サーバ、ラップトップ、タブレットコンピュータ、シンクライアント、又はデータを複製するのに適した任意の他の電子コンピューティングデバイスを有するデバイスを参照し得る。さらに、各ノードは、RAM、ROM、フラッシュメモリ等のような複数のストレージリソースを含み得る。
図1に示されるように、サイトAは、4つのノード:1A、2A、3A、及び4Aを含み得る。サイトBも、4つのノード:1B、2B、3B、及び4Bを含み得る。サイトAとサイトBとの間の論理接続はメッシュトポロジを形成し得る。したがって、サイトAの各ノードは、データをサイトBの各ノードに複製し得る。これは、ノード2Aの例によって示されている。ノード2Aに関連付けられる通信が、サイトBの各ノードにつながる矢印によって示されている。このような通信がノード2Aに対してのみ示されているが、サイトAの全てのノードがサイトBの全てのノードとの同様の通信を有し得る。
サイトAは配置空間(configuration space)140に関連付けられ得る一方、サイトBは配置空間160に関連付けられ得る。ミラーのサイトA及びBの配置空間140及び160は、データサイト間の複製のためのシステム150によって、整合され得る。システム150は、ファイルシステムの1つの共通のビューを提供するためにメッシュに接続されたサイトA及びBの構成を整合させ得る。
ミラーリングサイト間のデータの複製は、同期及び非同期データ経路の両方を用い得る。同期データ経路は、メタデータ通信のために用いられ得る一方、非同期経路は、データ自体を送信するために使用され得る。このアプローチは図1に示されている。
複数サイトインフラストラクチャでは、1つのサイトは、複製を制御し且つメタデータ操作プロセッサ(Metadata Operational Processor)(MOP)を動作させ得る。このサイトは、マスタサイトと称され得るとともに、メタデータを制御し且つコンフリクトを解決するために使用され得る。他のサイトは、それぞれMOPプロキシを動作させ得る。これらのサイトは、従属サイトと称され得る。
図2は、幾つかの例示の実施形態による、コンピュータネットワークインフラストラクチャ200の単純化された構造を示す。コンピュータネットワークインフラストラクチャ100は、それぞれが4つのノードを有するとともにメッシュで接続されている、サイトA及びBを含み得る。サイトAでは、ノード2AはMOP220を含み得る。したがって、ノード2Aは、アービトレータノードと称され得るとともに、ミラーリングされるデータサイトAとミラーリングされるデータサイトBとの間のデータ複製を調停し得る。MOP220は、ファイルシステムの一貫性のあるビューを提示するために全てのメタデータ操作を同期させ得る。多数のノードからのメタデータ操作は、MOP220を通じて送り込まれ得る。MOP220は、サイト内の単一のノード上で動き得るが、その上でMOP220が動くノードは、データモデル及びサイトの状態に応じて変わり得る。幾つかの実施形態では、MOPの機能は、サイトのノードにわたって、又はサイト間で分散され得る。
MOP220をホスティングしないサイトBがMOPプロキシ230を実行し得る。MOPプロキシ230は、MOP220がサイトAから要求を受信するのと同じように、サイトBのノードから要求を受信し得る。しかし、プロキシとして作動することによって、MOPプロキシ230は、要求をサイトAのMAOP220に中継し得るとともに、要求を起こしたノードに応答を中継して返し得る。MOPプロキシ230は、転送エージェントとして作動し得るとともに、サイトBのノードとサイトAのMOP220を実行しているノードとの間でリモートプロシジャコール(RPC)を中継し得る。
サイトA及びサイトBは、各サイトのノード間の双方向接続を使用して接続され得る。この接続は、メインゲートウェイ210と呼ばれ得る。メインゲートウェイ210は、接続及びイベントのための分散メッセージングプロトコルを活用し得る。メインゲートウェイ210は、ローカルエリアネットワーク(LAN)又は広域ネットワーク(WAN)上で動作し得る。
次に図3を参照すると、メインゲートウェイ210及びMOPサービスは併置され得る。MOP220は、ゲートウェイサービスと共にサイトAのノード2Aに位置し得る一方、MOPプロキシ230は、ゲートウェイサービスと共にノード2Bに位置する。サイトAの任意のノードがMOP220を実行するように選択され得るので、そして、サイトBの任意のノードがMOPプロキシ230を実行するように選択され得るので、全てのノードは、それらが他のサイトの各ノードに接続するように、事前にプロビジョニングされ得る。
これは、MOP220(又はMOPプロキシ230)をホスティングするノード2Aが、サイトの他のノードにフェイルオーバするノードフェイルオーバシナリオに適応し得る。ゲートウェイサービスは、ノードフェイルオーバにおいてMOP220に従い得る。これは、ミラーリングされるサイト間の代替ゲートウェイを確立するために予めプロビジョニングされた経路を使用して実行され得る。接続の状態は、可能なMOP及びゲートウェイフェイルオーバ位置を制限するために使用され得る。
ノード2Bに関連付けられるMOPプロキシ230は、サイトBの他のノード(例えば、ノード4B)に移行され得る。これは、メインゲートウェイ210の障害の結果であり得る。メインゲートウェイ210及びMOPサービスは併置されるので、メインゲートウェイ210もまたノード4Bに移行され得る。
接続状態
図4は、他のサイトからの接続を待つサイトの接続状態400の図表示を示す。他のサイトのノードは、各サイトの配置空間に発行されるミラー配置にしたがって接続を開始し得る。
したがって、サイトの接続状態は、接続待ち410を含むことができ、この接続待ちは、他のサイトのノードによって開始され得る。接続が確立されるとき、サイト間の同期420が開始し得る。同期は、同期エラーが発生する430又は同期が終了する430のいずれかまで続き得る。状態430又は440のいずれかが生じるとき、サイト間の接続はもはや存在せず、サイトは再び状態410に行き、接続410を回復させようとし、同期が終了440まで同期420を続け得る。
初期同期
サイトが、接続又は再接続するとき、ゲートウェイサービスは、初期同期と呼ばれる段階に入る。各サイトのゲートウェイサービスは、それらのそれぞれのサイトに存在することが知られているオブジェクトのオブジェクト識別子を交換し得る。サイトに知られていないオブジェクトに対応するオブジェクト識別子は、データ受信動作を使用してゲートウェイサービスによってプルされ、次にデータ転送動作を使用してサイトに書き込まれ得る。これらの動作は、ゲートウェイサービスが、ネットワークリンクのより効率的な使用を伴ってオブジェクトの初期同期を実行することを可能にし得る。
幾つかの実施形態では、初期同期が長期間の動作であるので、初期同期に関連する状態キーが配置空間において発行され得る。このような方法で、初期同期の進捗がモニタされ得る。
ミラーが接続されるとき、1つのサイトで行われたファイルシステムアップデートは、他のサイトに中継され得る。オブジェクトレベルで、これは、1つのサイトで局所的に行われたアップデートを他のサイトに繰り返すことによって達成され得る。
層(Tier)アーキテクチャ
データオブジェクトは、サイト内のノード間で及びサイト間で複製され得る。サイト内及びサイト間動作が、異なるレベルで又は図5に示されるような層で実行され得る。
アップデートが、層0 510(又はローカル層)を介してサイトAで局所的に持続され得る。対応して、ノード1Aと2Aとの間、1Aと3Aとの間、3Aと4Aとの間、及び2Aと4Aとの間の動作のような、サイト内動作が、層0 510で実行され得る。
アップデートは次に層1 520(又はリモート層)を介してサイトBにプッシュされ得る。サイトB内の動作も、すなわち、1Bと2B、1Bと3B、3Bと4B、及び2Bと4Bも、次に層0 510で実行され得る。
サイト内及びサイト間動作を異なる層と関連付けることによって、動作のルーピングが回避され得る。例えば、データオブジェクト書き込みは、発生元サイトにおけるリストの層の全てに複製され得る。これらの層の1つは、他のサイトへのゲートウェイを含むことができ、このゲートウェイはデータオブジェクトがそのサイトに複製されることをもたらす。そのサイト内で、データオブジェクトを記憶するための層の新しいリストが発生し得るとともに、発生元層は、こちら側のゲートウェイがデータオブジェクトをまた発生側へルーピングさせることを避けるために、リストから取り除かれ得る。
幾つかの実施形態によれば、全体的なアップデート動作がうまく完了する前に、全ての層でうまく完了しなければならない。
ミラー接続は、高い待ち時間を伴う遅いWANのようなパフォーマンスを有し得るので、サイト間のアップデートは、転送されるデータオブジェクトについて他のサイトに伝えるデータ参照を作ることから始まり得る。例えば、RPCが、他のサイトのゲートウェイサービスによって処理されることができ、このポイントにおいて、エントリが、DB_MBと呼ばれる、プロキシオブジェクトデータベースの中に作られ得る。このようなエントリは、このエントリに対応するオブジェクトが結局は到着するという他のサイトによる約束を示し得る。オブジェクト転送が次に、他のサイトへの最終的な配信に関する要求を起動するノードでキューに入れられ得る。
幾つかの例示の実施形態では、設定可能なキュー長さ最大値が強制され得る。限度に達するとき、アラームがトリガされ得るとともに、元の動作は、キューが追加されることができるまで、完了しない。
他の例示の実施形態では、キュー限度に達するとき、新しい書き込みが受け付けられないように、バックプレッシャ(backpressure)がクライアントに加えられ得る。これ及び同様の仕組みを介して、ミラー間の差が最小化され得るとともにやがて限度内にとどめられ得る。
読み込みをサポートするために、オブジェクト受信は、オブジェクトが任意の前の層の中に見られなくなった後にのみ、実行され得る。一貫性のあるファイルシステムビューをサポートするために、要求されたオブジェクトがローカルプロキシオブジェクトデータベースへのエントリに対応する場合、層0読み込み動作が、各サイトにおけるゲートウェイサービスノードを介して他のサイトで実行され得る。その間、対応するデータオブジェクトは、書き込み動作が最終的にデキューされ(de−queued)且つうまく処理されるまで、そのサイトで持続され得ない。成功して完了すると、DB_MBの対応するエントリが除去される。ミラーが損なわれているとき書き込み動作が失敗することがあり得る。これは、以下により詳細に論じられる。
この書き込みキューの長さは、初期同期のための読み込みキューの長さと組み合わされるとき、2つのサイトの同期に関する情報を提供し得る。これらの長さは、配置空間のメッシュ状態キーに周期的に記録され得る。
非同期データオブジェクト書き込み動作
データオブジェクト620のための、サイト、例えば図6に示されるようなサイトA内の書き込み動作が層0 510でうまく完了するとき、動作は、サイト間レベルで層1 520にレベルを上げられ得る。このために、アップデート動作のデータオブジェクト620に関連付けられるプロキシ640は、他のサイトに同期して送られ得る。プロキシ640は、データオブジェクトを現在含むサイトを識別するサイト識別子(ID)を含むことができ、このデータオブジェクトにプロキシ640は関連付けられる。
プロキシ640を受信すると、サイトBのプロキシ参照データベースがアップデートされ得る。したがって、プロキシ参照が、作られることができ、サイトBに転送されるデータオブジェクト620を伝える。
データ配信キュー610が許可するとき、データオブジェクト620は圧縮されてサイトBに送られ得る。データオブジェクト620は、非同期転送され得る。サイトBでデータオブジェクト620を受信した後、データオブジェクト620は、解凍されてサイトBのノードに書き込まれ得る。
全ての層におけるアップデート動作がうまく完了した後、プロキシ参照データベース630におけるプロキシオブジェクト情報640は除去され得る。
データオブジェクト読み込み動作
データオブジェクトのための読み込み動作が開始されるとき、データオブジェクトは、層0 510において検索され得る。データオブジェクトが層0 510において発見される場合、読み込み動作はうまく完了する。しかし、データオブジェクトがサイトにまだ書き込まれていない場合、データオブジェクトは発見されないので、読み込み動作が層1に対して再試行され得る。この処理は、オブジェクトが見つかる又は全ての層が調べ尽くされるかのいずれかまで繰り返され得る。後者の場合、オブジェクトは発見されることができないのでエラーが返送される。
図6を参照すると、読み込み動作がデータオブジェクト2に関連付けられる場合、データオブジェクト2に関連するプロキシ参照が、プロキシ参照データベース630において発見され得る。その後、要求が層1で発行され、データオブジェクト2は、前方にプルされ(pulled forward)て、サイトBに書き込まれ得る。
幾つかの実施形態では、データオブジェクトは、オブジェクト識別子に関連付けられ得る。オブジェクト識別子は、データオブジェクトの内容に基づいてデータオブジェクトを一意に識別し得る。したがって、データオブジェクトは、サイト内でデータレプリカを動的に再配置することを含むサイトにローカルな複製ポリシーにもかかわらず、任意の場所、オブジェクト識別子を使用する任意の層で見つけ出され得る
サイト障害シナリオ
幾つかの場合では、サイトの1つが様々な理由(例えば、停電)のために障害を経験し得る。リモートサイトが障害を起こす場合、新しいリモートサイトがプロビジョニングされ得るとともに、接続を確立した後、初期同期が開始され得る。MOPをホスティングするサイトが障害を起こす場合、リモート複製のためのシステムは、MOPをホスティングするように新しいサイトを指定し得る。
図7Aは、幾つかの例示的な実施形態による、MOPをホスティングするサイトの障害を示す。サイトAは、MOPをホスティングするサイトであり、サイトBはMOPをホスティングするサイトである。サイトは、データ配信の処理中である。データ配信キュー710はデータオブジェクトを含み、プロキシ参照データベース730は幾つかのプロキシ740を有する。サイトAが障害を起こす場合、データサイト間の複製のためのシステムは、図7Bに示されるように、ホスティングするサイトになるようにサイトBのレベルを上げ得る。
サイトAが障害を起こす場合、プロキシ参照データベース730はプロキシを有するので、データサイト間の複製のためのシステムは、ロールバックを実行し得る。システムは、データベースをスキャンし得るとともにサイトBに囲まれたデータをサポートするスナップショットにロールバックし得る。
他の動作は、データ配信キュー710を空にすること、プロキシ参照データベース730からプロキシを削除すること等を含み得る。
サイトAが障害を起こし続いて復旧する(例えば、一時的な停電から復旧する)場合、それはMOPを実行しているサイトにレベルを下げられ得る。サイト間の接続が確立されるとき、初期同期プロシージャが開始され得る。したがって、サイトAに存在しているデータへのアクセスは失われない。
図8は、コンピュータネットワークインフラストラクチャ100内のミラーリングされるデータサイト間のデータの複製の方法800を示すプロセスフロー図である。方法800は、ハードウェア(例えば、専用ロジック、プログラマブルロジック、及びマイクロコード)、ソフトウェア(例えば、汎用コンピュータシステム又は専用マシンで実行されるソフトウェア等)、又は両方の組み合わせを有し得るロジックによって実行され得る。1つの例示的な実施形態では、処理ロジックは、データサイト900間の複製のためのシステムに存在し、システム900の様々な要素が方法800を実行することができる。
前述のモジュールは仮想であり得るとともに、モジュールによって実行されると言われている命令は、実際、システム900によって取得され且つ実行され得ることが、当業者によって理解されるであろう。様々な要素が個々に記載された様々な動作の幾つか又は全てを実行するように構成され得るが、より少ない又はより多い要素が、提供され得るとともに様々な実施形態の範囲に依然として含まれ得る。
図8に示されるように、方法800は、ミラーリングされるデータサイトでデータオブジェクトを受信することを伴う動作810で開始し得る。データサイトは、1又は複数のデータノードを含み得る。これらのデータノードの1つは、MOPを実行するノード、すなわち、サイト間のデータ複製を調停するためのアービトレータノード、として指定され得る。受信されたデータオブジェクトは、動作820で1又は複数のデータノードに内部で複製され得る。データオブジェクトが全てのデータノードに複製された後、データオブジェクトに関連付けられるデータオブジェクト参照が動作830で生成され得る。
幾つかの実施形態では、オブジェクト識別子が、データオブジェクトに関連付けられる内容に暗号学的ハッシュ関数を実行することによって生成され得る。したがって、データオブジェクトは、データオブジェクトに関連付けられる内容に基づいて発見され得る。
動作840において、データオブジェクト参照は、1又は複数のノードを含む他のミラーリングされるデータサイトの1又は複数に送信され得る。これらのノードのそれぞれは、完全なメッシュを形成するように他のミラーリングされるデータサイトの各ノードと相互接続され得る。幾つかの例示の実施形態では、データオブジェクト参照は、他のミラーリングされるデータサイトに関連付けられるデータオブジェクト参照データベースに送信され得る。その後、データオブジェクトは、動作850において他のミラーリングされるデータサイトのへの送信のためにキューに入れられ得る。
他のミラーリングされるデータサイトへのデータオブジェクトの送信に際し、データオブジェクトは、データサイトの1又は複数のノードに複製され得る。ミラーリングされるデータサイトへのデータオブジェクトの複製の完了後、データオブジェクト参照は破棄され得る。
幾つかの実施形態では、ミラーリングされるデータサイト内のノードへのデータオブジェクトの複製は、サイト内動作層で実行され得る一方、ミラーリングされるデータサイト間でデータオブジェクト参照及びデータオブジェクトを送信することは、サイト間動作層で実行され得る。両方の動作層における動作は、同じデータロジックを使用して実行され得る。
さらに、方法800は任意選択で、ミラーリングされるデータサイト間でデータを同期することを含み得る。同期することは、ミラーリングされるデータサイトに関連付けられるデータオブジェクト参照及びデータオブジェクトを、内部で、他のミラーリングされるデータサイトの1又は複数と関連付けられるデータオブジェクト参照及びデータオブジェクトと比較することを含み得る。オブジェクト参照に対応するデータオブジェクトの配信は要求され得る。
幾つかの実施形態では、方法800は、他のミラーリングされるデータサイトにおいてデータオブジェクトの要求を受信することを含み得る。そのサイトが要求されたデータオブジェクトを有していない場合、それは、他のミラーリングされるデータサイトに関連付けられるデータオブジェクト参照に基づいて決定され得る。この場合、ミラーリングされるデータサイトは、より高い優先度でデータオブジェクトを供給するように要求され得る。
図9は、幾つかの例示の実施形態による、データサイト間の複製のためのシステム900を示す。システム900は、プロセッサ910及びデータベース920を含み得る。プロセッサ910は、ミラーリングされるデータサイトにおいてデータオブジェクトを受信するように構成され得る。そのデータサイトは、1又は複数のデータノードを含み得るとともに、受信されるデータオブジェクトは、ローカル層において、1又は複数のデータノードに内部で複製され得る。その後、データオブジェクトに関連付けられるデータオブジェクト参照、例えば、プロキシ参照が、生成されてデータベース920に送信され得る。データベース920は、データオブジェクト参照を含むことができ、このデータオブジェクト参照は、幾つかの実施形態では、その中にデータが存在するサイトを識別する「プロキシ参照」と称される。
データオブジェクトはその後、他のミラーリングされるデータサイトの1又は複数への送信のためにキューに入れられ得る。他のミラーリングされるデータサイトの1又は複数へのデータオブジェクトの送信に際し、データオブジェクトは、他のミラーリングされるデータサイトの1又は複数のノードに複製され得るとともに、データオブジェクト参照が破棄され得る。
図10は、コンピュータシステム1000の例示的な電子的な形態でマシンのためのコンピューティングデバイスの概略表現を示し、このコンピュータシステムの中でマシンにここで論じられた方法のいずれか1つ又は複数を実行させる命令のセットが実行されることができる。様々な例示的な実施形態では、マシンは、スタンドアロンデバイスとして動作する又は他のマシンに接続される(例えば、ネットワーク化される)ことができる。ネットワーク化された配置では、マシンは、サーバ・クライアントネットワーク環境でのサーバ若しくはクライアントマシンの能力の中で、又はピア・ツー・ピア(又は分散)ネットワーク環境の中のピアマシンとして動作することができる。マシンは、パーソナルコンピュータ(PC)、タブレットPC、セットトップボックス(STB)、携帯電話、デジタルカメラ、携帯音楽プレーヤ(例えば、MPEGオーディオ層3(MP3)プレーヤのような携帯ハードドライブオーディオデバイス)、ウェブ機器、ネットワークルータ、スイッチ、ブリッジ、又はそのマシンで受け取られることになる動作を規定する(シーケンシャル又は別の)命令のセットを実行可能である任意のマシンであることができる。さらに、1つのマシンのみが図示されているが、用語「マシン」は、ここで論じられた方法のいずれか1つ又は複数を実行するための命令のセット(又は多数のセット)を個別に又は共同して実行するマシンの任意の集まりを含むようにも受け取られるべきである。
例示のコンピュータシステム1000は、1つのプロセッサ又は多数のプロセッサ1002、ハードディスクドライブ1004、メインメモリ1006及びスタティックメモリ1008を含み、これらは互いにバス1010を介して通信する。コンピュータシステム1000はまた、ネットワークインタフェースデバイス1012、並びにデータ圧縮及びオブジェクト識別子暗号計算専用コプロセッサを含み得る。ハードディスクドライブ1004は、コンピュータ可読媒体1020を含むことができ、このコンピュータ可読媒体は、ここに論じられた方法又は機能のいずれか1つ若しくは複数を具体化する又は同方法又は機能のいずれか1つ若しくは複数によって用いられる命令1022の1又は複数のセットを記憶する。命令1022はまた、コンピュータシステム1000によるそれらの実行の間にメインメモリ1006の中に及び/又はプロセッサ1002の中に、完全に又は少なくとも部分的に、存在することができる。メインメモリ1006及びプロセッサ1002はまた、例えば、HDD又はSSDのような、機械可読媒体を構成することができる。
コンピュータ可読媒体1020は例示的な実施形態において単一の媒体であるように示されているが、用語「コンピュータ可読媒体」は、命令の1又は複数のセットを記憶する多数の媒体(例えば、集中又は分散データベース、及び/又は付随するキャッシュ及びサーバ)又は単一の媒体を含むように受け取られるべきである。用語「コンピュータ可読媒体」はまた、マシンによる実行のための命令のセットを記憶し、エンコードし、若しくは担持することができるとともに本出願の方法論の何れか1つ又は複数をマシンに実行させる、又はこのような命令のセットによって利用される、若しくは、前述の命令の組に関連付けられるデータ構造を記憶し、エンコードし、若しくは担持することができる任意の媒体を含むよう受け取られるべきである。用語「コンピュータ可読媒体」は、したがって、限定されるものではないが、ソリッドステートメモリ、光学媒体及び磁気媒体を含むよう受け取られるべきである。このような媒体は、限定されるものではなく、ハード・ディスク、フロッピー(登録商標)ディスク、NAND又はNORフラッシュメモリ、ディジタルビデオディスク、RAM、ROM、HDD、SSD等を含むことができる。
ここに記載された例示的な実施形態は、コンピュータ上に、ハードウェアに、又はソフトウェア及びハードウェアの組み合わせにインストールされたコンピュータ実行可能な命令(例えば、ソフトウェア)を備える動作環境において実現することが可能である。コンピュータ実行可能命令は、コンピュータプログラミング言語で記述されることができる、又は、ファームウェアロジックで実現されることができる。認知された標準に準拠したプログラミング言語で記述される場合、このような命令は、種々のハードウェアプラットフォーム上で、及び種々のオペレーティングシステムとのインタフェースに対して実行されることができる。これらの限定されるものではないが、本方法を実現するためのコンピュータソフトウェアプログラムは、例えば、C、C++、C#若しくは他のコンパイラ、アセンブラ、インタープリタ、又は他のコンピュータの言語若しくはプラットフォームなどの適切なプログラミング言語のどれでも記述することが可能である。
このように、ミラーリングされるサイト間のデータの複製のためのコンピュータ実装方法及びシステムが記載されている。実施形態は特定の例示的な実施形態を参照して説明されているが、本出願のより広い趣旨及び範囲から逸脱しない限り、種々の修正及び変更がこれらの例示的な実施形態に対して成されることが可能であることが明らかであろう。
したがって、明細書及び添付図面は、限定的意味合いというよりもむしろ例証的意味合いで受け止められるべきである。

Claims (20)

  1. ミラーリングされるデータサイト間のデータの複製の方法であって:
    1又は複数のデータノードを含む前記ミラーリングされるデータサイトでデータオブジェクトを受信するステップ;
    前記データオブジェクトを前記1又は複数のデータノードに内部で複製するステップ;
    前記データオブジェクトに関連付けられるデータオブジェクト参照を生成するステップであって、前記参照は、他の前記ミラーリングされるデータサイトへの送信のためにキューに入れられている前記データオブジェクトを参照する、ステップ;
    前記データオブジェクトに関連付けられる前記データオブジェクト参照を、1又は複数の予めプロビジョニングされる相互接続を有する前記他のミラーリングされるデータサイトに送信するステップ;及び
    前記他のミラーリングされるデータサイトへの送信のために前記データオブジェクトをキューに入れるステップ;を含み、
    前記他のミラーリングされるデータサイトへの前記送信に際し、前記データオブジェクトは、前記他のミラーリングされるデータサイトに付随する前記1又は複数のデータノードに複製されるとともに、前記データオブジェクト参照は破棄される、
    方法。
  2. 前記データオブジェクトが、現在の記憶容量制約のために前記他のミラーリングされるデータサイト内の前記ノードに直ちに書き込まれることができないとき、送信のために前記データオブジェクトを再試行するステップをさらに含み、利用可能な容量が前記他のミラーリングされるデータサイトにおいて認識されるまで、前記データオブジェクト参照は破棄される、
    請求項1に記載の方法。
  3. 前記データオブジェクト参照は、前記データオブジェクトに関連付けられる内容に暗号学的ハッシュ関数を実行することによって生成される、
    請求項1に記載の方法。
  4. 前記データオブジェクト参照は、前記データオブジェクトに関連付けられる前記内容に基づいて前記データオブジェクトを見つけることを可能にする、
    請求項3に記載の方法。
  5. 前記ミラーリングされるデータサイト及び前記他のミラーリングされるデータサイトは、同じデータロジックを使用するサイト間層動作及びサイト内層動作をサポートし、前記1又は複数のデータノードへの前記データオブジェクトの前記複製は、前記サイト内層動作を選択することによって実行され、前記他のミラーリングされるデータサイトにおける前記1又は複数のデータノードへの前記データオブジェクトの前記複製は、前記サイト間層動作を指定することによって実行される、
    請求項1に記載の方法。
  6. 前記ミラーリングされるデータサイトを同期するステップをさらに含み、前記同期するステップは:
    1又は複数の前記データオブジェクト参照及び前記ミラーリングされるデータサイトに関連付けられる前記データオブジェクトを、前記他のミラーリングされるデータサイトの1又は複数の前記データオブジェクト参照及び前記他のミラーリングされるデータサイトに関連付けられる前記データオブジェクトと比較するステップ;並びに
    前記1又は複数のデータオブジェクト参照に対応する前記1又は複数のデータオブジェクトの配信を要求するステップ;を含む、
    請求項1に記載の方法。
  7. 前記ミラーリングされるデータサイトは、ファイルシステムの一貫性のあるビューを提供する、
    請求項1に記載の方法。
  8. 前記ミラーリングされるデータサイト及び前記他のミラーリングされるデータサイトのそれぞれの前記ノードは、完全なメッシュを形成するように相互接続される、
    請求項1に記載の方法。
  9. 1つの前記データサイトは、前記ミラーリングされるデータサイト間のデータ複製を調停するためのアービトレータノードを含む、
    請求項1に記載の方法。
  10. メタデータ操作プロセッサ(MOP)をホスティングするノードの障害に際し、そのサイトの他のノードが前記アービトレータノードとして指定される、
    請求項9に記載の方法。
  11. 前記それぞれのミラーリングされるデータサイトは、前記ミラーリングされるデータサイト間のゲートウェイを確立するように構成されるそれぞれのゲートウェイノードを含む、
    請求項10に記載の方法。
  12. 前記ゲートウェイノードの1つの障害に際し、代替ゲートウェイノードが指定され、前記代替ゲートウェイノードは、前記ミラーリングされるデータサイト間に代替ゲートウェイを確立するように予めプロビジョニングされた経路を使用する、
    請求項11に記載の方法。
  13. 前記ミラーリングされるデータサイトにおいて、前記データオブジェクトの要求を受信するステップ;
    前記データオブジェクトに関連付けられるプロキシデータオブジェクト参照に基づいて、前記データオブジェクトがこのデータサイトによって受信されていないことを決定するステップ;及び
    前記決定に基づいて、前記プロキシデータオブジェクト参照によって参照される前記ミラーリングされるデータサイトに前記データオブジェクトを供給するように要求するステップ;をさらに含む、
    請求項1に記載の方法。
  14. ミラーリングされるデータサイト間の複製のためのシステムであって:
    前記システムは、プロセッサ及びデータベースを有し、
    前記プロセッサは:
    1又は複数のデータノードを有する前記ミラーリングされるデータサイトにおいてデータオブジェクトを受信するように;
    前記データオブジェクトを前記1又は複数のデータノードに内部で複製するように;
    前記データオブジェクトに関連付けられるデータオブジェクト参照を生成するように;
    前記データオブジェクトに関連付けられる前記データオブジェクト参照を他の前記ミラーリングされるデータサイトに送信するように;及び
    前記他のミラーリングされるデータサイトへの送信のために前記データオブジェクトをキューに入れるように;構成され、
    前記参照は、前記他のミラーリングされるデータサイトへの送信のためにキューに入れられている前記データオブジェクトを参照し、前記ミラーリングされるデータサイト及び前記他のミラーリングされるデータサイトは、1又は複数の予めプロビジョニングされる相互接続を有し、前記他のミラーリングされるデータサイトへの前記データオブジェクトの前記送信に際し、前記データオブジェクトは、前記他のミラーリングされるデータサイトに付随する前記1又は複数のデータノードに複製されるとともに、前記データオブジェクト参照は破棄され、
    前記データベースは、又は複数の前記データオブジェクトに関連付けられる1又は複数の前記データオブジェクト参照を記憶するように構成される、
    システム。
  15. 前記データオブジェクト参照は、前記データオブジェクトに関連付けられる内容に暗号学的ハッシュ関数を実行することによって生成される、
    請求項14に記載のシステム。
  16. 前記データオブジェクト参照は、前記データオブジェクトに関連付けられる前記内容に基づいて前記データオブジェクトを見つけることを可能にする、
    請求項15に記載のシステム。
  17. 前記ミラーリングされるデータサイト及び前記他のミラーリングされるデータサイトは、同じデータロジックを使用するサイト間層動作及びサイト内層動作をサポートし、前記1又は複数のデータノードへの前記データオブジェクトの前記複製は、前記サイト内層動作を選択することによって実行され、前記他のミラーリングされるデータサイトにおける前記1又は複数のデータノードへの前記データオブジェクトの前記複製は、前記サイト間層動作を選択することによって実行される、
    請求項14に記載のシステム。
  18. 前記プロセッサはさらに、前記ミラーリングされるデータサイト及び前記他のミラーリングされるデータサイトを同期するように構成され、前記同期は:
    前記ミラーリングされるデータサイトに関連付けられる前記データオブジェクト及び1又は複数の前記データオブジェクト参照を、前記他のミラーリングされるデータサイトに関連付けられる前記データオブジェクト及び1又は複数の前記データオブジェクト参照と比較すること;並びに
    前記1又は複数のデータオブジェクト参照に対応する前記1又は複数のデータオブジェクトの配信を要求すること;を含む、
    請求項14に記載のシステム。
  19. 前記ミラーリングされるデータサイトの1つは、全ての前記ミラーリングされるデータサイト間のデータ複製を調停するためのアービトレータノードを含む、
    請求項14に記載のシステム。
  20. そこに記憶される命令を有する非一時的プロセッサ可読媒体であって、前記命令は、1又は複数のプロセッサによって実行されるとき、前記1又は複数のプロセッサに:
    1又は複数のデータノードを含むミラーリングされるデータサイトにおいて、データオブジェクトを受信させ;
    前記データオブジェクトを前記1又は複数のデータノードに内部で複製させ;
    前記データオブジェクトに関連付けられるデータオブジェクト参照を生成させ;
    前記データオブジェクトに関連付けられる前記データオブジェクト参照を他の前記ミラーリングされるデータサイトに送信させ;及び
    前記他のミラーリングされるデータサイトへの送信のために前記データオブジェクトをキューに入れさせ;
    前記参照は、前記他のミラーリングされるデータサイトへの送信のためにキューに入れられている前記データオブジェクトを参照し、前記ミラーリングされるデータサイト及び前記他のミラーリングされるデータサイトは、1又は複数の予めプロビジョニングされる相互接続を有し、前記他のミラーリングされるデータサイトへの前記データオブジェクトの前記送信に際し、前記データオブジェクトは、前記他のミラーリングされるデータサイトに付随する前記1又は複数のデータノードに複製されるとともに、前記データオブジェクト参照は破棄される、
    媒体。
JP2016525437A 2013-07-10 2014-07-08 ミラーリングされるデータサイト間のデータの複製 Pending JP2016530608A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/939,106 US9934242B2 (en) 2013-07-10 2013-07-10 Replication of data between mirrored data sites
US13/939,106 2013-07-10
PCT/US2014/045822 WO2015006371A2 (en) 2013-07-10 2014-07-08 Replication of data between mirrored data sites

Publications (1)

Publication Number Publication Date
JP2016530608A true JP2016530608A (ja) 2016-09-29

Family

ID=52277959

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016525437A Pending JP2016530608A (ja) 2013-07-10 2014-07-08 ミラーリングされるデータサイト間のデータの複製

Country Status (4)

Country Link
US (1) US9934242B2 (ja)
EP (1) EP3019960A4 (ja)
JP (1) JP2016530608A (ja)
WO (1) WO2015006371A2 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9628438B2 (en) 2012-04-06 2017-04-18 Exablox Consistent ring namespaces facilitating data storage and organization in network infrastructures
US9552382B2 (en) 2013-04-23 2017-01-24 Exablox Corporation Reference counter integrity checking
JP2016526717A (ja) 2013-06-12 2016-09-05 エグザブロックス・コーポレーション ハイブリッドガベージコレクション
WO2014205286A1 (en) 2013-06-19 2014-12-24 Exablox Corporation Data scrubbing in cluster-based storage systems
US9934242B2 (en) 2013-07-10 2018-04-03 Exablox Corporation Replication of data between mirrored data sites
US10248556B2 (en) 2013-10-16 2019-04-02 Exablox Corporation Forward-only paged data storage management where virtual cursor moves in only one direction from header of a session to data field of the session
US9985829B2 (en) 2013-12-12 2018-05-29 Exablox Corporation Management and provisioning of cloud connected devices
US9774582B2 (en) 2014-02-03 2017-09-26 Exablox Corporation Private cloud connected device cluster architecture
EP3103025B1 (en) 2014-02-04 2019-07-10 Exablox Corporation Content based organization of file systems
US10168947B2 (en) * 2015-05-07 2019-01-01 Vmware, Inc. Virtual file system with vnode reconstruction capability
US20170060924A1 (en) 2015-08-26 2017-03-02 Exablox Corporation B-Tree Based Data Model for File Systems
US9846553B2 (en) 2016-05-04 2017-12-19 Exablox Corporation Organization and management of key-value stores
US10216586B2 (en) 2016-11-09 2019-02-26 International Business Machines Corporation Unified data layer backup system
US20190377642A1 (en) * 2018-06-08 2019-12-12 EMC IP Holding Company LLC Decoupled backup solution for distributed databases across a failover cluster
CN109167831A (zh) * 2018-08-31 2019-01-08 北京航天云路有限公司 多站点用户行为信息同步方法及系统
US10884820B1 (en) * 2018-08-31 2021-01-05 Veritas Technologies Llc Intelligent and automatic replication load score based load balancing and resiliency of replication appliances
US10977217B2 (en) * 2018-10-31 2021-04-13 EMC IP Holding Company LLC Method and system to efficiently recovering a consistent view of a file system image from an asynchronously remote system
CN110196884B (zh) * 2019-05-31 2022-04-29 北京大米科技有限公司 基于分布式数据库的数据写入方法、存储介质和电子设备
US11544147B2 (en) 2020-05-22 2023-01-03 Vmware, Inc. Using erasure coding across multiple regions to reduce the likelihood of losing objects maintained in cloud object storage
US11556423B2 (en) 2020-05-22 2023-01-17 Vmware, Inc. Using erasure coding in a single region to reduce the likelihood of losing objects maintained in cloud object storage
US11481319B2 (en) * 2020-05-22 2022-10-25 Vmware, Inc. Using data mirroring across multiple regions to reduce the likelihood of losing objects maintained in cloud object storage
US11954073B2 (en) 2022-03-16 2024-04-09 International Business Machines Corporation Multi-protocol multi-site replication

Family Cites Families (190)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL8303167A (nl) 1983-09-14 1985-04-01 Philips Nv Alleenstaande dienstverlenende inrichting met micro-computer, die beschermd is tegen storingen.
US4660130A (en) 1984-07-24 1987-04-21 Texas Instruments Incorporated Method for managing virtual memory to separate active and stable memory blocks
CA2285096C (en) 1991-11-12 2000-05-09 Ibm Canada Limited-Ibm Canada Limitee Logical mapping of data objects using data spaces
GB2265734A (en) 1992-03-27 1993-10-06 Ibm Free memory cell management system
US5812793A (en) * 1996-06-26 1998-09-22 Microsoft Corporation System and method for asynchronous store and forward data replication
US6237009B1 (en) 1996-10-11 2001-05-22 Sun Microsystems, Inc. Lease renewal service
US5832529A (en) 1996-10-11 1998-11-03 Sun Microsystems, Inc. Methods, apparatus, and product for distributed garbage collection
US6167437A (en) 1997-09-02 2000-12-26 Silicon Graphics, Inc. Method, system, and computer program product for page replication in a non-uniform memory access system
US5950205A (en) 1997-09-25 1999-09-07 Cisco Technology, Inc. Data transmission over the internet using a cache memory file system
US6098079A (en) 1998-04-02 2000-08-01 Mitsubishi Electric Information Technology Center America, Inc. (Ita) File version reconciliation using hash codes
US6226728B1 (en) 1998-04-21 2001-05-01 Intel Corporation Dynamic allocation for efficient management of variable sized data within a nonvolatile memory
US6154747A (en) 1998-08-26 2000-11-28 Hunt; Rolf G. Hash table implementation of an object repository
GB9825102D0 (en) 1998-11-16 1999-01-13 Insignia Solutions Plc Computer system
JP2000207266A (ja) 1999-01-13 2000-07-28 Mitsubishi Electric Corp レプリカシステムおよびレプリカ方法
US6493721B1 (en) * 1999-03-31 2002-12-10 Verizon Laboratories Inc. Techniques for performing incremental data updates
US6480950B1 (en) 2000-01-24 2002-11-12 Oracle International Corporation Software paging system
US7266555B1 (en) 2000-03-03 2007-09-04 Intel Corporation Methods and apparatus for accessing remote storage through use of a local device
EP1285354B1 (en) 2000-05-09 2004-03-03 Sun Microsystems, Inc. Method and apparatus for proximity discovery of services
US8219662B2 (en) 2000-12-06 2012-07-10 International Business Machines Corporation Redirecting data generated by network devices
US7216136B2 (en) 2000-12-11 2007-05-08 International Business Machines Corporation Concurrent collection of cyclic garbage in reference counting systems
SE0004736D0 (sv) 2000-12-20 2000-12-20 Ericsson Telefon Ab L M Mapping system and method
US20030028514A1 (en) 2001-06-05 2003-02-06 Lord Stephen Philip Extended attribute caching in clustered filesystem
US7222187B2 (en) 2001-07-31 2007-05-22 Sun Microsystems, Inc. Distributed trust mechanism for decentralized networks
US7134041B2 (en) 2001-09-20 2006-11-07 Evault, Inc. Systems and methods for data backup over a network
US6973049B2 (en) 2001-10-16 2005-12-06 Corrigent Systems Ltd. Auto-configuration of network interfaces in a bidirectional ring network
US7117505B2 (en) 2001-11-29 2006-10-03 Veritas Operating Corporation Methods, systems, and apparatus to interface with storage objects
US7177980B2 (en) 2001-12-18 2007-02-13 Storage Technology Corporation Cache storage system and method
US7392421B1 (en) * 2002-03-18 2008-06-24 Symantec Operating Corporation Framework for managing clustering and replication
US6968439B2 (en) 2002-08-29 2005-11-22 Micron Technology, Inc. Single segment data object management
ATE400026T1 (de) 2002-09-10 2008-07-15 Exagrid Systems Inc Datenschutzverfahren und vorrichtung
US20040111610A1 (en) 2002-12-05 2004-06-10 Canon Kabushiki Kaisha Secure file format
GB0301726D0 (en) 2003-01-24 2003-02-26 Ecebs Ltd Improved smartcard
US7043494B1 (en) 2003-01-28 2006-05-09 Pmc-Sierra, Inc. Fast, deterministic exact match look-ups in large tables
US7177886B2 (en) * 2003-02-07 2007-02-13 International Business Machines Corporation Apparatus and method for coordinating logical data replication with highly available data replication
JP4068473B2 (ja) 2003-02-19 2008-03-26 株式会社東芝 ストレージ装置、分担範囲決定方法及びプログラム
US7478096B2 (en) 2003-02-26 2009-01-13 Burnside Acquisition, Llc History preservation in a computer storage system
US7403961B1 (en) 2003-03-14 2008-07-22 Xilinx, Inc. Dangling reference detection and garbage collection during hardware simulation
US7275177B2 (en) * 2003-06-25 2007-09-25 Emc Corporation Data recovery with internet protocol replication with or without full resync
US7379954B2 (en) 2003-07-08 2008-05-27 Pillar Data Systems, Inc. Management of file system snapshots
US6988180B2 (en) 2003-09-29 2006-01-17 Microsoft Corporation Method and apparatus for lock-free, non-blocking hash table
US7496690B2 (en) 2003-10-09 2009-02-24 Intel Corporation Method, system, and program for managing memory for data transmission through a network
US7596704B2 (en) 2003-10-10 2009-09-29 Jing-Jang Hwang Partition and recovery of a verifiable digital secret
US7480760B2 (en) 2003-12-17 2009-01-20 Wegener Communications, Inc. Rotational use of memory to minimize write cycles
US8103772B2 (en) 2003-12-24 2012-01-24 Sap Aktiengesellschaft Cluster extension in distributed systems using tree method
EP1870814B1 (en) 2006-06-19 2014-08-13 Texas Instruments France Method and apparatus for secure demand paging for processor devices
US7529781B2 (en) * 2004-04-30 2009-05-05 Emc Corporation Online initial mirror synchronization and mirror synchronization verification in storage area networks
US8185663B2 (en) * 2004-05-11 2012-05-22 Hewlett-Packard Development Company, L.P. Mirroring storage interface
US7065611B2 (en) 2004-06-29 2006-06-20 Hitachi, Ltd. Method for controlling storage policy according to volume activity
US7715396B2 (en) 2004-08-19 2010-05-11 Microsoft Corporation Network routing
US7613703B2 (en) 2004-09-30 2009-11-03 Microsoft Corporation Organizing resources into collections to facilitate more efficient and reliable resource access
CN1761219B (zh) 2004-10-12 2010-04-28 华为技术有限公司 在mpls环网中实现拓扑结构自动发现的方法
US20060083247A1 (en) 2004-10-14 2006-04-20 Sun Microsystems, Inc. Prefix lookup using address-directed hash tables
US7694167B2 (en) * 2004-10-22 2010-04-06 Microsoft Corporation Maintaining routing consistency within a rendezvous federation
US7778984B2 (en) * 2004-11-19 2010-08-17 Microsoft Corporation System and method for a distributed object store
US20120310892A1 (en) * 2004-12-21 2012-12-06 Dam Tru Q System and method for virtual cluster file server
WO2006098723A1 (en) 2005-03-10 2006-09-21 Thomson Licensing Hybrid mesh routing protocol
US8356021B2 (en) 2005-03-11 2013-01-15 Ross Neil Williams Method and apparatus for indexing in a reduced-redundancy storage system
JP5043820B2 (ja) 2005-03-11 2012-10-10 ロックソフト リミテッド 低冗長記憶システムで索引を行う方法
US8442996B2 (en) 2005-04-12 2013-05-14 Enrico Maim Methods for granting access to resources modifiable by users in a computer environment, and resources structured therefore
US7539836B1 (en) 2005-04-18 2009-05-26 Netapp, Inc. Method and system for configuring a data storage object
US20070005746A1 (en) 2005-06-30 2007-01-04 Roe Bryan Y Enhanced network discovery service
US8296550B2 (en) 2005-08-29 2012-10-23 The Invention Science Fund I, Llc Hierarchical register file with operand capture ports
US20070130232A1 (en) 2005-11-22 2007-06-07 Therrien David G Method and apparatus for efficiently storing and managing historical versions and replicas of computer data files
US7653668B1 (en) * 2005-11-23 2010-01-26 Symantec Operating Corporation Fault tolerant multi-stage data replication with relaxed coherency guarantees
US8554758B1 (en) 2005-12-29 2013-10-08 Amazon Technologies, Inc. Method and apparatus for monitoring and maintaining health in a searchable data service
US7454592B1 (en) 2006-02-16 2008-11-18 Symantec Operating Corporation Block-level and hash-based single-instance storage
CN101046755B (zh) 2006-03-28 2011-06-15 郭明南 一种计算机自动内存管理的系统及方法
US20070233828A1 (en) 2006-03-31 2007-10-04 Jeremy Gilbert Methods and systems for providing data storage and retrieval
US7801128B2 (en) 2006-03-31 2010-09-21 Amazon Technologies, Inc. Managing communications between computing nodes
US9195665B2 (en) 2006-04-28 2015-11-24 Hewlett-Packard Development Company, L.P. Method and system for data retention
US20070271303A1 (en) 2006-05-18 2007-11-22 Manuel Emilio Menendez Personal file version archival management and retrieval
US8255420B2 (en) 2006-05-23 2012-08-28 Noryan Holding Corporation Distributed storage
US8099605B1 (en) 2006-06-05 2012-01-17 InventSec AB Intelligent storage device for backup system
US8990270B2 (en) 2006-08-03 2015-03-24 Hewlett-Packard Development Company, L. P. Protocol virtualization for a network file system
US7990979B2 (en) 2006-08-25 2011-08-02 University Of Florida Research Foundation, Inc. Recursively partitioned static IP router tables
US20080052446A1 (en) 2006-08-28 2008-02-28 Sandisk Il Ltd. Logical super block mapping for NAND flash memory
US7895666B1 (en) 2006-09-01 2011-02-22 Hewlett-Packard Development Company, L.P. Data structure representation using hash-based directed acyclic graphs and related method
US7539783B2 (en) 2006-09-22 2009-05-26 Commvault Systems, Inc. Systems and methods of media management, such as management of media to and from a media storage library, including removable media
WO2008043197A1 (en) 2006-09-26 2008-04-17 Intel Corporation Dynamically changing a garbage collector in a managed runtime system
US7827218B1 (en) 2006-11-18 2010-11-02 X-Engines, Inc. Deterministic lookup using hashed key in a multi-stride compressed trie structure
US8161353B2 (en) 2007-12-06 2012-04-17 Fusion-Io, Inc. Apparatus, system, and method for validating that a correct data segment is read from a data storage device
US7987278B2 (en) 2006-12-18 2011-07-26 Ricoh Company, Ltd. Web services device profile on a multi-service device: dynamic addition of services
US7840537B2 (en) 2006-12-22 2010-11-23 Commvault Systems, Inc. System and method for storing redundant information
US8935206B2 (en) 2007-01-31 2015-01-13 Hewlett-Packard Development Company, L.P. Snapshots in distributed storage systems
JP5020673B2 (ja) 2007-03-27 2012-09-05 株式会社日立製作所 重複したファイルの記憶を防ぐコンピュータシステム
WO2008125336A2 (de) 2007-04-15 2008-10-23 Phoenix Contact Gmbh & Co. Kg Verfahren und steuergerät zur steuerung eines automatisierungssystems
EP2015587B1 (fr) 2007-05-14 2012-01-25 Apple Inc. Procédé de mémorisation d'un objet multimédia, structure de donnée et terminal associé
US7725437B2 (en) 2007-07-31 2010-05-25 Hewlett-Packard Development Company, L.P. Providing an index for a data store
JP4386932B2 (ja) 2007-08-17 2009-12-16 富士通株式会社 ストレージ管理プログラム、ストレージ管理装置およびストレージ管理方法
US8069317B2 (en) 2007-10-12 2011-11-29 International Business Machines Corporation Providing and utilizing high performance block storage metadata
US8447733B2 (en) 2007-12-03 2013-05-21 Apple Inc. Techniques for versioning file systems
US8140599B1 (en) 2007-12-07 2012-03-20 Emc Corporation Garbage collection for merged collections
US8244846B2 (en) 2007-12-26 2012-08-14 Symantec Corporation Balanced consistent hashing for distributed resource management
US8171244B2 (en) 2008-02-01 2012-05-01 Imation Corp. Methods for implementation of worm mode on a removable disk drive storage system
JP5091704B2 (ja) 2008-02-06 2012-12-05 株式会社日立製作所 ストレージ構成回復方法及びストレージ管理システム
US8019863B2 (en) * 2008-03-28 2011-09-13 Ianywhere Solutions, Inc. Synchronizing events between mobile devices and servers
US8019882B2 (en) 2008-06-27 2011-09-13 Microsoft Corporation Content identification for peer-to-peer content retrieval
JP5146174B2 (ja) 2008-07-28 2013-02-20 富士通株式会社 仮想マシンモニタ装置およびプログラム,ならびに仮想マシン間メモリ共有管理方法
US8078646B2 (en) 2008-08-08 2011-12-13 Oracle International Corporation Representing and manipulating RDF data in a relational database management system
WO2010061260A1 (en) 2008-11-03 2010-06-03 Elvin Slavik Method, system, and product for managing spatial data in a database
US8353018B2 (en) 2008-11-13 2013-01-08 Yahoo! Inc. Automatic local listing owner authentication system
JP5396848B2 (ja) 2008-12-16 2014-01-22 富士通株式会社 データ処理プログラム、サーバ装置およびデータ処理方法
US9344438B2 (en) 2008-12-22 2016-05-17 Qualcomm Incorporated Secure node identifier assignment in a distributed hash table for peer-to-peer networks
US8886714B2 (en) 2011-08-08 2014-11-11 Ctera Networks Ltd. Remote access service for cloud-enabled network devices
US8132168B2 (en) 2008-12-23 2012-03-06 Citrix Systems, Inc. Systems and methods for optimizing a process of determining a location of data identified by a virtual hard drive address
US8094500B2 (en) 2009-01-05 2012-01-10 Sandisk Technologies Inc. Non-volatile memory and method with write cache partitioning
US8566362B2 (en) 2009-01-23 2013-10-22 Nasuni Corporation Method and system for versioned file system using structured data representations
US8397051B2 (en) 2009-02-23 2013-03-12 Autonomy, Inc. Hybrid hash tables
US8301654B2 (en) 2009-02-24 2012-10-30 Hitachi, Ltd. Geographical distributed storage system based on hierarchical peer to peer architecture
US8135748B2 (en) 2009-04-10 2012-03-13 PHD Virtual Technologies Virtual machine data replication
US8886206B2 (en) 2009-05-01 2014-11-11 Digimarc Corporation Methods and systems for content processing
US8285681B2 (en) 2009-06-30 2012-10-09 Commvault Systems, Inc. Data object store and server for a cloud storage environment, including data deduplication and data management across multiple cloud storage sites
US8706980B2 (en) 2009-07-30 2014-04-22 Cleversafe, Inc. Method and apparatus for slice partial rebuilding in a dispersed storage network
US8320282B2 (en) 2009-07-30 2012-11-27 Calix, Inc. Automatic control node selection in ring networks
US8285925B1 (en) 2009-07-31 2012-10-09 Amazon Technologies, Inc. Management of object mapping information corresponding to a distributed storage system
US8843762B2 (en) 2009-09-04 2014-09-23 Gradiant, Centro Tecnolóxico de Telecomunicacións de Galicia Cryptographic system for performing secure iterative computations and signal processing directly on encrypted data in untrusted environments
US9674262B2 (en) 2009-10-01 2017-06-06 Telefonaktiebolaget L M Ericsson (Publ) Method and arrangements for application scope management
JP2011095976A (ja) 2009-10-29 2011-05-12 Nippon Telegr & Teleph Corp <Ntt> 分散データ管理装置及び方法及びプログラム
US8868510B2 (en) 2009-12-03 2014-10-21 Sybase, Inc. Managing data storage as an in-memory database in a database management system
US8458131B2 (en) 2010-02-26 2013-06-04 Microsoft Corporation Opportunistic asynchronous de-duplication in block level backups
WO2011116087A2 (en) 2010-03-16 2011-09-22 Copiun, Inc. Highly scalable and distributed data de-duplication
US8458299B2 (en) 2010-03-17 2013-06-04 Hitachi, Ltd. Metadata management method for NAS global namespace design
FR2959089B1 (fr) 2010-04-16 2012-08-03 Inst Nat Rech Inf Automat Outil de gestion de ressources et d'infrastructures informatiques et reseaux
US20110264880A1 (en) 2010-04-23 2011-10-27 Tatu Ylonen Oy Ltd Object copying with re-copying concurrently written objects
US8566354B2 (en) 2010-04-26 2013-10-22 Cleversafe, Inc. Storage and retrieval of required slices in a dispersed storage network
US8504718B2 (en) 2010-04-28 2013-08-06 Futurewei Technologies, Inc. System and method for a context layer switch
US8984241B2 (en) 2010-07-07 2015-03-17 Nexenta Systems, Inc. Heterogeneous redundant storage array
CA3022462C (en) 2010-07-09 2020-10-27 State Street Corporation Systems and methods for private cloud computing
WO2012016089A2 (en) 2010-07-28 2012-02-02 Fusion-Io, Inc. Apparatus, system, and method for conditional and atomic storage operations
US20120030260A1 (en) 2010-07-30 2012-02-02 Maohua Lu Scalable and parallel garbage collection method and system for incremental backups with data de-duplication
US8407438B1 (en) 2010-08-16 2013-03-26 Symantec Corporation Systems and methods for managing virtual storage disk data
US8495093B2 (en) 2010-08-18 2013-07-23 International Business Machines Corporation Multiway trie data structure that dynamically adjusts node sizes in a manner that reduces memory footprint and improves access speed
JP5514041B2 (ja) 2010-08-25 2014-06-04 日本電信電話株式会社 識別子割当て方法及びプログラム
US8473778B2 (en) 2010-09-08 2013-06-25 Microsoft Corporation Erasure coding immutable data
US8972366B2 (en) 2010-09-29 2015-03-03 Red Hat, Inc. Cloud-based directory system based on hashed values of parent and child storage locations
WO2012051600A2 (en) 2010-10-15 2012-04-19 Kyquang Son File system-aware solid-state storage management system
US8239584B1 (en) 2010-12-16 2012-08-07 Emc Corporation Techniques for automated storage management
US8484408B2 (en) 2010-12-29 2013-07-09 International Business Machines Corporation Storage system cache with flash memory in a raid configuration that commits writes as full stripes
US9201667B2 (en) 2010-12-31 2015-12-01 Vmware, Inc. Providing virtual desktops using resources accessed on public computer networks
US9311135B2 (en) 2011-01-18 2016-04-12 Scality, S.A. Method for generating universal objects identifiers in distributed multi-purpose storage systems
US9251087B2 (en) 2011-02-11 2016-02-02 SanDisk Technologies, Inc. Apparatus, system, and method for virtual memory management
US8510267B2 (en) 2011-03-08 2013-08-13 Rackspace Us, Inc. Synchronization of structured information repositories
WO2012129191A2 (en) 2011-03-18 2012-09-27 Fusion-Io, Inc. Logical interfaces for contextual storage
US8341312B2 (en) 2011-04-29 2012-12-25 International Business Machines Corporation System, method and program product to manage transfer of data to resolve overload of a storage system
US8572290B1 (en) 2011-05-02 2013-10-29 Board Of Supervisors Of Louisiana State University And Agricultural And Mechanical College System and architecture for robust management of resources in a wide-area network
US8433681B2 (en) * 2011-05-12 2013-04-30 Dell Products L.P. System and method for managing replication in an object storage system
US8346810B2 (en) 2011-05-13 2013-01-01 Simplivity Corporation Reference count propagation
US8949182B2 (en) * 2011-06-17 2015-02-03 International Business Machines Corporation Continuous and asynchronous replication of a consistent dataset
US8843998B2 (en) 2011-06-27 2014-09-23 Cliqr Technologies, Inc. Apparatus, systems and methods for secure and selective access to services in hybrid public-private infrastructures
US8880837B2 (en) 2011-08-24 2014-11-04 International Business Machines Corporation Preemptively allocating extents to a data set
EP2756399B1 (en) 2011-09-12 2021-01-20 Microsoft Technology Licensing, LLC Querying and repairing data
EP2575379A1 (en) 2011-09-29 2013-04-03 Alcatel Lucent Apparatuses and computer program products for discovering and accessing local services via WiFi hotspots
US9372827B2 (en) 2011-09-30 2016-06-21 Commvault Systems, Inc. Migration of an existing computing system to new hardware
US8775393B2 (en) 2011-10-03 2014-07-08 Polytechniq Institute of New York University Updating a perfect hash data structure, such as a multi-dimensional perfect hash data structure, used for high-speed string matching
CN104272868A (zh) 2011-12-05 2015-01-07 高通股份有限公司 远程医疗无线通信集线器设备和服务平台系统
US8762627B2 (en) 2011-12-21 2014-06-24 Sandisk Technologies Inc. Memory logical defragmentation during garbage collection
IN2014DN05659A (ja) 2011-12-30 2015-04-03 Schneider Electric It Corp
US8782344B2 (en) 2012-01-12 2014-07-15 Fusion-Io, Inc. Systems and methods for managing cache admission
US9489827B2 (en) 2012-03-12 2016-11-08 Cisco Technology, Inc. System and method for distributing content in a video surveillance network
US9213581B2 (en) 2012-03-14 2015-12-15 Sap Se Method and system for a cloud frame architecture
US9043567B1 (en) 2012-03-28 2015-05-26 Netapp, Inc. Methods and systems for replicating an expandable storage volume
US20130263151A1 (en) 2012-04-03 2013-10-03 Microsoft Corporation Consistent Hashing Table for Workload Distribution
US9628438B2 (en) 2012-04-06 2017-04-18 Exablox Consistent ring namespaces facilitating data storage and organization in network infrastructures
US8868926B2 (en) 2012-04-06 2014-10-21 Exablox Corporation Cryptographic hash database
TWI631871B (zh) 2012-04-27 2018-08-01 內數位專利控股公司 支援鄰近發現程序方法及裝置
WO2013164878A1 (ja) 2012-05-01 2013-11-07 株式会社日立製作所 計算機システムの管理装置および管理方法
US9323589B2 (en) 2012-05-15 2016-04-26 Oracle International Corporation Self registration of event—consumers/producers and auto discovery
US20130346839A1 (en) 2012-06-20 2013-12-26 Francis Dinha Private tunnel network portal
US20130346591A1 (en) 2012-06-21 2013-12-26 Alcatel-Lucent Usa Inc. Clientless Cloud Computing
US9003477B2 (en) 2012-06-27 2015-04-07 Microsoft Technology Licensing, Llc Model for managing hosted resources using logical scopes
US9348652B2 (en) 2012-07-02 2016-05-24 Vmware, Inc. Multi-tenant-cloud-aggregation and application-support system
US20140019573A1 (en) * 2012-07-16 2014-01-16 Compellent Technologies Source reference replication in a data storage subsystem
US8966343B2 (en) 2012-08-21 2015-02-24 Western Digital Technologies, Inc. Solid-state drive retention monitor using reference blocks
US9002792B2 (en) 2012-11-19 2015-04-07 Compellent Technologies Confirming data consistency in a data storage environment
US9715507B2 (en) 2013-03-28 2017-07-25 Ctera Networks, Ltd. Techniques for reconciling metadata and data in a cloud storage system without service interruption
US9552382B2 (en) 2013-04-23 2017-01-24 Exablox Corporation Reference counter integrity checking
US9166866B2 (en) * 2013-04-30 2015-10-20 Microsoft Technology Licensing, Llc Hydration and dehydration with placeholders
US9786197B2 (en) 2013-05-09 2017-10-10 Rockwell Automation Technologies, Inc. Using cloud-based data to facilitate enhancing performance in connection with an industrial automation system
WO2014190093A1 (en) 2013-05-21 2014-11-27 Exablox Corporation Automatic data ring discovery and configuration
US9389651B2 (en) 2013-05-22 2016-07-12 Exablox Corporation Modular electronics chassis
JP2016526717A (ja) 2013-06-12 2016-09-05 エグザブロックス・コーポレーション ハイブリッドガベージコレクション
WO2014205286A1 (en) 2013-06-19 2014-12-24 Exablox Corporation Data scrubbing in cluster-based storage systems
US9934242B2 (en) 2013-07-10 2018-04-03 Exablox Corporation Replication of data between mirrored data sites
US8991950B2 (en) 2013-07-10 2015-03-31 Exablox Corporation Modular electronics chassis
US20150066524A1 (en) 2013-09-05 2015-03-05 Dorsata, Inc. Methods and systems for the implementation of web based collaborative clinical pathways
JP2016539401A (ja) 2013-10-11 2016-12-15 エグザブロックス・コーポレーション 階層的データアーカイビング
US10248556B2 (en) 2013-10-16 2019-04-02 Exablox Corporation Forward-only paged data storage management where virtual cursor moves in only one direction from header of a session to data field of the session
US9985829B2 (en) 2013-12-12 2018-05-29 Exablox Corporation Management and provisioning of cloud connected devices
US9774582B2 (en) 2014-02-03 2017-09-26 Exablox Corporation Private cloud connected device cluster architecture
EP3103025B1 (en) 2014-02-04 2019-07-10 Exablox Corporation Content based organization of file systems

Also Published As

Publication number Publication date
EP3019960A2 (en) 2016-05-18
US20150019491A1 (en) 2015-01-15
EP3019960A4 (en) 2017-03-01
US9934242B2 (en) 2018-04-03
WO2015006371A2 (en) 2015-01-15
WO2015006371A3 (en) 2015-05-28

Similar Documents

Publication Publication Date Title
JP2016530608A (ja) ミラーリングされるデータサイト間のデータの複製
US11860898B2 (en) Non-disruptive baseline and resynchronization of a synchronous replication relationship
US11445019B2 (en) Methods, systems, and media for providing distributed database access during a network split
US20210191823A1 (en) Snapshot creation with synchronous replication
US10282262B2 (en) Non-disruptive controller replacement in a cross-cluster redundancy configuration
WO2016070375A1 (zh) 一种分布式存储复制系统和方法
JP5727020B2 (ja) クラウドコンピューティングシステム及びそのデータ同期化方法
US20240168673A1 (en) Methods and systems to interface between a multi-site distributed storage system and an external mediator to efficiently process events related to continuity
TWI307035B (en) Method and system for backing up remote mirror data on internet
US11709743B2 (en) Methods and systems for a non-disruptive automatic unplanned failover from a primary copy of data at a primary storage system to a mirror copy of the data at a cross-site secondary storage system
US11934670B2 (en) Performing various operations at the granularity of a consistency group within a cross-site storage solution
US10320905B2 (en) Highly available network filer super cluster
CN113010496B (zh) 一种数据迁移方法、装置、设备和存储介质
US11768624B2 (en) Resilient implementation of client file operations and replication
US20230385244A1 (en) Facilitating immediate performance of volume resynchronization with the use of passive cache entries
JP5292351B2 (ja) メッセージキュー管理システム及びロックサーバ及びメッセージキュー管理方法及びメッセージキュー管理プログラム
US20160100006A1 (en) Transferring Data Between Sites
TW201638799A (zh) 計算系統中之軟體影像的分佈式存儲
US10346299B1 (en) Reference tracking garbage collection for geographically distributed storage system
KR101748913B1 (ko) 분산 저장 환경에서 게이트웨이를 선택하기 위한 클러스터 관리 방법 및 데이터 저장 시스템
JP2017059105A (ja) 情報処理端末、共有ファイルシステム、共有ファイル方法および共有ファイルプログラム