JP2014530393A - 不揮発性媒体のダーティー領域追跡 - Google Patents
不揮発性媒体のダーティー領域追跡 Download PDFInfo
- Publication number
- JP2014530393A JP2014530393A JP2014529676A JP2014529676A JP2014530393A JP 2014530393 A JP2014530393 A JP 2014530393A JP 2014529676 A JP2014529676 A JP 2014529676A JP 2014529676 A JP2014529676 A JP 2014529676A JP 2014530393 A JP2014530393 A JP 2014530393A
- Authority
- JP
- Japan
- Prior art keywords
- region
- storage
- descriptor
- storage device
- dirty
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000003860 storage Methods 0.000 claims abstract description 539
- 238000000034 method Methods 0.000 claims abstract description 173
- 238000004140 cleaning Methods 0.000 claims abstract description 77
- 238000012795 verification Methods 0.000 claims description 3
- 230000000977 initiatory effect Effects 0.000 claims description 2
- 230000008569 process Effects 0.000 abstract description 42
- 238000011084 recovery Methods 0.000 abstract description 33
- 230000008901 benefit Effects 0.000 description 16
- 238000005192 partition Methods 0.000 description 11
- 239000004065 semiconductor Substances 0.000 description 9
- 230000003287 optical effect Effects 0.000 description 8
- 230000002829 reductive effect Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 238000012937 correction Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000003111 delayed effect Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000001010 compromised effect Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000008439 repair process Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- JJWKPURADFRFRB-UHFFFAOYSA-N carbonyl sulfide Chemical compound O=C=S JJWKPURADFRFRB-UHFFFAOYSA-N 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 230000002035 prolonged effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000135 prohibitive effect Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000002195 synergetic effect Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2064—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring while ensuring consistency
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/10—Indexing scheme relating to G06F11/10
- G06F2211/1002—Indexing scheme relating to G06F11/1076
- G06F2211/1009—Cache, i.e. caches used in RAID system with parity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/10—Indexing scheme relating to G06F11/10
- G06F2211/1002—Indexing scheme relating to G06F11/1076
- G06F2211/1035—Keeping track, i.e. keeping track of data and parity changes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/10—Indexing scheme relating to G06F11/10
- G06F2211/1002—Indexing scheme relating to G06F11/1076
- G06F2211/104—Metadata, i.e. metadata associated with RAID systems with parity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/10—Indexing scheme relating to G06F11/10
- G06F2211/1002—Indexing scheme relating to G06F11/1076
- G06F2211/1061—Parity-single bit-RAID4, i.e. RAID 4 implementations
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Retry When Errors Occur (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Hardware Redundancy (AREA)
Abstract
Description
コンピューティングの分野において、多くのシナリオは、一つまたは複数の不揮発性記憶装置(たとえば円盤ベースの磁気および/または光ハードディスクドライブ、半導体記憶デバイスおよび不揮発性メモリ回路)上に記憶セットをなすデータを保存することに関わる。語サイズ、アドレッシング方法、記憶装置の記憶スペースの一つまたは複数のパーティションへの分割および記憶装置内の割り当てられたスペースをコンピューティング環境内の一つまたは複数のボリュームとして露出させることなど、データ記憶の多くの詳細は変わりうる。さらに、記憶装置は、記憶セットを提供するために、独立して、またはゆるやかな協働をもって動作しうる。たとえば、RAID 0方式に従って構成されたアレイでは、記憶セットは単に、それぞれが他のディスクとは独立して動作しうる各記憶装置によって提供される容量から総合されてもよい。あるいはまた、記憶装置はさまざまな度合いの緊密な協調を通じてさまざまな機能を提供するよう構成されてもよい。たとえば、RAID 1方式に従って構成されたアレイでは、一組の記憶装置はそれぞれ記憶セット全体の同一のコピーを記憶してもよい。たとえば、一テラバイトの記憶セットが四つの一テラバイト記憶装置上で四つの同一のコピーとして記憶されてもよい。それら四つの記憶装置は、同期を維持するため、記憶セットを変更するいかなる要求も四つすべての記憶装置に等しく適用されることを保証するよう協働してもよい。この種の「ミラーされた」アーカイブは改善されたアクセス・レートを呈しうる。たとえば、異なるプロセスが異なる記憶装置を通じてその記憶セットにアクセスしうるので、潜在的には、その記憶セットへのアクセス・レートを、どの単独の装置によって達成可能でありうるよりも四倍にしうる。さらに、この型のアレイは堅牢な耐久性を実証する。一つまたは複数のハードディスクドライブが(たとえばデータ破損、損傷または喪失のため)障害を起こす場合、記憶セットはそれでも他のハードディスクドライブを通じてアクセス可能であり、少なくとも一つの他のハードディスクドライブが有効かつアクセス可能に留まっている限り、無傷のままである。しかしながら、これらの特徴の利点は、RAID 1アレイでは、かなりの容量の損失によって相殺される(たとえば、四テラバイトのハードディスクドライブ・スペースを一テラバイトのデータを記憶するために使う)。他の記憶方式は、それよりは低い容量低減でこうしたセキュリティおよびパフォーマンス特徴のいくつかを提供しうる(たとえば、RAID 4方式では、スペースsのn個のドライブのセットが一つを除いた全ハードディスクドライブの記憶容量をフルに現わし、その一つはパリティ情報を記憶するためにリザーブされ、アレイ内のどの一つのハードディスクドライブの障害からも回復できる)。
本稿に提示されるのは、故障耐性があり、高性能で、コスト効率のよい仕方で高速なクリーニング・プロセスを可能にしうる、一組の記憶装置106によって提供される記憶セット102への書き込み202の状態を追跡するための技法である。これらの技法によれば、記憶セット102は、特定の領域サイズの諸領域(たとえば一ギガバイトの領域)に配分されてもよく、各領域内の一つまたは複数の位置108への書き込み110のペンディング状態を記録するために、領域記述子が生成されてもよい。領域記述子は、領域が位置しているのと同じ記憶装置106上に、または記憶セット102の異なる記憶装置106上に記憶されていてもよい。特定の位置108への書き込み110の要求が受領されると、本技法のある実施形態は、まず、位置108を含んでいる領域を同定してもよく、次いで、位置108を含んでいる領域の領域指示子がすでにダーティーとマークされているかどうかを判別してもよい。すでにダーティーとマークされていなければ、本実施形態は、まず、その領域をダーティーとマークするようその領域指示子を更新してもよい。だが、すでにダーティーとマークされていたら、本実施形態は、領域指示子を更新する必要なく書き込み110を進めてもよい。書き込み110が完了したのち、本実施形態は、その領域の領域指示子をクリーンとしてマークしてもよい。特に、本実施形態は、すぐにその領域をクリーンとして更新しないよう構成されていてもよく、そうする前に短期間待ってもよい。同じ領域に対する書き込み110(同じ位置108の上書きまたはシーケンシャルに後続するデータセット104もしくは他の仕方で近くのデータセット104への書き込み110のいずれであれ)のその後の要求が最初の書き込み110のすぐあとに続く場合に備えてである。この遅延は、領域指示子の「クリーン」への書き換えのすぐあとに領域指示子を「ダーティー」に書き換えることを避けることができ、よって記憶装置106へのアクセスを節約し、記憶装置106のパフォーマンスおよび寿命を向上させることができる。
図5は、記憶セット104へのペンディングの書き込みを記録する例示的な方法500として描かれている、これらの技法の第一の例示的な実施形態の図解を示している。例示的な方法500は、たとえば装置のメモリ・コンポーネント(たとえば、メモリ回路、ハードディスクドライブの円盤、半導体メモリ・コンポーネントまたは磁気もしくは光ディスク)に記憶された命令のセットであって、装置のプロセッサによって実行されたときに該装置に本稿に提示される技法を実行させるものとして実装されてもよい。例示的な方法500は、502において開始され、プロセッサ上で命令を実行する(504)ことに関わる。具体的には、前記命令は、少なくとも一つの記憶装置106上で、該記憶装置106上に記憶される記憶セット102を、ある領域サイズに従って少なくとも二つの領域402に配分して領域記述子404を生成する(506)よう構成されている。前記命令はまた、記憶セット102中の位置108に記憶されるべきデータセット104を受領(508)したら、データセット102の位置108を含んでいる記憶セット102内の領域402を同定し(510);領域記述子404においてその領域402をダーティーとしてマークし(512);記憶セット102中の位置108におけるデータセット104の記憶を開始する(514)ようにも構成される。前記命令はまた、記憶セット102中の位置108にデータセット104を記憶した後、領域記述子404において領域402をクリーンとしてマークする(516)ようにも構成される。このようにして、前記命令は、本稿に提示される技法に基づく、記憶セット102内でペンディングの書き込み110の記録を達成し、よって例示的な方法500は518において終了する。
本稿で論じられる技法は、多くの側面における変形をもって考案されてもよい。いくつかの変形は、追加的な利点を提示し、および/またはこれらおよび他の技法の他の変形に関する不都合な点を軽減しうる。さらに、いくつかの変形は、組み合わせて実装されてもよく、いくつかの組み合わせは、相乗作用を通じて追加的な利点および/または軽減された不都合な点を特徴としうる。そうした変形は、さまざまな実施形態(たとえば図5の例示的な方法500および図6の例示的な方法600)に組み込まれてそのような実施形態に対して個別的および/または相乗的な利点を付与しうる。
これらの技法の実施形態の間で変わりうる第一の側面は、そうした技法が利用されうるシナリオに関する。この第一の側面の第一の変形として、これらの技法は、さまざまな型のデータセット104を有する多くの型の記憶セット102との関連で使用されうる。それには、さまざまな型のバイナリー・オブジェクトを記憶するバイナリー記憶システム;ファイルを記憶するファイル・システム;メディア・オブジェクトを記憶するメディア・ライブラリ;多くの型のオブジェクトを記憶するオブジェクト・システム;レコードを記憶するデータベース;電子メール・メッセージを記憶する電子メール・システムが含まれる。この第一の側面の第二の変形として、これらの技法は、ハードディスクドライブ、半導体記憶デバイス、不揮発性メモリ回路、テープ・ベースの記憶デバイスおよび磁気および光ディスクを含む多くの型の記憶デバイス106とともに使用されうる。そのような記憶装置106は、本技法を実装する(コンピュータのような)装置710に直接接続されてもよいし;有線または無線のローカル・エリア・ネットワーク(たとえば802.11 WiFiネットワークまたはアドホック接続または赤外線接続)を通じてアクセス可能であってもよいし;および/または有線または無線の広域ネットワーク(たとえば、セルラー・ネットワークまたはインターネット)を通じてアクセス可能であってもよい。さらに、これらの技法は二つ以上の記憶装置106とともに使われてもよいく、それら二つ以上の記憶装置106は、独立して動作する(たとえば、ソフトウェア・プロセスを通じて独立してアクセスされる記憶装置106);ゆるやかに協働しつつ動作する(たとえば、独立して動作するが、記憶セット102を共有する他の記憶装置106について知らされており、これと通信してもよい記憶装置106);または緊密な協働をもって動作する(たとえば、安価なディスクの冗長アレイ(RAID)コントローラがいくつかの記憶装置106を記憶システムのコンポーネントとして管理する)。この側面の第四の変形として、これらの技法の一部または全部が、コンピューティング環境内の一つまたは複数のコンポーネント内で、記憶装置106へのアクセスをもつコンピュータまたは装置の揮発性または不揮発性に記憶されているソフトウェア命令のセット(たとえば、オペレーティング・システム・プロセスまたはハードウェア・ドライバ)のように;記憶装置106とインターフェースをもつよう構成された記憶システム(たとえばRAIDコントローラ)によって;あるいは記憶セット102のそれぞれの記憶装置106において、実装されてもよい。
これらの技法の実施形態の間で変わりうる第二の側面は、領域記述子404の性質に関する。この第二の側面の第一の変形として、記憶セット102は、多くの仕方で、領域記述子404内で同定される諸領域402に配分されてもよい。この第一の変形の第一の例として、領域サイズの選択が、本技法のさまざまな側面に影響しうる。たとえば、記憶セット102中の全位置108のダーティーまたはクリーンな状態を追跡することは、記憶セット102の容量のかなりの――おそらくは50%もの――損失につながることがあり、実際、クリーニング・プロセスの継続時間を有意に改善しないことがありうることが理解されうる。各ビットについてダーティーおよびクリーン・ビットを読むために記憶セット102全体をスキャンすることは、非一貫性122を検出するために記憶セット102全体をスキャンするのと同じくらいかかることがありうるからである。各ボリューム、各パーティションまたは各記憶装置106について単一の「クリーン」または「ダーティー」のマーク付け406を記憶するなど、記憶セット102の非常に大きな部分についてクリーンまたはダーティー状態を追跡することは、復旧がきわめて引き延ばされるという性質を、受け容れられるくらいには軽減しえないことも理解されうる。大きなボリュームまたは記憶装置106における単一位置206への書き込みがボリュームまたは記憶装置106全体のクリーニング416につながることがあるからである。これらの考察に鑑み、領域サイズの選択が本稿で提示される技法のパフォーマンスにかなり影響しうることが理解されうる。しかしながら、領域サイズについて、それぞれ何らかのトレードオフを呈しうる、受け容れ可能な選択肢の範囲が存在しうる。たとえば、より大きな領域サイズを選択することは、より粗い粒度レベルで「ダーティー」および「クリーン」領域の追跡を可能にでき、これはペンディングの書き込み110の追跡の使用のための記憶セット102の容量の消費を軽減するとともに、領域記述子404が領域402をクリーンまたはダーティーとしてマークするために更新される頻度も低下させるが、障害118後のより長いクリーニング416を必要とすることがありうる。ある領域402がダーティーとしてマーク付け406されている場合により大きな領域402のクリーニング416につながるからである。逆に、より小さな領域サイズを選択することは、より細かい粒度でのペンディングの書き込み110の追跡となって、障害118後、クリーニングされるべきデータセット104の、より限定された、精密な指定のため、比較的迅速なクリーニング416を可能にしうるが、記憶セット102の容量のより大きな消費(領域記述子404がより多くの領域402についての情報を含むため)および/または記憶セット102のルーチン動作におけるより大きなパフォーマンス・ペナルティ(さまざまな位置108への書き込み110のセットが、それぞれ記憶セットのより小さな諸部分をカバーするより多くの領域402と関連付けられる可能性が高いため)につながりうる。
この第五の変形の第二の例として、領域402の特定のセットについての領域記述子404の複数のコピーが一つまたは複数の記憶装置106に記憶されてもよいが、常に同一であるのではなく、それらの領域記述子404は、種々の時点における記憶セット102のクリーンおよびダーティー状態を反映させるよう逐次更新されてもよい。この逐次的な更新は、たとえば領域記述子404のコピーを更新している間に障害118が発生して領域記述子404が非一貫的なまたは破損した状態となる場合に、有利でありうる。クリーニング416および回復において他方のコピーが利用可能でありうるからである。この第二の例についての第一のシナリオとして、いずれも領域402の同じセットを表わす、領域記述子404の二つのコピーが記憶装置104上で保持されてもよい。だが、それらの領域記述子404を更新するために、第一の更新は、領域記述子404の一方のコピーを上書きすることによって行なわれてもよく、次の更新は領域記述子404の他方のコピーを上書きすることによって行なわれてもよい。さらに、本技法のある技法が領域記述子404に上書きするとき、該実施形態は、領域記述子404のための検証子202(たとえばチェックサム)およびシーケンス・インジケーター(たとえばインクリメントする整数または上書きの時刻)をも書き込んでもよい。障害118に続いて、本実施形態は、利用可能な領域記述子404のすべてを検査してもよく、その検証子202に基づいて有効であるもののうち最高のシーケンス・インジケーター(たとえば、最高のインクリメントする整数または最新の書き込み時刻)を有する領域記述子404を、クリーニングにおいて使うために選択してもよい。領域セットのわずかに古くなったバージョンを使ってクリーニング416を実行することが、非一貫性118をもつ領域402をクリーニングし損なうこと(たとえば、擬陰性)につながらないことがあることは理解されうる。領域402への書き込み110は、該領域402のマーク付け406が、最高のシーケンス・インジケーターおよび有効な検証子202をもつ完全に書き込まれた領域記述子404の形で記憶セット102にフルにコミットされたあとにのみ始まるからである。そのため、領域記述子406を書き込んでいる間の障害118はペンディングの書き込み110を記録し損なうことにつながらいのである。逆に、古くなった領域記述子402は擬陽性につながりうる。(たとえば、ある領域記述子404の書き込みの際の障害118は、以前にダーティーだった領域404をクリーンとするマーク付け404が失われることにつながることがあり、領域404は、古くなった領域記述子404に見出されるマーク付け406のために回復の際に誤ってダーティーとして扱われることがありうる。)だが、この不正確さは単に、クリーンであるとわかっていた領域404のクリーニング416に関わるわずかに引き延ばされた回復につながるのみである。
これらの技法の実施形態の間で変わりうる第三の側面は、記憶セット102の領域402をクリーンまたはダーティーとしてマークするための領域記述子404の使用に関する。この第三の側面の第一の変形として、領域記述子404の使用は、該領域記述子404の容量の管理を容易にするよう設計されてもよい。いくつかの型の領域記述子404では、図8の例示的なシナリオ800における領域ビットマップ814のように、領域402がマークされるときに容量は変わらなくてもよい。しかしながら、他のシナリオでは、図8の例示的なシナリオ800において描かれた領域テーブルにおけるように、領域402のマーク付け406が領域記述子404の容量に影響してもよい。たとえば、領域記述子404がそれぞれの領域402についてのレコードを記憶しており、領域記述子404がある領域402を「クリーン」としてマークするのを、単に当該レコードを放逐することによって行なってもよい。あるいはまた、領域記述子404は「クリーン」とマーク付けされた領域402についてのレコードを記憶し続けてもよく、後刻(たとえば、その領域402への別の書き込み110が行なわれることなく指定された時間期間が過ぎたのちに、あるいは領域記述子404の容量が尽きたときに)、「クリーン」領域402についてのレコードを放逐してもよい。この第三の側面の第二の例として、領域記述子404の容量は静的に(たとえば、固定サイズの領域記述子404)または動的に(たとえば初期にはある領域記述子スペースを割り当てられているが、領域記述子404が、合わせると領域記述子404の容量を使い果たす諸領域402についてのレコードで満たされる際に拡張されうるサイズ変更可能な領域記述子404)割り当てられてもよい。
図10は、決定論的な仕方で領域記述子404を更新する本技法のある実施形態によって利用されうる、例示的な状態図1000の図解を示している。最初、本技法のある実施形態は、クリーン状態1002にあってもよい。ここで、クリーンな領域402が領域記述子404においてクリーンとしてマークされている。そこであるとき、その領域402内のある位置108におけるデータセット102への書き込み110を実行するよう要求が受領され、本技法のある実施形態は、領域402をダーティーとマーク406しつつ(たとえば、記憶装置106上に記憶されている領域記述子404への書き込みを行ないながら)、マーク付け状態1004に遷移してもよい。マーク付け406が完了すると、本実施形態は、領域402がダーティーとマークされたダーティー状態1004に遷移してもよく、領域402内の追加的な諸位置に書き込む110さらなる要求のため、本実施形態は、このダーティー状態1004に留まってもよい。ダーティー領域402をフラッシュするよう要求が受領されたら、記憶装置106がフラッシュの準備ができているかどうかについて判定がなされる。(たとえば、記憶装置106が現在、記憶セットの同期を実行中である場合、あるいは記憶装置106が一時的にアクセス不能である場合には、ダーティー書き込みをフラッシュする要求は、記憶装置106の準備ができるまでホールドされる。)記憶装置106がフラッシュの準備ができている場合には、本実施形態は、フラッシュ動作を開始しつつ、フラッシュ状態1008にはいってもよい。その領域104への書き込み110の別の要求を受け取ることなくフラッシュ動作が完了する場合には、本実施形態は、クリーンとマークされた状態1010にはいってもよい。ここで、領域102はすでにフラッシュされている(たとえば、領域402への書き込み110が完了している)が、領域402は記憶装置106上の領域記述子404ではいまだダーティーとマークされている(だが、装置のメモリ904内の揮発性メモリ表現906ではクリーンとマークされていてもよい)。最後に、領域記述子404において、クリーニングされた領域402をクリーンとマークするよう要求が受領されると、本実施形態はそのマーク付け406を開始してもよく、このマーク付け406が完了すると、クリーン状態1002に戻ってもよい。しかしながら、フラッシュ中状態1008またはクリーンとマークされている状態1010の間に領域402に書き込む110何らかの要求が受領される場合には、本実施形態はダーティー状態1006に戻ることがある。このようにして、本技法のある実施形態は、ステートフルで、決定論的で、かつ比較的単純な仕方で、領域記述子404を更新しうる。本稿に提示される技法に適合しうる、領域記述子402の更新における多くの変形が、当業者によって考案されうる。
これらの技法の実施形態の間で変わりうる第四の側面は、障害118の場合に記憶セット102の回復(クリーニング416を含む)を実行するために領域記述子404を使う仕方に関する。第一の変形では、前記回復は、障害118から生じる記憶セット102における非一貫性122を検出し、除去するために記憶セット102をクリーニング416する多くの型の技法に関わりうる。第一の例として、同一であることが期待される二つ以上のコピーとして記憶されている記憶セット102のあるデータセット104について、クリーニング416は、それらのコピーを比較して非一貫性122を検出することに関わってもよい。(たとえば、実際の内容のビットごとの比較;内容の論理的な比較、たとえば同じファイルのセットを有するが該ファイル・システムを異なるビット毎構造で表わす二つのファイル・システムのような、非実質的な構造上の相違の場合でもデータセット104の間の等価性を検出するなど;あるいはデータセット104のホールマーク(hallmark)の比較、たとえば各コピーの内容に対して計算されたハッシュコードの比較。)第二の例として、クリーニング416は、データセット104の内容の一貫性を検証するために、データセット104を表わす検証子202、たとえばチェックサムに対して一つまたは複数のデータセット104を検証することに関わっていてもよい。第三の例として、クリーニング416は、単にエラーがあるかどうかデータセット104を検査することに関わってもよい。たとえば、標準化された型のデータセット104のバイナリー内容が形式定義に従った有効な構造を呈することを検証するなど。さらに、クリーニング416は、非一貫性112の存在の単純な検出を可能にしてもよい;前記少なくとも一つの比較されるデータセット104内および/または該データセット104間での非一貫性の位置の同定を可能にしてもよい(たとえば、エラーが存在することを検出するだけでなく、データセット104の特定の部分が非一貫的であるまたは期待されたとおりでないことを検出する);および/または、非一貫性122の訂正を可能にしてもよい(たとえば、正しいデータの決定を可能にする、ハミング符号のような誤り訂正チェックサム、あるいはフォーマット上の非一貫性の訂正を可能にし、データ損失を回復または低減しうる、バイナリー・オブジェクトに適用される修復技法)。異なる型のクリーニング416が記憶セット102内の異なるデータセット104に適用されてもよい。(たとえば、より貴重なデータセット102はより複雑だが洗練された誤り訂正技法に適合する仕方で記憶されてもよく、それほど貴重でないデータセット102は単純で比較的込み入っていない仕方で記憶されてもよい。)さらに、呼び出されるクリーニング416の型は、それぞれのデータセット104の利用可能なコピーの数、検出された障害118の型、記憶装置106の型(たとえば、装置上に実装されるRAID方式)およびユーザーの関心(たとえば、ユーザーは、クリーニング416の複雑さ、信頼性および継続時間の面で異なるさまざまなクリーニング・オプションのうちから選択することが許されていてもよい)に依存してもよい。いくつかのシナリオでは、複数の型のクリーニング416が実行されてもよい。(たとえば、簡単に検出される非一貫性122の迅速な同定およびデータセット102へのアクセスの即座の回復に関わるクイック・クリーニング416と、それに続く、訂正および修復するのがより難しい非一貫性122に対処するために記憶セット102の完全性を検証する複雑なクリーニング416。)
この第三の側面の第二の変形として、記憶セット102の回復は特定の順序で実行されてもよい。たとえば、記憶セット102は多くの記憶装置上に記憶されている多くの型のデータセット104を含んでいてもよい。いくつかのシナリオでは、素朴な回復は、クリーニング416を、任意の順序で記憶セット102に適用してもよい。一方、順序付けられた回復は、記憶セット102の、それほど貴重でないまたは頻繁に要求されないデータセット104(たとえばアーカイブ・データ)を含む他の部分にクリーニング416(たとえば使用中のデータ)を適用する前にまず、記憶セット102の、貴重なまたはより多く使われるデータセット104を含むいくつかの部分にクリーニング416を適用してもよい。一つのそのような例として、記憶セット102のそれぞれの領域402は、それぞれ領域記述子404をもつ一つまたは複数の領域セットに配分されてもよく、回復は、第二の領域記述子404によって表わされる第二の領域セットの領域402をクリーニングする前に、第一の領域記述子404によって表わされる第一の領域セットの領域402をクリーニング416することに関わってもよい。
図11は、本稿に提示される技法が実装されうるコンピューティング装置1102内の例示的なコンピューティング環境の図解を示している。例示的なコンピューティング装置は、これに限られないが、パーソナル・コンピュータ、サーバー・コンピュータ、ハンドヘルドもしくはラップトップ装置、モバイル装置(携帯電話、携帯情報端末(PDA)、メディア・プレーヤーなど)、マルチプロセッサ・システム、消費者電子装置、ミニコンピュータ、メインフレーム・コンピュータおよび上記のシステムもしくは装置のいずれかを含む分散式のコンピューティング環境を含む。
本願での用法では、用語「コンポーネント」、「モジュール」、「システム」、「インターフェース」などは、ハードウェア、ハードウェアとソフトウェアの組み合わせ、ソフトウェアまたは実行中のソフトウェアのいずれであれコンピュータ関係のエンティティを指すことが一般に意図されている。たとえば、コンポーネントは、これに限られないが、プロセッサ上で走っているプロセス、プロセッサ、オブジェクト、実行可能物、実行のスレッド、プログラムおよび/またはコンピュータであってもよい。例として、コントローラ上で走るアプリケーションおよび前記コントローラの両方がコンポーネントであることができる。一つまたは複数のコンポーネントがプロセスおよび/または実行のスレッド内に存在することができ、コンポーネントは一つのコンピュータ上に局在することもできるし、および/または二つ以上のコンピュータの間で分散させられることもできる。
さらに、「例示的」という語は、本稿では、例、事例または例解のはたらきをすることを意味するために使われる。本稿に「例示的」として記載される任意の側面または設計は、必ずしも、他の側面または設計に対して有利であると解釈されるものではない。むしろ、例示的という語の使用は、概念を具体的な仕方で提示することを意図したものである。本願での用法では、用語「または」は排他的な「または」ではなく包含的な「または」を意味することが意図されている。すなわち、特に断わりのない限りまたは文脈から明らかではない限り、「XはAまたはBを用いる」は自然な包含的な置換の任意のものを意味することが意図されている。すなわち、XがAを用いる;XがBを用いる;またはXがAおよびBの両方を用いるのであれば、「XはAまたはBを用いる」は上記の事例のいずれかのもとで満たされる。さらに、本願および付属の請求項で使われるところの冠詞「a」および「an」は、そうでないことが記載されているまたは単数形に向けられていることが文脈から明らかなのでない限り、「一つまたは複数」を意味する。
Claims (10)
- プロセッサを有するコンピュータ上で、少なくとも一つの記憶装置によって提供される記憶セット内でペンディングの書き込みを記録する方法であって、前記プロセッサ上で:
少なくとも一つの記憶装置上で、前記記憶装置上に記憶されている記憶セットを領域サイズに従って少なくとも二つの領域に配分する領域記述子を生成する段階と;
前記記憶セット中のある位置に記憶されるべきデータセットを受領したら:
前記データセットの位置を含んでいる前記記憶セット内の領域を同定し;
前記領域記述子において前記領域をダーティーとしてマークし;
前記記憶セット中の前記位置に前記データセットの記憶を開始する段階と;
前記記憶セット中の前記位置に前記データセットを記憶したのちに、前記領域記述子において前記領域をクリーンとしてマークする段階とを実行するよう構成された命令を実行することを含む、
方法。 - それぞれのダーティー領域が、
前記記憶セットの記憶装置上の領域の物理的な位置を同定する物理的領域参照方式;および
前記記憶セットの論理装置上の領域の論理的な位置を同定する論理的領域参照方式を含む
領域参照方式から選択される領域参照方式に従って前記記憶装置中のそれぞれの領域を同定する、請求項1記載の方法。 - 前記記憶セットが、領域からなる少なくとも二つの領域セットを有しており、
それぞれの領域セットが前記領域セットの領域を表わす少なくとも一つの領域記述子を有する、
請求項1記載の方法。 - 前記記憶セットが、それぞれ更新シーケンス・インジケーターを有する少なくとも二つの領域記述子を有しており、
前記命令が、前記記憶セット中のある位置にデータセットを記憶したときに:
前記領域記述子のうちで最も新しい更新シーケンス・インジケーターを有していない古くなった領域記述子を選択する段階と;
前記古くなった領域記述子において、前記データセットの前記位置を有する前記領域を、更新されたとマークする段階と;
前記更新シーケンス・インジケーターを、前記領域記述子のうちで最も新しい更新シーケンス・インジケーターに更新する段階とを実行するよう構成されている、
請求項1記載の方法。 - 記憶装置上で前記領域記述子を生成する段階が:前記領域記述子のために前記記憶装置上に領域記述子スペースを割り当てる段階を含み;
前記命令が、前記領域記述子スペースをダーティー領域で満たしたら、前記領域記述子スペースを拡張するよう構成されている、
請求項1記載の方法。 - 少なくとも一つの領域記述子において領域をダーティーとしてマークすることが:
前記領域記述子において前記領域がクリーンとマークされているかどうかを判定し;
前記領域記述子において前記領域がクリーンとマークされていると判定したら、前記領域をダーティーとマークすることを含む、
請求項1記載の方法。 - 少なくとも一つの領域記述子において領域をクリーンとしてマークすることが:
前記領域内のある位置にデータセットを記憶することを完了したのちに、前記領域をクリーンと同定し;
前記領域記述子においてクリーニングされた領域をクリーンとマークする要求を受領したら、前記領域記述子において少なくとも一つのクリーニングされた領域をクリーンとマークすることを含む、
請求項1記載の方法。 - 命令を有するコンピュータ可読媒体であって、前記命令は、少なくとも一つの記憶装置へのアクセスをもつコンピュータのプロセッサ上で実行されたときに、前記コンピュータに、個々のデータセットを有する、前記記憶装置によって記憶されている記憶セットをクリーニングすることを:
少なくとも一つの記憶装置から、前記記憶装置上に記憶されている前記記憶セットを領域サイズに従って少なくとも二つの領域に配分する領域記述子を取得する段階と;
前記領域記述子においてダーティーとマークされたそれぞれの領域について:
前記領域内のデータセットをクリーニングすることを開始する段階と;
前記領域内のデータセットをクリーニングすることを完了したら、その領域を前記領域記述子においてクリーンとマークする段階とを実行することによってさせるものである、
コンピュータ可読媒体。 - 前記記憶セットが、それぞれ更新シーケンス・インジケーターを有する少なくとも二つの領域記述子を有しており、
前記記憶セットにおける前記少なくとも一つのダーティーな領域を同定することが:
前記領域記述子のうちで最も新しい更新シーケンス・インジケーターを有する最も新しい領域記述子を選択し;
前記領域記述子に従って前記記憶セットにおける前記少なくとも一つのダーティーな領域を同定することを含む、
請求項8記載の方法。 - それぞれの領域記述子がその領域記述子の領域記述子検証子を有しており;
前記ダーティーな領域を同定することが:前記領域記述子の前記領域記述子検証子を検証することを含み;
前記命令は、前記領域記述子の前記領域記述子検証子の検証に失敗したとき、前記記憶セットの記憶装置のフル・クリーニングを開始するよう構成されている、
請求項8記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/229,871 US9003103B2 (en) | 2011-09-12 | 2011-09-12 | Nonvolatile media dirty region tracking |
US13/229,871 | 2011-09-12 | ||
PCT/US2011/055590 WO2013039522A1 (en) | 2011-09-12 | 2011-10-10 | Nonvolatile media dirty region tracking |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014530393A true JP2014530393A (ja) | 2014-11-17 |
JP5932042B2 JP5932042B2 (ja) | 2016-06-08 |
Family
ID=47644555
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014529676A Active JP5932042B2 (ja) | 2011-09-12 | 2011-10-10 | 不揮発性媒体のダーティー領域追跡 |
Country Status (11)
Country | Link |
---|---|
US (1) | US9003103B2 (ja) |
EP (1) | EP2756405B1 (ja) |
JP (1) | JP5932042B2 (ja) |
KR (1) | KR101921365B1 (ja) |
CN (1) | CN102929750B (ja) |
AU (2) | AU2011376904A1 (ja) |
BR (1) | BR112014005623B1 (ja) |
CA (1) | CA2847841C (ja) |
MX (1) | MX336226B (ja) |
RU (2) | RU2014109361A (ja) |
WO (1) | WO2013039522A1 (ja) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9003103B2 (en) | 2011-09-12 | 2015-04-07 | Microsoft Technology Licensing, Llc | Nonvolatile media dirty region tracking |
US8898408B2 (en) * | 2011-12-12 | 2014-11-25 | Dell Products L.P. | Memory controller-independent memory mirroring |
US9396110B2 (en) * | 2012-12-21 | 2016-07-19 | Advanced Micro Devices, Inc. | Non-volatile hybrid memory |
US9542306B2 (en) | 2013-03-13 | 2017-01-10 | Seagate Technology Llc | Dynamic storage device provisioning |
US9448896B2 (en) | 2013-08-07 | 2016-09-20 | Seagate Technology Llc | Torn write mitigation |
US9128972B2 (en) * | 2013-09-21 | 2015-09-08 | Oracle International Corporation | Multi-version concurrency control on in-memory snapshot store of oracle in-memory database |
US9141486B2 (en) | 2014-01-15 | 2015-09-22 | Avago Technologies General Ip (Singapore) Pte Ltd | Intelligent I/O cache rebuild in a storage controller |
US9838346B2 (en) | 2014-03-17 | 2017-12-05 | Splunk Inc. | Alerting on dual-queue systems |
US9753818B2 (en) * | 2014-09-19 | 2017-09-05 | Splunk Inc. | Data forwarding using multiple data pipelines |
US9660930B2 (en) | 2014-03-17 | 2017-05-23 | Splunk Inc. | Dynamic data server nodes |
US9838467B2 (en) | 2014-03-17 | 2017-12-05 | Splunk Inc. | Dynamically instantiating dual-queue systems |
US9836358B2 (en) | 2014-03-17 | 2017-12-05 | Splunk Inc. | Ephemeral remote data store for dual-queue systems |
CN104123900A (zh) * | 2014-07-25 | 2014-10-29 | 西安诺瓦电子科技有限公司 | Led灯板校验系统及校验方法 |
US9430272B2 (en) | 2014-12-17 | 2016-08-30 | Microsoft Technology Licensing, Llc | Efficiently providing virtual machine reference points |
CN104484427B (zh) * | 2014-12-19 | 2017-12-29 | 武汉长江通信智联技术有限公司 | 一种录像文件存储装置及方法 |
US9547555B2 (en) * | 2015-01-12 | 2017-01-17 | Microsoft Technology Licensing, Llc | Change tracking using redundancy in logical time |
US9946607B2 (en) * | 2015-03-04 | 2018-04-17 | Sandisk Technologies Llc | Systems and methods for storage error management |
US9946496B2 (en) * | 2015-07-27 | 2018-04-17 | Elastifile Ltd. | SSD with non-blocking flush command |
US10684994B2 (en) * | 2015-09-25 | 2020-06-16 | Netapp Inc. | Data synchronization |
US10373665B2 (en) * | 2016-03-10 | 2019-08-06 | Micron Technology, Inc. | Parallel access techniques within memory sections through section independence |
KR20180062062A (ko) | 2016-11-30 | 2018-06-08 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이의 동작 방법 |
WO2018166072A1 (zh) * | 2017-03-13 | 2018-09-20 | 华为技术有限公司 | 一种数据处理方法及装置 |
US10459807B2 (en) * | 2017-05-23 | 2019-10-29 | International Business Machines Corporation | Determining modified portions of a RAID storage array |
US10331363B2 (en) | 2017-11-22 | 2019-06-25 | Seagate Technology Llc | Monitoring modifications to data blocks |
KR102410306B1 (ko) | 2018-01-29 | 2022-06-20 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
JP2020086483A (ja) * | 2018-11-15 | 2020-06-04 | 株式会社日立製作所 | 計算機システム及び記憶デバイスの制御方法 |
CN113127386A (zh) * | 2019-12-30 | 2021-07-16 | 美光科技公司 | 存储器器件中的受损存储部分恢复 |
US11755226B2 (en) * | 2020-09-18 | 2023-09-12 | Hewlett Packard Enterprise Development Lp | Tracking changes of storage volumes during data transfers |
KR20220045343A (ko) * | 2020-10-05 | 2022-04-12 | 에스케이하이닉스 주식회사 | 데이터 처리 시스템 내 데이터 전송에서 발생한 에러를 정정하는 장치 및 방법 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05197499A (ja) * | 1992-01-21 | 1993-08-06 | Hitachi Ltd | ディスクアレイ制御装置 |
JP2003288250A (ja) * | 2002-03-28 | 2003-10-10 | Sanyo Electric Co Ltd | ファイル管理方法 |
JP2005044213A (ja) * | 2003-07-24 | 2005-02-17 | Toshiba Corp | ディスク制御装置及び冗長化論理ディスクドライブの一貫性回復方法 |
US20050278483A1 (en) * | 2004-06-10 | 2005-12-15 | Andruszkiewicz John J | Local bitmaps for an array of redundant storage devices |
US7103796B1 (en) * | 2002-09-03 | 2006-09-05 | Veritas Operating Corporation | Parallel data change tracking for maintaining mirrored data consistency |
US7415488B1 (en) * | 2004-12-31 | 2008-08-19 | Symantec Operating Corporation | System and method for redundant storage consistency recovery |
US20100274980A1 (en) * | 2009-04-28 | 2010-10-28 | Symantec Corporation | Techniques for system recovery using change tracking |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NZ500202A (en) * | 1997-03-21 | 2001-11-30 | Canal Plus Sa | Updating of flash memory pages in computer memory system |
US7055058B2 (en) | 2001-12-26 | 2006-05-30 | Boon Storage Technologies, Inc. | Self-healing log-structured RAID |
US7904678B1 (en) | 2004-02-27 | 2011-03-08 | Symantec Operating Corporation | Technique for recovering mirror consistency in cooperative virtual storage |
US7526684B2 (en) * | 2004-03-24 | 2009-04-28 | Seagate Technology Llc | Deterministic preventive recovery from a predicted failure in a distributed storage system |
US7395378B1 (en) | 2005-01-04 | 2008-07-01 | Symantec Operating Corporation | System and method for updating a copy-on-write snapshot based on a dirty region log |
CN100456253C (zh) | 2005-12-28 | 2009-01-28 | 英业达股份有限公司 | 存储系统的高速缓存数据的保护方法 |
US9003103B2 (en) | 2011-09-12 | 2015-04-07 | Microsoft Technology Licensing, Llc | Nonvolatile media dirty region tracking |
-
2011
- 2011-09-12 US US13/229,871 patent/US9003103B2/en active Active
- 2011-10-10 RU RU2014109361/08A patent/RU2014109361A/ru unknown
- 2011-10-10 EP EP11872297.4A patent/EP2756405B1/en active Active
- 2011-10-10 AU AU2011376904A patent/AU2011376904A1/en not_active Abandoned
- 2011-10-10 JP JP2014529676A patent/JP5932042B2/ja active Active
- 2011-10-10 KR KR1020147006546A patent/KR101921365B1/ko active IP Right Grant
- 2011-10-10 BR BR112014005623-4A patent/BR112014005623B1/pt active IP Right Grant
- 2011-10-10 CA CA2847841A patent/CA2847841C/en active Active
- 2011-10-10 MX MX2014002960A patent/MX336226B/es unknown
- 2011-10-10 RU RU2016138143A patent/RU2728816C2/ru active
- 2011-10-10 WO PCT/US2011/055590 patent/WO2013039522A1/en active Application Filing
-
2012
- 2012-09-12 CN CN201210335689.4A patent/CN102929750B/zh active Active
-
2017
- 2017-09-12 AU AU2017228544A patent/AU2017228544B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05197499A (ja) * | 1992-01-21 | 1993-08-06 | Hitachi Ltd | ディスクアレイ制御装置 |
JP2003288250A (ja) * | 2002-03-28 | 2003-10-10 | Sanyo Electric Co Ltd | ファイル管理方法 |
US7103796B1 (en) * | 2002-09-03 | 2006-09-05 | Veritas Operating Corporation | Parallel data change tracking for maintaining mirrored data consistency |
JP2005044213A (ja) * | 2003-07-24 | 2005-02-17 | Toshiba Corp | ディスク制御装置及び冗長化論理ディスクドライブの一貫性回復方法 |
US20050278483A1 (en) * | 2004-06-10 | 2005-12-15 | Andruszkiewicz John J | Local bitmaps for an array of redundant storage devices |
US7415488B1 (en) * | 2004-12-31 | 2008-08-19 | Symantec Operating Corporation | System and method for redundant storage consistency recovery |
US20100274980A1 (en) * | 2009-04-28 | 2010-10-28 | Symantec Corporation | Techniques for system recovery using change tracking |
Also Published As
Publication number | Publication date |
---|---|
KR101921365B1 (ko) | 2018-11-22 |
BR112014005623A2 (pt) | 2017-03-21 |
RU2016138143A (ru) | 2018-12-12 |
RU2728816C2 (ru) | 2020-07-31 |
CA2847841C (en) | 2018-03-06 |
BR112014005623B1 (pt) | 2021-10-05 |
KR20140062063A (ko) | 2014-05-22 |
RU2016138143A3 (ja) | 2020-03-04 |
CA2847841A1 (en) | 2013-03-21 |
US9003103B2 (en) | 2015-04-07 |
WO2013039522A1 (en) | 2013-03-21 |
RU2014109361A (ru) | 2015-09-20 |
AU2011376904A1 (en) | 2014-03-27 |
EP2756405A1 (en) | 2014-07-23 |
US20130067179A1 (en) | 2013-03-14 |
BR112014005623A8 (pt) | 2018-02-06 |
CN102929750A (zh) | 2013-02-13 |
EP2756405B1 (en) | 2021-07-14 |
MX2014002960A (es) | 2014-07-09 |
MX336226B (es) | 2016-01-07 |
AU2017228544B2 (en) | 2019-05-16 |
AU2017228544A1 (en) | 2017-10-05 |
EP2756405A4 (en) | 2015-09-02 |
JP5932042B2 (ja) | 2016-06-08 |
CN102929750B (zh) | 2015-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5932042B2 (ja) | 不揮発性媒体のダーティー領域追跡 | |
JP6026538B2 (ja) | 検証されたデータセットの不揮発性媒体ジャーナリング | |
EP3125120B1 (en) | System and method for consistency verification of replicated data in a recovery system | |
US9892136B2 (en) | Method and system for scrubbing data within a data storage subsystem | |
US9053075B2 (en) | Storage control device and method for controlling storages | |
US7640412B2 (en) | Techniques for improving the reliability of file systems | |
US9715521B2 (en) | Data scrubbing in cluster-based storage systems | |
US8117496B2 (en) | Detecting and recovering from silent data errors in application cloning systems | |
US10481988B2 (en) | System and method for consistency verification of replicated data in a recovery system | |
KR101870521B1 (ko) | 스토리지 저널링을 개선하는 방법 및 시스템 | |
EP3724764A1 (en) | Write-ahead style logging in a persistent memory device | |
CN104077375A (zh) | 一种cc-numa系统中节点的错误目录的处理方法和节点 | |
US8938641B2 (en) | Method and apparatus for synchronizing storage volumes | |
TWI856880B (zh) | 非暫態電腦可讀取媒體、儲存裝置、及儲存方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140910 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140910 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20150523 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150624 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150804 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20151030 |
|
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: 20160329 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160427 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5932042 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |