JP7009488B2 - データセンタにわたってメタデータおよびデータの整合性を維持するための方法、デバイス、およびシステム - Google Patents
データセンタにわたってメタデータおよびデータの整合性を維持するための方法、デバイス、およびシステム Download PDFInfo
- Publication number
- JP7009488B2 JP7009488B2 JP2019545967A JP2019545967A JP7009488B2 JP 7009488 B2 JP7009488 B2 JP 7009488B2 JP 2019545967 A JP2019545967 A JP 2019545967A JP 2019545967 A JP2019545967 A JP 2019545967A JP 7009488 B2 JP7009488 B2 JP 7009488B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- data center
- cache
- file
- metadata
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 50
- 230000010076 replication Effects 0.000 claims description 114
- 238000013507 mapping Methods 0.000 claims description 52
- 238000003860 storage Methods 0.000 claims description 49
- 230000008859 change Effects 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 7
- 230000001360 synchronised effect Effects 0.000 claims description 6
- 230000009471 action Effects 0.000 description 13
- 230000008569 process Effects 0.000 description 12
- 230000006399 behavior Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000013500 data storage Methods 0.000 description 4
- 230000008439 repair process Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 241000473391 Archosargus rhomboidalis Species 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003362 replicative effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/178—Techniques for file synchronisation in file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
- G06F16/148—File search processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/184—Distributed file systems implemented as replicated file system
- G06F16/1844—Management specifically adapted to replicated file systems
-
- 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/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Library & Information Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Description
a)それぞれのノードがその名前空間レプリカを修正することが可能である、および
b)名前空間レプリカがノードにわたって互いに整合したままであるように、1つの名前空間レプリカに対する更新が他のノード上での名前空間レプリカに伝達されなければならないことを条件として、複数のNameNode(またはより一般的には、メタデータサーバ)上でレプリケートされてよい。
図1は、1つの実施形態による、WANに及ぶクラスタおよび分散ファイルシステムのコンポーネントのブロック図である。そこに示されるように、1つの実施形態による分散ファイルシステム102を起動する(例えば単一の)クラスタは、2つ以上のデータセンタ、すなわち、データセンタA(DCA)104およびデータセンタB(DCB)106を含んでよい。DCA104およびDCB106は互いに地理的に遠隔であってよい。例えば、DCA104およびDCB106は単一の国の種々の地域に位置してよく、種々の大陸、種々の時間帯において分散されてよく、完全に独立した配電網から引き込んでよい。DCA104およびDCB106は、例えば、インターネットならびに/または他のプライベートおよび/もしくは独自のネットワークを含んでよいWAN108を介して互いに緩く結合されてよい。DCA104およびDCB106はまた、他の専用の高速接続によって結合されてよい。2つのデータセンタ104、106のみが図1に示されているが、実施形態がより多数のデータセンタを含んでよく、かつ分散ファイルシステム102がこのようなデータセンタ全てにわたって拡張することは理解されたい。
ビッグデータレプリケーションプラットフォーム上でのその展開に関連して、1つの実施形態は、以下の3つの設計原理を具現化するように構成されてよい。
1.限定ではないが、クライアント、データレプリケーションサーバ、またはバージョンブリッジサーバを含む、以降に説明されるコンピューティングコンポーネントのいずれかにおいて記憶またはキャッシュされるデータはない。実際は、1つの実施形態は、合意済み提案のメタデータ動作をキャッシュすることによって実施されてよく、このような動作と関連付けられるデータはない。
2.リモートデータセンタクライアント(データが元々書き込まれていたDCO214のデータセンタクライアントとは対照的に、データがレプリケートされるRDC216のデータセンタクライアント)は、GSNの機構を使用して、基礎を成すストレージの時点で整合しているメタデータのビューをとらえることになる。すなわち、クラスタにわたる名前空間、およびレプリケートされたフォルダの状態は、データセンタにわたって同じGSNで同一となる。しかしながら、データは不完全である場合がある。換言すれば、リモートクライアントは、ファイルの存在を(このメタデータが同期的にキャッシュされているため)とらえることができるが、この基礎を成すデータはまだ完全に書き込まれていない場合がある。この挙動は、ビッグデータストレージシステムの単一データセンタインスタンスにおいて一括読み出し部による遅い書き込み部の挙動を再現している。
3.RDCクライアントは、そのファイルシステムの時点に属していないデータをとらえることはないし、さらに以下で進展するように、ファイルの異なる時点からデータの混合をとらえることもない。
正確さを証明する最も簡易なやり方は、後続のメタデータ動作における同じパスに変更がなされる場合にいずれのデータ取り出し(すなわち、データをDCOからRDCに取り出すこと)を中止させることである。ファイルは非整合とマーキングされ、非整合を補正するための修復が行われる。このチェックは、レプリケーションサービスの最小知識、すなわち、基礎を成すストアのファイルシステム意味論の知識で行われ得る。
まさに、直上に列挙された正確さ基準を満たすことが考えられる単純な実装は、多くの中止および修復動作をもたらすことになって、レプリケートされたフォルダを非整合にし、かつ分散システムの効率が低下する。それ故に、本明細書に説明される実施形態は、基礎を成すストレージシステムのファイルシステム意味論に基づく最適化を提供する。
1.実行合意キャッシュ309、311における実行合意をキャッシュするための、およびこの実行合意キャッシュ309、311を使用してMapFilename APIを実装するための、データレプリケーションサーバ206、208(図2)、308、310(図3)に対する拡張、
2.名前マッピングサービスMapFilenameにDCO214におけるソースファイル名を求めるためのバージョンブリッジサーバ312の展開、および
3.名前マッピングサービスにRDC216におけるターゲットファイル名を求めるためのデータレプリケーションサーバ310に対する拡張、および名前マッピングサービスにRDC216におけるソースファイル名を求めるためのバージョンブリッジサーバ314の対応する展開、を含むことができる。
レプリケートされるファイルは、1つの実施形態によると、一意の作成GSNによって特定されてよい。作成GSNは、ファイルの作成についての合意に対する割り当ておよび関連付けが同時に行われる一意のGSNである。ちなみに、これによって、実施形態が、HFlush特徴を有さない、S3などのストレージシステムと途切れなく相互操作可能であることが徹底される。
データレプリケーションサーバ308は、1つの実施形態によると、実行合意キャッシュ309において実行合意をキャッシュするように構成されてよく、データレプリケーションサーバ310は、1つの実施形態によると、実行合意キャッシュ311において実行合意をキャッシュするように構成されてよい。1つの実施形態によると、データレプリケーションサーバ308、310は、それぞれ、実行合意キャッシュ309、311におけるエントリにおいて名前マッピングサービスMapFilename APIを実装するように構成されてよい。合意は順不同で実行可能であるため、データレプリケーションサーバ308、310は、特定されたGSNより大きいGSN全てを通して反復しかつサーチする能力によって構成されてよい。
1.実行合意キャッシュEntry.Operation。これは、名前変更、削除、切り捨て、アペンド、または修復などのファイル動作の識別である。
2.以下の制約を有する、実行合意キャッシュEntry.Path1。
a.パスはディレクトリまたはファイルの(相対するパスとは対照的に)完全修飾パスとしなければならない。
b.ワイルドカードは許可されない(*、$など)
c.名前変更動作の場合、この実行合意キャッシュEntry.Path1はソースパスである。
3.以下の制約を有する実行合意キャッシュEntry.Path2。
a.ディレクトリまたはファイルの完全修飾宛先パス
b.ワイルドカードは許可されない。
c.名前変更の場合にのみ存在する。
4.実行合意キャッシュEntry.FileLength。これは、ファイルのファイル長である。ここで、
a.ファイル切り捨て動作の場合、これはファイルが切り捨てられた長さである。
b.アペンドについて、これはアペンドが開始される前のファイルの長さである。
実行合意キャッシュ309、311のガベージコレクションを行うことは、このシステムに対する動作上の考慮すべき事項の重要な側面である。これによって、分散ファイルシステムのノードのいずれかによって必要とされる可能性がもはやないメタデータの実行合意キャッシュが取り除かれる。これによって、実行合意キャッシュのサイズを合理的なサイズに保持することが可能になり、さらに、実行合意キャッシュを効率的に存続させ、かつこのような作用が必要とされる場合に再構築することが可能になる。従って、1つの実施形態は、実行合意キャッシュ(単数または複数)のガベージコレクションを行うように構成されてよい。このようなガベージコレクション機能性の1つの実装形態は、最小GSNを追跡するそれぞれのデータレプリケーションサーバを含んでよく、これに対して、データについてのいずれの要求(例えば、データ取り出し要求)もアクティブである。この情報はさらにまた、クォーラムにおいて全てのデータレプリケーションサーバに分散されてよく、このクォーラムは、特定のレプリケート済みフォルダまたは選択されたレプリケート済みフォルダのGSNを追跡するデータレプリケーションサーバ群を含んでよい。その後、クォーラムにおける任意のアクティブな取り出しの最低GSNを下回る実行合意キャッシュにおけるエントリはさらにまた、ガベージコレクションが行われてよく、それ自体はもはや必要とされない。1つの実施形態によると、実行合意キャッシュにおけるエントリ数に対する設定可能な限度は、例えば、10,000などが課される場合があり、それぞれのエントリはGSNと関連付けられる。実行合意キャッシュ309、311は、より少ないまたはより多い数の合意を記憶するように構成されてよい。ErrorExecutedAgreementCacheGarbageCollectedなどのエラーコードは、マップがガベージコレクションを行っているようにGSNに要求する場合、名前マッピングサービスMapFilename APIによって返されてよい。別の実施形態では、データレプリケーションサーバ308、310は、最低アクティブデータ取り出しGSNを追跡するように構成されてよく、この最低アクティブデータ取り出しGSNを、データセンタにわたって(さらには、レプリケート済みフォルダごとに)全てのデータレプリケーションサーバに分散してよいことで、ガベージコレクションを継続していくように実行することが可能になる。
上記のように、名前マッピングサービスMapFilename APIコールは、データレプリケーションサーバ308、310によって実施されてよい。このAPIの使用には以下が含まれてよい。
1.DCO214において、バージョンブリッジサーバ312は、ファイルを転送する要求を受信する時、この方法を呼び出すように構成されてよい。呼び出された名前マッピングサービスはさらにまた、作成GSNとして既知であったようにファイルの名前をマッピングすることになり、これは、ファイルの作成と関連付けられるGSNである。ファイルの読み出し中、この読み出しができない場合、バージョンブリッジサーバ312は、再び名前マッピングサービスに、ファイルのデータを読み出していた間にファイル名が変更されたかどうかを判断するように求めることになる。
2.RDC216において、データレプリケーションサーバは、書き込みを開始する前に、また、ローカルファイルへの取り出されたデータの書き込みができない時に、名前マッピングサービスにファイル名をマッピングするように求めることになる。
名前マッピングサービスの入力パラメータは、1つの実装形態によると、以下を含むことができる。
1.作成GSN
a.これはファイルまたはオブジェクトが作成されたGSNである。
2.Path-in
a.path-inは、リモートデータセンタがデータを要求しているファイルの完全修飾パスである。
b.Path-inはディレクトリとすることができない。
1.ReturnValue
a.ReturnValueは「FileExistsUnchanged」であってよく、これはファイルがその作成GSNから変更されていないことを意味する。
b.ReturnValueは「FileExistsChanged」であってよく、これは、ファイルが書き込まれてから(その作成GSNから)変更されていることを意味する。
c.ReturnValueは「FileDeleted」であってよく、これは、ファイルがもはや存在しないことを意味する。
d.「ErroExecuted agreement cacheGarbageCollected」のReturnValueは、ファイルが、その後ガベージコレクションが行われた作成GSNと関連付けられていることを指示している。
e.「AbortPullRepairComingUp」のReturnValueは、修復動作がスケジューリングされているため、このファイルに対するデータ取り出しが中止されるべきであることを指示している。
2.NewPath
戻り値が「FileExistsUnchanged」である場合、「NewPath」のReturnValueは、現時点で基礎を成すファイルシステムに存在し、かつファイルの作成GSNから変更されていないため、ファイルのパスである。この出力パラメータは、基礎を成すストレージの現時点のGSNまで作成GSNからPath-inへの変更を追跡する。ファイル名への変更、および任意の親ディレクトリコンポーネントへの変更は両方共、このように追跡されかつ報告される。
3.ファイルに対して有効であるデータの長さ
a.この出力パラメータは、ファイルの終わりにデータを削除してよい任意の可能な切り捨て動作を考慮している。
1つの実施形態によると、名前マッピングサービスが呼び出される時、後述される機能および動作の1つまたは複数は、実行されてよい。
データレプリケーションサーバ308は、本明細書に示されかつ説明されるように、固有GSNにおいて行われるファイルシステム動作の詳細をキャッシュするように構成される実行合意キャッシュ309を維持するように構成されてよい。この実行合意キャッシュ309は、1つの実施形態によると、バージョンブリッジサーバ312に名前マッピングサービスを提供して、基礎を成すファイルシステムの現時点の状態への(実行合意キャッシュにおける最高GSNまで)これまでの固有GSNにおけるファイル名のマッピングを要求するように構成されてよい。
取り出し要求の前のデータレプリケーションによって実行される名前変更/削除の合意
図4は、取り出し要求がRDCから受信される前にソースファイルまたは親パスが名前変更/削除される場合を示すブロック図である。示されるように、(1)は、RDC216におけるデータレプリケーションサーバ310によって出され、かつDCOにおけるバージョンブリッジサーバ312に向けられた取り出し要求を指示する。例えば、データレプリケーションサーバ310は、データが要求されたファイルのファイル名または親ディレクトリが、その最初の書き込みから変更している場合がある可能性に注意して、作成GSN21において、ファイルMapFilename /jagane/hive/foo.tmpの名前マッピングを要求することができる。(2)に示されるように、この取り出し要求を受信したバージョンブリッジサーバ312は、最大GSNがここで(この例において)50である、実行合意キャッシュ309における実行合意に対してデータレプリケーションサーバ308によって実行される、名前マッピングサービスを呼び出す。これに応答して、名前マッピングサービスは、GSN21~50を反復して、GSN21とGSN50との間の介在する時間における/jagane/hive/foo.tmpへの可能な変更についてサーチする。名前マッピングサービスは、この例では、/jagane/hive/foo.tmpが実際は、GSN21~GSN50のあるGSNにおいて、/Jagane/hive/fooに変更されたことを見出す。この情報はさらにまた、バージョンブリッジサーバ312に返され、その後、(/jagane/hive/foo.tmpを読み出す代わりに)分散ファイルシステム316から/Jagane/hive/fooを読み出し、リモートストレージ318へのこの非同期レプリケーションに対して、新しいファイル名およびここに記憶されたデータを、RDCにおけるデータレプリケーションサーバ310に返す。
図5は、リモート取り出し要求がバージョンブリッジサーバによってサービス提供されている間にソースファイルまたは親パスが名前変更される/削除される場合を示すブロック図である。バージョンブリッジサーバ312がリモート取り出し要求を満たすために基礎を成すストレージ316からファイルを読み出している間はいつでも、データレプリケーションサーバは、取り出し要求の対象であるファイル、または取り出し要求の対象であるファイルの親パスを名前変更/削除する別の合意を実行することができる。この場合、ファイル取り出しは、ファイルが名前変更されているもしくは削除されている、またはパスが変更されているのどちらかを理由に、進行中に失敗することになる。1つの実施形態によると、バージョンブリッジサーバ312は、ソースファイルの名前/パスをマッピングするために名前マッピングサービスを再び呼び出す。名前マッピングサービスからの戻り値は、ファイルが別の名前で存在するかどうか、またはファイルが削除されたかどうかを指示することになる。
取り出し要求が完了し、その後にのみ、ファイルまたは親パスが名前変更または削除される場合、DCO214およびRDC216両方における実行合意キャッシュがいずれの以前のまたは進行中の取り出し要求とも干渉せずに適当に更新されることになるため、何の措置も講じられない。全てのデータセンタは、これらが同期されているため、それらの対応する実行合意キャッシュを通して名前変更/削除を知ることになる。
データレプリケーションサーバは、1つの実施形態によると、データ取り出し、かつ取り出されたデータを非同期的にローカルファイルに書き込むように構成される。このプロセスは、データレプリケーションサーバが書き込んでいるローカルファイルが名前変更または削除される場合に失敗して中断される場合がある。これは、メタデータ動作、すなわち、合意が、データが取り出されかつ書き込まれている間に実行され続けるためである。1つの実装形態によると、この起こり得る事態に対処するために、データレプリケーションサーバの名前マッピングサービスを使用して、宛先ファイルを新しく名前変更されたファイルにマッピングする。リモートデータレプリケーションサーバ310がデータ取り出しをもたらす合意を実行する時、1つの実施形態によると、データレプリケーションコピーオブジェクトが作成され、このデータレプリケーションコピーオブジェクトはGSNと関連付けられる。このGSNは2つの目的で使用される。
1.GSNは、データを取り出している間に、リモートデータレプリケーションサーバからDCO214のバージョンブリッジサーバ312に渡される。
2.GSNは、ローカルファイルへの書き込みが失敗する時名前マッピングサービスに対するパラメータとして使用される。
事例1:宛先ファイルまたは親パスはデータコピースレッドが取り出されたデータの書き込みを開始できる前に名前変更および/または削除される。
事例2:宛先ファイルまたは親パスはデータコピースレッドが取り出されたデータを書き込んでいる間に名前変更および/または削除される。
事例3:宛先ファイルまたは親パスはデータコピースレッドが取り出されたデータの書き込みを終了した後に名前変更および/または削除される。これは、実行合意キャッシュにおけるメタデータが同期的に更新されかつリモートに伝達されることになるため、関係がない。
1.DCO214からデータを要求する時、RDC216のバージョンブリッジサーバは、データが取り出されるファイル名、およびファイルが呼び出されたGSN両方をもたらす。
2.RDC216のデータレプリケーションサーバがDCO214の分散ファイルシステムから取り出されたデータをRDC216の分散ファイルシステムに書き込む時、1つの実施形態によると、名前マッピングサービスは、ファイル名が変更されたか否かを判断するために、これらの2つのパラメータ、GSNおよびFilenameで呼び出される。すなわち、RDC216におけるクライアントアプリケーション306が、取り出されたデータが書き込まれる前、または取り出されたファイルデータが書き込まれている間にデータへの変更がなされることが可能である。ファイル名が、GSNと、基礎を成すファイルシステムの現時点の状態との間で変更されている場合、データレプリケーションサーバ310は、ファイルが、RDC216における実行合意キャッシュ311からのメタデータを使用して基礎を成すファイルシステムの現時点の状態において名前が付けられるように該ファイルに書き込まれることになる。
Claims (18)
- コンピュータネットワーク上で、少なくとも1つの第1のデータセンタおよび第2のデータセンタに及ぶ、分散ファイルシステムにおけるレプリケートフォルダの整合性を維持するコンピュータ実施方法であって、
前記第1のデータセンタにおいて、前記第1のデータセンタと通信するアプリケーションクライアントの代わりに、前記レプリケートフォルダ内にファイルを作成するための合意済み提案および当該合意済み提案と関連付けられた一意のグローバルシーケンス番号(GSN)を受信することと、
前記第1のデータセンタにおける第1のデータレプリケーションサーバに結合された第1の実行合意キャッシュおよび前記第2のデータセンタにおける第2のデータレプリケーションサーバに結合された第2の実行合意キャッシュにおいて、作成されるべき前記ファイルのメタデータ、および前記合意済み提案と一意に関連付けられた前記GSNを同期的に記憶することと、
作成されるべき前記ファイルの前記メタデータが前記第1の実行合意キャッシュおよび前記第2の実行合意キャッシュに記憶された後、前記アプリケーションクライアントの代わりに前記第1のデータセンタにおけるストレージにおいて前記ファイルを作成することと、および、
前記アプリケーションクライアントが、前記第1のデータセンタにおける前記ストレージにおいて作成済み前記ファイルにデータを書き込みできるようにすることと、を含む、コンピュータ実施方法。 - 前記第1の実行合意キャッシュにおいて前記ファイルのファイル名、パス、またはデータを変更するために前記第1のデータセンタにおいて受信された、任意の合意済み提案に対応する、更新されたメタデータおよび関連付けられた一意のGSNを記憶すること、および、前記第2の実行合意キャッシュにおいて前記更新されたメタデータおよび前記関連付けられた一意のGSNを同期的に記憶することをさらに含む、請求項1に記載のコンピュータ実施方法。
- 前記第2の実行合意キャッシュにおいて前記ファイルのファイル名、パス、またはデータを変更するために前記第2のデータセンタにおいて受信された、任意の合意済み提案に対応する、更新されたメタデータおよび関連付けられた一意のGSNを記憶すること、および、前記第1の実行合意キャッシュにおいて前記更新されたメタデータおよび関連付けられた一意のGSNを同期的に記憶することをさらに含む、請求項1又は2に記載のコンピュータ実施方法。
- 前記ファイルの前記データに対する前記第2のデータセンタからの要求を受信することであって、前記要求は、データが要求される前記ファイルの作成についての合意と関連付けられた少なくとも1つの作成GSNを含む、受信することと、
前記要求の受信に応答して、データが要求される前記ファイルの前記作成GSNより大きい一意のGSNと関連付けられる前記ファイルの更新されたメタデータに対する前記第1の実行合意キャッシュにおけるエントリをサーチすることと、
前記第1の実行合意キャッシュの前記エントリをサーチした後、サーチすることによって更新されたメタデータが見つからなかった場合、前記要求において受信された前記メタデータに対応するデータを前記第1のデータセンタにおける前記ストレージから読み出し、サーチすることによって更新されたメタデータが見つけられた場合、更新された前記メタデータに対応するデータを前記第1のデータセンタにおける前記ストレージから読み出すことと、および
読み出された前記データを、前記ファイルの前記データに対する前記第2のデータセンタからの受信された前記要求に応じて提供することと、をさらに含む、請求項1に記載のコンピュータ実施方法。 - 前記更新されたメタデータと関連付けられた前記一意のGSNより大きい一意のGSNと関連付けられる前記ファイルのメタデータに対する前記第2の実行合意キャッシュにおけるエントリをサーチすることと、
前記第2の実行合意キャッシュの前記エントリをサーチした後、前記第2の実行合意キャッシュをサーチすることによって更新されたメタデータが見つからなかった場合、提供された前記データを前記第2のデータセンタにおけるストレージに書き込むことと、および、
前記第2の実行合意キャッシュをサーチすることによって更新されたメタデータが見つかった場合、前記第2の実行合意キャッシュにおいて見つけられた前記メタデータに対応するデータを読み出し、かつ前記第2のデータセンタにおける前記ストレージに読み出された前記データを書き込むことと、をさらに含む、請求項4に記載のコンピュータ実施方法。 - サーチすることは、名前マッピングサービスアプリケーションプログラムインターフェース(API)を実行することによって実施される、請求項4又は5に記載のコンピュータ実施方法。
- 前記ファイルの前記データが前記第1のデータセンタにおける第1のバージョンブリッジサーバによって受信されるようにするための前記第2のデータセンタからの前記要求をさらに含み、前記第1のバージョンブリッジサーバは前記第1のデータレプリケーションサーバと別個でありかつ異なっている、請求項4乃至6のいずれか一項に記載のコンピュータ実施方法。
- 前記第1のデータセンタにおける不揮発性メモリにおいて前記第1の実行合意キャッシュの少なくとも一部分を周期的にジャーナリングして存続させることと、および
前記第2のデータセンタにおける不揮発性メモリにおいて前記第2の実行合意キャッシュの少なくとも一部分を周期的にジャーナリングして存続させることと、をさらに含む、請求項1に記載のコンピュータ実施方法。 - 第1のデータセンタにおける第1の実行合意キャッシュを提供し、かつ、第2のデータセンタにおける第2の実行合意キャッシュを提供することと、
前記第1のデータセンタおよび前記第2のデータセンタに記憶されたファイルの作成または変更を行うための提案についての合意を受信することと、
前記第1の実行合意キャッシュおよび前記第2の実行合意キャッシュにおいて受信した前記合意によって参照される前記ファイルのメタデータを記憶することと、
前記受信した合意によって参照される前記ファイルが作成または変更される前に互いに同期する前記第1の実行合意キャッシュおよび前記第2の実行合意キャッシュを維持することと、
前記第1および第2の実行合意キャッシュに記憶された前記受信した合意によって参照される前記ファイルの前記メタデータと前記第1および第2の実行合意キャッシュとが同期された後にのみ、前記受信した合意によって参照される前記ファイルの作成または変更を行うことと、および
前記第1のデータセンタまたは前記第2のデータセンタに記憶されたファイルのデータに対する要求が前記第1のデータセンタまたは前記第2のデータセンタにおいて受信されたとき、更新されたメタデータに対する前記第1の実行合意キャッシュおよび前記第2の実行合意キャッシュのうちの少なくとも1つをサーチし、更新されたメタデータが見つけられた時には、前記第1のデータセンタが前記第2のデータセンタから前記要求を受信した場合には前記第2のデータセンタに対して、また前記第2のデータセンタが前記第1のデータセンタから前記要求を受信した場合には前記第1のデータセンタに対して、前記更新されたメタデータに対応するデータを提供することと、を含む、コンピュータ実施方法。 - 一意のグローバルシーケンス番号(GSN)をそれぞれの合意と関連付け、かつそれぞれの合意の前記GSNを、前記第1の実行合意キャッシュおよび前記第2の実行合意キャッシュにおける前記メタデータと共に記憶することをさらに含み、
前記更新されたメタデータについてチェックすることは、前記更新されたメタデータと関連付けられた前記GSNを使用して前記ファイルの前記更新されたメタデータに対して前記第1の実行合意キャッシュおよび前記第2の実行合意キャッシュのうちの少なくとも1つにおけるエントリをサーチすることによって実行される、請求項9に記載のコンピュータ実施方法。 - チェックすることは、名前マッピングサービスに前記第1の実行合意キャッシュにおける前記エントリを求める第1のデータレプリケーションサーバによって前記第1のデータセンタにおいて行われ、チェックすることは、名前マッピングサービスに前記第2の実行合意キャッシュにおける前記エントリを求める第2のデータレプリケーションサーバによって前記第2のデータセンタにおいて行われる、請求項10に記載のコンピュータ実施方法。
- 前記第1のデータレプリケーションサーバが、前記名前マッピングサービスに、要求された前記データに対応する更新されたメタデータに対して前記第1の実行合意キャッシュをチェックすることを求めるようにするように構成される第1のバージョンブリッジサーバにおいて、前記第1のデータセンタにおける前記データに対する要求を受信することと、および
前記第2のデータレプリケーションサーバが、前記名前マッピングサービスに、前記要求されたデータに対応する更新されたメタデータに対して前記第2の実行合意キャッシュをチェックすることを求めるようにするように構成される第2のバージョンブリッジサーバにおいて前記第2のデータセンタにおける前記データに対する要求を受信することと、をさらに含む、請求項11に記載のコンピュータ実施方法。 - 前記第1のバージョンブリッジサーバが、前記更新されたメタデータが前記第1の実行合意キャッシュにおいて見つけられた時に前記更新されたメタデータに対応するデータを検索しかつ提供することによって前記データに対する要求をサービス提供することと、および
前記第2のバージョンブリッジサーバが、前記更新されたメタデータが前記第2の実行合意キャッシュにおいて見つけられた時に前記更新されたメタデータに対応するデータを検索しかつ提供することによって前記データに対する要求をサービス提供することと、をさらに含む、請求項12に記載のコンピュータ実施方法。 - 前記第2のデータセンタに記憶されるデータに対する前記第1のデータセンタにおける前記第1のデータレプリケーションサーバによって出される全ての要求は、前記第2のデータセンタにおける前記第2のバージョンブリッジサーバによって使用可能にされ、前記第1のデータセンタに記憶されるデータに対する前記第2のデータセンタにおける前記第2のデータレプリケーションサーバによって出される全ての要求は、前記第1のデータセンタにおける前記第1のバージョンブリッジサーバによって使用可能にされる、請求項12に記載のコンピュータ実施方法。
- コンピュータネットワークに結合される第1のデータセンタおよび第2のデータセンタに及ぶコンピュータ実施システムであって、
前記第1のデータセンタにおける、第1のストレージ、第1のデータレプリケーションサーバ、メタデータを記憶するように構成される第1のキャッシュおよび第1のバージョンブリッジサーバと、および、
前記第2のデータセンタにおける、第2のストレージ、第2のデータレプリケーションサーバ、メタデータを記憶するように構成される第2のキャッシュ、および第2のバージョンブリッジサーバと、を含み、
前記第1のキャッシュおよび前記第2のキャッシュは、前記第1のストレージおよび前記第2のストレージにデータが記憶される前に、前記第1のストレージおよび前記第2のストレージに記憶されるべき前記データの互いの整合性を維持するためのメタデータを記憶するように構成され、
前記第2のデータセンタから出される前記第1のストレージに記憶されるデータに対する要求は、前記第1のデータレプリケーションサーバに、要求される前記データの更新されたメタデータに対する前記第1のキャッシュをサーチさせるように構成される前記第1のバージョンブリッジサーバによって使用可能にされ、前記第1のバージョンブリッジサーバは、更新されたメタデータが前記第1のキャッシュにおいて見つけられた時に前記更新されたメタデータに対応するデータを前記第2のデータセンタに提供するようにさらに構成され、
前記第1のデータセンタから出される前記第2のストレージに記憶されるデータに対する要求は、前記第2のデータレプリケーションサーバに、更新されたメタデータに対する前記第2のキャッシュをサーチさせるように構成される前記第2のバージョンブリッジサーバによって使用可能にされ、前記第2のバージョンブリッジサーバは、更新されたメタデータが前記第2のキャッシュにおいて見つけられた時に前記更新されたメタデータに対応するデータを前記第1のデータセンタに提供するようにさらに構成される、コンピュータ実施システム。 - 前記第1のキャッシュおよび前記第2のキャッシュにおけるそれぞれのエントリは一意のグローバルシーケンス番号(GSN)を記憶するように構成され、前記第1のデータレプリケーションサーバおよび前記第2のデータレプリケーションサーバのそれぞれは、前記GSNを使用して要求された前記データの更新されたメタデータに対して前記第1のキャッシュおよび前記第2のキャッシュそれぞれをサーチするように構成される、請求項15に記載のコンピュータ実施システム。
- 前記第1のデータレプリケーションサーバおよび前記第2のデータレプリケーションサーバは、それぞれが前記第1のキャッシュおよび前記第2のキャッシュにおける前記エントリに対して名前マッピングサービスをそれぞれ実行することによって、前記第1のキャッシュおよび前記第2のキャッシュそれぞれをサーチするように構成される、請求項16に記載のコンピュータ実施システム。
- 前記第2のデータセンタに記憶されるデータに対する前記第1のデータセンタにおける前記第1のデータレプリケーションサーバによって出される全ての要求は、前記第2のデータセンタにおける前記第2のバージョンブリッジサーバによって使用可能にされ、前記第1のデータセンタに記憶されるデータに対する前記第2のデータセンタにおける前記第2のデータレプリケーションサーバによって出される全ての要求は、前記第1のデータセンタにおける前記第1のバージョンブリッジサーバによって使用可能にされる、請求項15乃至17のいずれか一項に記載のコンピュータ実施システム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/457,837 | 2017-03-13 | ||
US15/457,837 US11360942B2 (en) | 2017-03-13 | 2017-03-13 | Methods, devices and systems for maintaining consistency of metadata and data across data centers |
PCT/US2018/022062 WO2018169886A1 (en) | 2017-03-13 | 2018-03-12 | Methods, devices and systems for maintaining consistency of metadata and data across data centers |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020514885A JP2020514885A (ja) | 2020-05-21 |
JP7009488B2 true JP7009488B2 (ja) | 2022-01-25 |
Family
ID=63446449
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019545967A Active JP7009488B2 (ja) | 2017-03-13 | 2018-03-12 | データセンタにわたってメタデータおよびデータの整合性を維持するための方法、デバイス、およびシステム |
Country Status (8)
Country | Link |
---|---|
US (2) | US11360942B2 (ja) |
EP (1) | EP3596619B8 (ja) |
JP (1) | JP7009488B2 (ja) |
CN (1) | CN110447021B (ja) |
AU (1) | AU2018236167B2 (ja) |
CA (1) | CA3055301A1 (ja) |
ES (1) | ES2969620T3 (ja) |
WO (1) | WO2018169886A1 (ja) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10789217B2 (en) * | 2018-06-22 | 2020-09-29 | Microsoft Technology Licensing, Llc | Hierarchical namespace with strong consistency and horizontal scalability |
US11100086B2 (en) * | 2018-09-25 | 2021-08-24 | Wandisco, Inc. | Methods, devices and systems for real-time checking of data consistency in a distributed heterogenous storage system |
US10944850B2 (en) * | 2018-10-29 | 2021-03-09 | Wandisco, Inc. | Methods, devices and systems for non-disruptive upgrades to a distributed coordination engine in a distributed computing environment |
US11354324B1 (en) | 2018-10-31 | 2022-06-07 | Anaplan, Inc. | Method and system for servicing query requests using revisions maps |
US11580105B2 (en) | 2018-10-31 | 2023-02-14 | Anaplan, Inc. | Method and system for implementing subscription barriers in a distributed computation system |
US11573927B1 (en) | 2018-10-31 | 2023-02-07 | Anaplan, Inc. | Method and system for implementing hidden subscriptions in a distributed computation system |
US11481378B1 (en) * | 2018-10-31 | 2022-10-25 | Anaplan, Inc. | Method and system for servicing query requests using document-based metadata |
US11281683B1 (en) | 2018-10-31 | 2022-03-22 | Anaplan, Inc. | Distributed computation system for servicing queries using revisions maps |
US11475003B1 (en) * | 2018-10-31 | 2022-10-18 | Anaplan, Inc. | Method and system for servicing query requests using dataspaces |
CN109960687A (zh) * | 2019-03-28 | 2019-07-02 | 北京百分点信息科技有限公司 | 一种文件处理系统及方法 |
EP3901964A1 (en) * | 2020-04-22 | 2021-10-27 | Siemens Healthcare GmbH | Intelligent scan recommendation for magnetic resonance imaging |
CN111309719B (zh) * | 2020-05-13 | 2020-08-21 | 深圳市赢时胜信息技术股份有限公司 | 一种对应HBase数据库的数据规范方法及系统 |
CN112597249B (zh) * | 2020-12-26 | 2023-06-20 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种业务数据的同步分发存储方法及系统 |
WO2022213080A1 (en) * | 2021-03-30 | 2022-10-06 | Cira Apps Limited | Hub and spoke architecture for cloud-based synchronization |
CN113032338B (zh) * | 2021-05-31 | 2021-09-07 | 智者四海(北京)技术有限公司 | 一种跨数据中心的数据存储和查询方法与系统 |
CN113778764B (zh) * | 2021-08-24 | 2023-10-27 | 百融至信(北京)科技有限公司 | 一种hbase数据双活系统及方法 |
CN113722401B (zh) * | 2021-11-04 | 2022-02-01 | 树根互联股份有限公司 | 数据缓存方法、装置、计算机设备及可读存储介质 |
US11954073B2 (en) * | 2022-03-16 | 2024-04-09 | International Business Machines Corporation | Multi-protocol multi-site replication |
CN115657956B (zh) * | 2022-11-02 | 2023-08-22 | 中国科学院空间应用工程与技术中心 | 一种应对缓存数据丢失的元数据一致性写入方法和系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016530636A (ja) | 2013-08-29 | 2016-09-29 | ワンディスコ,インク. | コンセンサスノードを用いた分散ファイルシステム |
JP2017500670A (ja) | 2013-12-27 | 2017-01-05 | グーグル インコーポレイテッド | 分散ストレージシステムにおけるオブジェクトの階層チャンキング |
Family Cites Families (88)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5261085A (en) | 1989-06-23 | 1993-11-09 | Digital Equipment Corporation | Fault-tolerant system and method for implementing a distributed state machine |
CA2172517C (en) | 1993-09-24 | 2000-02-15 | Sandeep Jain | Method and apparatus for data replication |
US5699515A (en) | 1995-01-23 | 1997-12-16 | Hewlett-Packard Company | Backoff scheme for access collision on a local area network |
US5862346A (en) | 1996-06-28 | 1999-01-19 | Metadigm | Distributed group activity data network system and corresponding method |
US6006034A (en) | 1996-09-05 | 1999-12-21 | Open Software Associates, Ltd. | Systems and methods for automatic application version upgrading and maintenance |
US5781910A (en) | 1996-09-13 | 1998-07-14 | Stratus Computer, Inc. | Preforming concurrent transactions in a replicated database environment |
US6247059B1 (en) | 1997-09-30 | 2001-06-12 | Compaq Computer Company | Transaction state broadcast method using a two-stage multicast in a multiple processor cluster |
US6014669A (en) | 1997-10-01 | 2000-01-11 | Sun Microsystems, Inc. | Highly-available distributed cluster configuration database |
US6202067B1 (en) | 1998-04-07 | 2001-03-13 | Lucent Technologies, Inc. | Method and apparatus for correct and complete transactions in a fault tolerant distributed database system |
US6261085B1 (en) | 1998-06-22 | 2001-07-17 | Reena Corporation | Tandem injection molding apparatus and press therefor |
US6401120B1 (en) | 1999-03-26 | 2002-06-04 | Microsoft Corporation | Method and system for consistent cluster operational data in a server cluster using a quorum of replicas |
US6513084B1 (en) | 1999-06-29 | 2003-01-28 | Microsoft Corporation | Arbitration of state changes |
US7013465B1 (en) | 1999-08-17 | 2006-03-14 | Emc Corporation | System, device and method for interprocessor communication in a computer system |
US7069320B1 (en) | 1999-10-04 | 2006-06-27 | International Business Machines Corporation | Reconfiguring a network by utilizing a predetermined length quiescent state |
US20140164262A1 (en) | 2012-12-11 | 2014-06-12 | John D. Graham | System and method for management of intangible assets |
US8332740B2 (en) | 2000-01-19 | 2012-12-11 | Graham John D | Systems and method for management of intangible assets |
US6898642B2 (en) | 2000-04-17 | 2005-05-24 | International Business Machines Corporation | Synchronous collaboration based on peer-to-peer communication |
US7185076B1 (en) | 2000-05-31 | 2007-02-27 | International Business Machines Corporation | Method, system and program products for managing a clustered computing environment |
US7155524B1 (en) | 2000-12-04 | 2006-12-26 | Lucent Technologies Inc. | Backoff protocols and methods for distributed mutual exclusion and ordering |
US6931431B2 (en) | 2001-01-13 | 2005-08-16 | International Business Machines Corporation | Agreement and atomic broadcast in asynchronous networks |
US7254834B2 (en) | 2001-10-18 | 2007-08-07 | The Board Of Regents Of The University Of Nebraska | Fault tolerant firewall sandwiches |
US7024429B2 (en) | 2002-01-31 | 2006-04-04 | Nextpage,Inc. | Data replication based upon a non-destructive data model |
US7305585B2 (en) | 2002-05-23 | 2007-12-04 | Exludus Technologies Inc. | Asynchronous and autonomous data replication |
US7558883B1 (en) | 2002-06-28 | 2009-07-07 | Microsoft Corporation | Fast transaction commit |
JP4157554B2 (ja) | 2002-10-25 | 2008-10-01 | エス アンド シー エレクトリック カンパニー | 回路異常に応答して電力システムを制御する方法及び装置 |
US8315975B2 (en) | 2002-12-09 | 2012-11-20 | Hewlett-Packard Development Company, L.P. | Symbiotic wide-area file system and method |
US8311980B2 (en) | 2002-12-09 | 2012-11-13 | Hewlett-Packard Development Company, L.P. | Namespace consistency for a wide-area file system |
US7197632B2 (en) | 2003-04-29 | 2007-03-27 | International Business Machines Corporation | Storage system and cluster maintenance |
US20050086384A1 (en) | 2003-09-04 | 2005-04-21 | Johannes Ernst | System and method for replicating, integrating and synchronizing distributed information |
US20050198493A1 (en) | 2003-09-17 | 2005-09-08 | Bartas John A. | Distribution methods and apparatus for promoting distributed digital content on a local network |
US8161438B2 (en) | 2003-10-21 | 2012-04-17 | Mentor Graphics Corporation | Determining mutual inductance between intentional inductors |
EP1591858B1 (en) | 2004-04-26 | 2016-04-13 | Micron Technology, Inc. | Trimming functional parameters in integrated circuits |
US7334154B2 (en) | 2004-06-18 | 2008-02-19 | Microsoft Corporation | Efficient changing of replica sets in distributed fault-tolerant computing system |
US7467078B2 (en) | 2004-07-16 | 2008-12-16 | Agilent Technologies Inc. | Portable distributed application framework |
US9753754B2 (en) | 2004-12-22 | 2017-09-05 | Microsoft Technology Licensing, Llc | Enforcing deterministic execution of threads of guest operating systems running in a virtual machine hosted on a multiprocessor machine |
US20060143517A1 (en) | 2004-12-22 | 2006-06-29 | Microsoft Corporation | Replicated virtual machine |
US8364633B2 (en) | 2005-01-12 | 2013-01-29 | Wandisco, Inc. | Distributed computing systems and system components thereof |
US9424272B2 (en) * | 2005-01-12 | 2016-08-23 | Wandisco, Inc. | Distributed file system using consensus nodes |
US8103644B2 (en) | 2005-01-12 | 2012-01-24 | Microsoft Corporation | Data access layer class generator |
US7224938B2 (en) | 2005-03-11 | 2007-05-29 | Freescale Semiconductor Inc. | Method of communicating with a network device |
US7426653B2 (en) | 2005-04-13 | 2008-09-16 | Progress Software Corporation | Fault tolerant distributed lock management |
US7765186B1 (en) | 2005-04-13 | 2010-07-27 | Progress Software Corporation | Update-anywhere replication of distributed systems |
US7814322B2 (en) | 2005-05-03 | 2010-10-12 | Sri International | Discovery and authentication scheme for wireless mesh networks |
US7400596B1 (en) | 2005-08-17 | 2008-07-15 | Rockwell Collins, Inc. | Dynamic, multicast routing using a quality of service manager |
US20100070982A1 (en) * | 2005-09-09 | 2010-03-18 | Pitts William M | Distributed File System Consistency Mechanism Extension For Accelerating Communications Between Distributed Applications |
US20070204078A1 (en) | 2006-02-09 | 2007-08-30 | Intertrust Technologies Corporation | Digital rights management engine systems and methods |
US7598751B2 (en) | 2006-08-14 | 2009-10-06 | Clemson University Research Foundation | Impedance-based arc fault determination device (IADD) and method |
JP4606404B2 (ja) | 2006-12-01 | 2011-01-05 | 富士通株式会社 | 計算資源管理プログラムおよび計算資源管理装置 |
US9390396B2 (en) | 2006-12-04 | 2016-07-12 | Excalibur Ip, Llc | Bootstrapping social networks using augmented peer to peer distributions of social networking services |
US7788522B1 (en) | 2007-05-31 | 2010-08-31 | Oracle America, Inc. | Autonomous cluster organization, collision detection, and resolutions |
US8180747B2 (en) | 2007-11-12 | 2012-05-15 | F5 Networks, Inc. | Load sharing cluster file systems |
US7849223B2 (en) | 2007-12-07 | 2010-12-07 | Microsoft Corporation | Virtually synchronous Paxos |
US8214788B2 (en) | 2008-03-08 | 2012-07-03 | Mentor Graphics Corporation | High-frequency VLSI interconnect and intentional inductor impedance extraction in the presence of a multi-layer conductive substrate |
US20100018014A1 (en) | 2008-07-23 | 2010-01-28 | Brian Boisclair | Messenger clamp |
KR100966566B1 (ko) | 2009-01-29 | 2010-06-29 | 엘지전자 주식회사 | 효율적인 공용 e-dch 관리를 위한 신호 전송 기법 |
US8336080B2 (en) | 2009-06-26 | 2012-12-18 | Symbol Technologies, Inc. | Methods and apparatus for rating device security and automatically assessing security compliance |
WO2011023134A1 (en) | 2009-08-28 | 2011-03-03 | Beijing Innovation Works Technology Company Limited | Method and system for managing distributed storage system through virtual file system |
US9141449B2 (en) | 2009-10-30 | 2015-09-22 | Symantec Corporation | Managing remote procedure calls when a server is unavailable |
US8868508B2 (en) | 2010-02-09 | 2014-10-21 | Google Inc. | Storage of data in a distributed storage system |
US8996611B2 (en) | 2011-01-31 | 2015-03-31 | Microsoft Technology Licensing, Llc | Parallel serialization of request processing |
US8135987B2 (en) | 2010-06-03 | 2012-03-13 | Microsoft Corporation | Collection ordering for replicated state machines |
US20110314163A1 (en) | 2010-06-16 | 2011-12-22 | Mmb Research Inc. | Wireless communication network for smart appliances |
US9323775B2 (en) | 2010-06-19 | 2016-04-26 | Mapr Technologies, Inc. | Map-reduce ready distributed file system |
US8666939B2 (en) * | 2010-06-28 | 2014-03-04 | Sandisk Enterprise Ip Llc | Approaches for the replication of write sets |
EP2421225A1 (en) | 2010-08-20 | 2012-02-22 | Alcatel Lucent | Processing method, proxy processing agent, system and method for filling a routing table of a DHT client node, router and dht client node |
US8549142B2 (en) | 2011-03-28 | 2013-10-01 | Siemens Corporation | Replicated state machine utilizing view change protocol resilient to performance attacks |
US9652469B2 (en) | 2011-06-04 | 2017-05-16 | Microsoft Technology Licensing, Llc | Clustered file service |
US9020987B1 (en) | 2011-06-29 | 2015-04-28 | Emc Corporation | Managing updating of metadata of file systems |
US8818951B1 (en) | 2011-12-29 | 2014-08-26 | Emc Corporation | Distributed file system having separate data and metadata and providing a consistent snapshot thereof |
US9158843B1 (en) | 2012-03-30 | 2015-10-13 | Emc Corporation | Addressing mechanism for data at world wide scale |
US9904689B2 (en) | 2012-07-13 | 2018-02-27 | Facebook, Inc. | Processing a file system operation in a distributed file system |
US9369520B2 (en) * | 2012-08-19 | 2016-06-14 | Box, Inc. | Enhancement of upload and/or download performance based on client and/or server feedback information |
US9582221B2 (en) | 2012-08-24 | 2017-02-28 | Vmware, Inc. | Virtualization-aware data locality in distributed data processing |
US8943178B2 (en) | 2012-08-29 | 2015-01-27 | International Business Machines Corporation | Continuous operation during reconfiguration periods |
US8769105B2 (en) | 2012-09-14 | 2014-07-01 | Peaxy, Inc. | Software-defined network attachable storage system and method |
US20140344453A1 (en) * | 2012-12-13 | 2014-11-20 | Level 3 Communications, Llc | Automated learning of peering policies for popularity driven replication in content delivery framework |
CN102999633A (zh) | 2012-12-18 | 2013-03-27 | 北京师范大学珠海分校 | 网络信息的云聚类提取方法 |
US8977594B2 (en) * | 2012-12-21 | 2015-03-10 | Zetta Inc. | Systems and methods for state consistent replication |
US9444899B2 (en) | 2012-12-26 | 2016-09-13 | Microsoft Technology Licensing, Llc | Use of internet information services logging to collect user information in an asynchronous manner |
US9130943B1 (en) | 2013-03-11 | 2015-09-08 | Ca, Inc. | Managing communications between client applications and application resources of on-premises and cloud computing nodes |
US20140344323A1 (en) | 2013-03-15 | 2014-11-20 | Reactor8 Inc. | State-based configuration management for distributed systems |
US9009215B2 (en) | 2013-03-15 | 2015-04-14 | Wandisco, Inc. | Methods, devices and systems for dynamically managing memberships in replicated state machines within a distributed computing environment |
CN103150394B (zh) * | 2013-03-25 | 2014-07-23 | 中国人民解放军国防科学技术大学 | 面向高性能计算的分布式文件系统元数据管理方法 |
CN103458044B (zh) | 2013-09-12 | 2017-01-04 | 北京航空航天大学 | 一种面向广域网环境下多存储集群的元数据共享管理方法 |
ES2881606T3 (es) | 2014-03-31 | 2021-11-30 | Wandisco Inc | Sistema de ficheros geográficamente distribuido que usa replicación de espacio de nombres coordinada |
US10585627B2 (en) * | 2016-03-24 | 2020-03-10 | Microsoft Technology Licensing, Llc | Distributed metadata management in a distributed storage system |
US10503427B2 (en) * | 2017-03-10 | 2019-12-10 | Pure Storage, Inc. | Synchronously replicating datasets and other managed objects to cloud-based storage systems |
US11216315B2 (en) * | 2018-02-21 | 2022-01-04 | Rubrik, Inc. | Distributed semaphore with a different keys to reduce contention for dynamic reservation of disk space |
-
2017
- 2017-03-13 US US15/457,837 patent/US11360942B2/en active Active
-
2018
- 2018-03-12 WO PCT/US2018/022062 patent/WO2018169886A1/en unknown
- 2018-03-12 CA CA3055301A patent/CA3055301A1/en active Pending
- 2018-03-12 JP JP2019545967A patent/JP7009488B2/ja active Active
- 2018-03-12 ES ES18767539T patent/ES2969620T3/es active Active
- 2018-03-12 CN CN201880016079.3A patent/CN110447021B/zh active Active
- 2018-03-12 AU AU2018236167A patent/AU2018236167B2/en active Active
- 2018-03-12 EP EP18767539.2A patent/EP3596619B8/en active Active
-
2022
- 2022-04-28 US US17/732,300 patent/US11704290B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016530636A (ja) | 2013-08-29 | 2016-09-29 | ワンディスコ,インク. | コンセンサスノードを用いた分散ファイルシステム |
JP2017500670A (ja) | 2013-12-27 | 2017-01-05 | グーグル インコーポレイテッド | 分散ストレージシステムにおけるオブジェクトの階層チャンキング |
Also Published As
Publication number | Publication date |
---|---|
WO2018169886A1 (en) | 2018-09-20 |
AU2018236167B2 (en) | 2022-03-03 |
US20230012697A1 (en) | 2023-01-19 |
JP2020514885A (ja) | 2020-05-21 |
CA3055301A1 (en) | 2018-09-20 |
AU2018236167A1 (en) | 2019-08-15 |
CN110447021B (zh) | 2024-03-01 |
CN110447021A (zh) | 2019-11-12 |
EP3596619B1 (en) | 2023-11-22 |
EP3596619A4 (en) | 2020-09-16 |
ES2969620T3 (es) | 2024-05-21 |
EP3596619A1 (en) | 2020-01-22 |
EP3596619B8 (en) | 2023-12-27 |
US11704290B2 (en) | 2023-07-18 |
US20180260409A1 (en) | 2018-09-13 |
US11360942B2 (en) | 2022-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7009488B2 (ja) | データセンタにわたってメタデータおよびデータの整合性を維持するための方法、デバイス、およびシステム | |
US11657024B2 (en) | Map-reduce ready distributed file system | |
US10860547B2 (en) | Data mobility, accessibility, and consistency in a data storage system | |
US11537482B2 (en) | Method and apparatus for reading and writing committed data | |
JP2021002369A (ja) | 索引更新パイプライン | |
WO2019231689A1 (en) | Multi-protocol cloud storage for big data and analytics | |
EP3803619A1 (en) | Cloud storage distributed file system | |
WO2019231690A1 (en) | Distributed transactions in cloud storage with hierarchical namespace | |
Stamatakis et al. | A general-purpose architecture for replicated metadata services in distributed file systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210121 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210820 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210907 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20211206 |
|
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: 20211221 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220112 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7009488 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |