JP4664988B2 - シンドローム生成及びデータ復旧のための方法及びシステム - Google Patents

シンドローム生成及びデータ復旧のための方法及びシステム Download PDF

Info

Publication number
JP4664988B2
JP4664988B2 JP2007548571A JP2007548571A JP4664988B2 JP 4664988 B2 JP4664988 B2 JP 4664988B2 JP 2007548571 A JP2007548571 A JP 2007548571A JP 2007548571 A JP2007548571 A JP 2007548571A JP 4664988 B2 JP4664988 B2 JP 4664988B2
Authority
JP
Japan
Prior art keywords
parity
data
parity element
buffer
selector
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.)
Expired - Fee Related
Application number
JP2007548571A
Other languages
English (en)
Other versions
JP2008525898A (ja
Inventor
エディリソーリヤ、サマンサ
チェ、グレゴリー
シュミッセウル、マーク
シェフィールド、ロバート
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of JP2008525898A publication Critical patent/JP2008525898A/ja
Application granted granted Critical
Publication of JP4664988B2 publication Critical patent/JP4664988B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/10Indexing scheme relating to G06F11/10
    • G06F2211/1002Indexing scheme relating to G06F11/1076
    • G06F2211/1004Adaptive RAID, i.e. RAID system adapts to changing circumstances, e.g. RAID1 becomes RAID5 as disks fill up
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/10Indexing scheme relating to G06F11/10
    • G06F2211/1002Indexing scheme relating to G06F11/1076
    • G06F2211/1057Parity-multiple bits-RAID6, i.e. RAID 6 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)
  • Detection And Correction Of Errors (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Hardware Redundancy (AREA)
  • Error Detection And Correction (AREA)

Description

本発明の実施の形態は、シンドローム生成及びデータ復旧に関し、より具体的には、PQ RAIDシンドローム生成及びデータ復旧に関する。
ファイバチャネルシステム及びギガビットイーサネットシステム等を有する大規模ストレージシステムの使用が増大するにつれて、これらのシステムは、複数のディスク故障にますます影響されやすくなっている。ディスク容量の急成長も、ディスク故障時のディスク復旧時間を長引かせている。この復旧時間が長引くことによって、障害ディスクに記憶されたユーザデータ及びパリティ情報の復元中に、ディスク故障が続いて発生する確率が増大している。加えて、長期間読み出されないままにされていたデータによって引き起こされる潜在的なセクタ故障が、データの喪失をもたらすディスク故障の後のデータ復旧を妨げるおそれがある。高いデータ完全性が必要とされるアレイにATA(アドバンストテクノロジーアタッチメント)ディスク等の安価なディスクを使用することも、このようなディスク故障の確率を増大させている。
RAID(独立ディスク冗長アレイ)アーキテクチャは、ディスク故障からの復旧を可能にするために開発されたものである。通常、複数のディスクからのデータのXOR(排他的OR)が、冗長ディスクに保持される。ディスク故障の場合、故障ディスクのデータは、生存ディスクのデータをXORすることによって復元される。復元されたデータは、スペアディスクに書き込まれる。しかしながら、復元が完了する前に第2のディスクが故障すると、データは喪失する。わずか1つのディスクのみの喪失を防ぐ従来のディスクアレイは、データ復旧には不十分であり、特に、大規模ストレージシステムには不十分である。
特許文献1 米国特許第5099484号明細書
特許文献2 米国特許第5271012号明細書
特許文献3 米国特許第5499253号明細書
特許文献4 米国特許第5579475号明細書
特許文献5 米国特許第6247157号明細書
特許文献6 米国特許第6567891号明細書
特許文献7 米国特許出願公開第2005/0050384号明細書
特許文献8 米国特許出願公開第2005/0108613号明細書
特許文献9 米国特許出願公開第2006/0123268号明細書
非特許文献1 Park, Chan-Ik, "Efficient Placement of Parity and Data to Tolerate Two Disk Failures in Disk Array Systems," IEEE Transactions on Parallel and Distributed Systems, Nov. 1995, vol. 6, No. 11, pp. 1177-1184.
非特許文献2 Burkhard, Walter A. et al., "Disk Array Storage System Reliability," IEEE, 1993, pp. 432-441.
非特許文献3 Blaum, Mario et al., "EVENODD: An Efficient Scheme for Tolerating Double Disk Failures in RAID Architectures," IEEE Transactions on Computers, Feb. 1995, vol. 44, No. 2, pp. 192-202.
非特許文献4 Gibson, Garth A. et al., "Coding Techniques for Handling Failures in Large Disk Arrays," Computer Science Division, Electrical Engineering and Computer Sciences, Berkeley, CA, 1994, pp. 1-29.
非特許文献5 Patterson, David A. et al., "A Case for Redundant Arrays of Inexpensive Disks (RAID)," Computer Science Division, Department of Electrical Engineering and Computer Sciences, Berkeley, CA, 1988, pp. 109-116.
添付図面の図において、本発明を、限定ではなく一例として説明する。添付図面では、同様の参照符号は同様の要素を指す。
詳細な説明
シンドローム生成及びデータ復旧のためのシステム及び方法の実施形態を説明する。以下の説明では、多数の特定の詳細を述べる。しかしながら、本発明の実施形態は、これらの特定の詳細がなくても実施できることが理解される。それ以外の場合には、既知の回路、構造、及び技法は、この説明の理解を分かりにくくしないように詳細に示されていない。
本明細書全体を通じて「一実施形態」に言及しているが、これは、その実施形態と共に説明する特定の特徴、構造、又は特性が、本発明の少なくとも1つの実施形態に含まれることを意味する。したがって、本明細書の全体を通じたさまざまな箇所に「一実施形態では」というフレーズが現れるが、必ずしもすべてが同じ実施形態に言及しているとは限らない。さらに、特定の特徴、構造、又は特性を、1つ又は複数の実施形態において任意の適した方法で組み合わせてもよい。
図1を参照すると、ブロック図は、複数のディスク故障からの復旧を可能にするシステム100を示している。システム100は、102〜124等のデータを記憶するための1つ又は複数のストレージブロック、及び、130〜144等のパリティ情報又はシンドローム情報を記憶するための2つ以上のストレージブロックを含む。一実施形態では、システム100は、RAID(独立ディスク冗長アレイ)システムである。一実施形態では、Pシンドローム及びQシンドロームの2つのシンドロームが生成されて記憶される。Pシンドロームは、1つのストライプにわたってパリティを計算することにより生成される。Qシンドロームは、ガロア体乗算を使用することによって生成される。データ復旧のための再生方式は、ガロア体乗算及びガロア体除算の双方を使用する。
以下は、n個のデータディスク及び2つのチェックディスクを有するストレージアレイのP及びQを生成するための式である。
Figure 0004664988
(式1)
Figure 0004664988
(式2)
Pは、
Figure 0004664988
(XOR)演算を使用して1つのストライプにわたり計算されたデータ(D)の単純なパリティである。Qは、ガロア体乗算器(g)を使用した乗算(*)を必要とする。
以下の式は、データブロックDを更新する時のP及びQの生成を示している。
Figure 0004664988
復旧を必要とする複数のディスク故障には4つのケースがある。ケース1では、P及びQが故障する。このケースでは、P及びQは、上記に示した式1及び式2を使用して再生することができる。
ケース2では、Q及びデータディスク(D)が故障する。このケースでは、Dは、P及び残りのデータディスクを使用して式1を介し再生することができる。Qは、その後、式2を使用して再生することができる。
ケース3では、P及びデータディスク(D)が故障する。このケースでは、Dは、Q、残りのデータディスク、及び以下の式を使用して再生することができる。
Figure 0004664988
ここで、
Figure 0004664988
が再生された後、Pは式1を使用して再生することができる。
ケース4では、2つのデータディスク(D及びD)が故障する。このケースでは、D及びDは、P及びQ、残りのデータディスク、並びに以下の式を使用して再生することができる。
Figure 0004664988
ここで、
Figure 0004664988
以下は、上述したケースにおけるディスク故障からの復旧例である。以下の例では、データパスは、1バイト幅、すなわち8ビット幅であると仮定される。したがって、ガロア体のGF(2)が使用される。本発明は、1バイト幅よりも大きなデータパス又は1バイト幅よりも小さなデータパスについても実施することができ、より大きなガロア体又はより小さなガロア体を使用することができる。
以下の式は、2つの8ビット要素(b及びc)を乗算して8ビット積(a)を与えるのに使用することができる。
b=[b7 b6 b5 b4 b3 b2 b1 b0]であり、c=[c7 c6 c5 c4 c3 c2 c1 c0]である。
Figure 0004664988
図2は、g=0000 0010の場合のガロア体乗算器gの値の例を提供する表200を示している。GF(2)の生成器の負の累乗は、以下の式を使用して計算することができる。
−a=g255−a
以下の例は、4つのデータディスク及び2つのパリティディスクを有するディスクアレイのPパリティ及びQパリティを生成する方法を示している。各データブロックは1データバイトを含むものと仮定する。Dを、ディスクIに含まれるデータとする(i=0、1、2,3)。次のデータストライプ、すなわち、D=1011 0100、D=0010 1100、D=1100 0110、及びD=1101 0101を考える。この場合、Pは、次のように、式1を使用して生成することができる。
Figure 0004664988
Qは、次のように、式2を使用して生成することができる。
Figure 0004664988
図2の表から、g=0000 0001、g=0000 0010、g=0000 0100、及びg=0000 1000となる。
したがって、
Figure 0004664988
次の例は、上記で生成されたアレイを使用して2つのディスク故障から復旧する方法を示している。第1のケースでは、P及びQが故障する。このケースでは、P及びQが上記に示したような式1及び式2を使用して再生される。第2のケースでは、Q及びデータディスク(D)が故障する。このケースでは、Dは、P及び残りのデータディスクを使用して式1を介し再生することができる。Qは、その後、式2を使用して再生することができる。第3のケースでは、P及びデータディスク(D)が故障する。このケースでは、Dは、Q、残りのデータディスク、及び以下の式を使用して再生することができる。
Figure 0004664988
ここで、
Figure 0004664988
たとえば、ディスク2が故障したものと仮定する。この場合、
Figure 0004664988
図2の表を使用して、g253=0100 0111である。したがって、
Figure 0004664988
この時、すべてのデータブロックが利用可能であるので、Pは、その後、式1を使用して再生することができる。
第4のケースでは、2つのデータディスク(D及びD)が故障する。このケースでは、D及びDは、P及びQ、残りのデータディスク、並びに以下の式を使用して再生することができる。
Figure 0004664988
ここで、
Figure 0004664988
たとえば、ディスク1及び3が故障したものと仮定する。この場合、
Figure 0004664988
図2の表から、g254=1000 1110であり、g=0000 0100である。したがって、
Figure 0004664988
図3は、本発明の一実施形態によるシステム300のブロック図である。システム300は、乗算器302と、304及び306等の1つ又は複数の比較器とを含む。一実施形態では、これらの比較器の1つ又は複数はXOR(排他的OR)ゲートである。また、システム300は、308及び310等の1つ又は複数のバッファも含んでもよい。バッファ308は、比較器306からの出力を記憶する。比較器306は、図1に示すストレージブロックから読み出されるデータ320を、バッファ308の出力と比較する。このように、比較器306は、上述したPシンドロームを計算するために使用してもよい。Pシンドロームは、1つのストライプにわたるパリティである。
乗算器302は、被乗数330を、図1に示すストレージブロックから読み出されたデータ320と乗算する。一実施形態では、被乗数330は、図2の表200に示すようなガロア体である。乗算器302の出力は、比較器304によって、バッファ310の出力と比較される。このように、ガロア体乗算を行うことができ、Qシンドロームを計算することができる。また乗算器302は、複数のディスクが故障する4つのケースに関して上述した式のさまざまな乗算演算を行うために使用してもよい。データは、被乗数330を1に等しく設定することによって、乗算器を通過することが可能となる。セレクタ312は、乗算器302の出力と比較器304の出力との間で選択を行うために使用してもよい。一実施形態では、セレクタ312はマルチプレクサ(MUX)である。
システム300は、複数のディスクが故障する4つのケースに関して上述した式の除算演算を行うために使用される除算器314も含んでもよい。たとえば、ケース4では、Dの再生の計算は除算演算を有し、この除算演算は除算器314が行ってもよい。データは、除数340を1に等しく設定することによって、除算器314を通過することが可能となり得る。これは、除算演算を行うことが必要とされない場合に望ましい場合がある。
図3に示すように、システム300は、Pシンドローム及びQシンドロームの生成を並列に行う。必要とされる他の乗算演算及び除算演算も、システム300が行うことができる。セレクタ316は、システムの所望の出力を選択するために使用することができる。一実施形態では、セレクタ316はマルチプレクサ(MUX)である。
図4は、本発明の一実施形態による1つ又は複数のストレージブロックのデータの復旧を助けるパリティを生成するための方法を示している。400において、第1のパリティ要素が、ストレージブロックの1つ又は複数からのデータを比較することに基づいて計算される。402において、ストレージブロックの1つ又は複数からのデータが乗算係数と乗算されて、積が生成される。404において、第2のパリティ要素が、この積に少なくとも部分的に基づいて計算される。406において、第1のパリティ要素と第2のパリティ要素との間で選択が行われる。一実施形態では、上述したように、第1のパリティ要素はPシンドロームであり、第2のパリティ要素はQシンドロームである。一実施形態では、第2のパリティ要素は、除算器によってさらに除算される。一実施形態では、第1のパリティ要素及び第2のパリティ要素はバッファリングされる。一実施形態では、第1のパリティ要素及び第2のパリティ要素は、並列に計算される。
いくつかの実施形態の観点から本発明を説明してきたが、当業者は、本発明が、説明してきた実施形態に限定されず、添付の特許請求の範囲の精神及び範囲内において変更及び改変して実施できることを認識するであろう。本説明は、したがって、限定ではなく例示としてみなされるべきである。
複数のディスク故障からの復旧を可能にするシステムを示すブロック図である。 ガロア体の値の例の表である。 本発明の一実施形態によるシステムを示すブロック図である。 本発明の一実施形態による方法を示すフロー図である。

Claims (33)

  1. 1つ又は複数のストレージブロックからのデータに基づいて第1のパリティ要素を生成する第1の演算器と、
    前記1つ又は複数のストレージブロックからの前記データを、前記1つ又は複数のストレージブロックの故障ケースに従って選択された乗算係数と乗算して積を生成する乗算器と、
    前記積に基づき第2のパリティ要素を生成する第2の演算器と、
    前記第1のパリティ要素と前記第2のパリティ要素との間で選択を行う第1のセレクタと
    を備える装置。
  2. 前記第2のパリティ要素に対して除算演算を行う除算器をさらに備える
    請求項1に記載の装置。
  3. 前記第1の演算器が生成した前記第1のパリティ要素を記憶する第1のバッファ
    をさらに備える
    請求項1または2に記載の装置。
  4. 前記第2のパリティ要素を記憶する第2のバッファ
    をさらに備える
    請求項1から3のいずれかに記載の装置。
  5. 前記乗算器が生成した前記積および前記第2の演算器が生成した前記第2のパリティ要素の一方を選択して出力する第2のセレクタ
    をさらに備え、
    前記除算器は、前記第2のセレクタの出力に対して除算演算を行い、
    前記第1のセレクタは、前記除算器による除算演算で得られた値と、前記第1のパリティ要素との間で、選択を行う
    請求項2に記載の装置。
  6. 前記第1の演算器が生成した値を記憶する第1のバッファと、
    前記除算器による除算演算で得られた値を記憶する第2のバッファと
    をさらに備え、
    前記第1の演算器は、前記データと、前記第1のバッファが記憶している値とに基づいて、前記第1のパリティ要素を生成し、
    前記第2の演算器は、前記乗算器が生成した前記積と、前記第2のバッファが記憶している値とに基づいて、前記第2のパリティ要素を生成し、
    前記第1のセレクタは、前記第1のバッファが記憶している値と前記第2のバッファが記憶している値との間で選択を行う
    請求項5に記載の装置。
  7. 前記乗算器は、前記データを通過させる場合に、1に設定された前記乗算係数と前記データとを乗算して前記積を生成し、
    前記除算器は、前記データを通過させる場合に、前記第2のセレクタの出力を、1に設定された除数で除算する
    請求項6に記載の装置。
  8. 前記第1の演算器はXOR(排他的OR)ゲートである
    請求項1から7のいずれかに記載の装置。
  9. 前記第2の演算器はXOR(排他的OR)ゲートである
    請求項1から8のいずれかに記載の装置。
  10. 前記乗算器はガロア体乗算を行う
    請求項1から9のいずれかに記載の装置。
  11. 前記第1の演算器は、前記1つ又は複数のストレージブロックからのデータに基づいて、RAID(独立ディスク冗長アレイ)シンドロームを生成する
    請求項1から10のいずれかに記載の装置。
  12. 前記第2の演算器は、前記乗算器からの出力を使用して、RAID(独立ディスク冗長アレイ)シンドロームを生成する
    請求項11に記載の装置。
  13. 前記第1の演算器はRAID Pシンドロームを生成し、且つ前記第2の演算器はRAID Qシンドロームを生成する
    請求項12に記載の装置。
  14. 第1の演算器が、1つ又は複数のストレージブロックからのデータに基づいて第1のパリティ要素を生成する段階と
    乗算器が、前記1つ又は複数のストレージブロックからの前記データを、前記1つ又は複数のストレージブロックの故障ケースに従って選択された乗算係数と乗算して積を生成する段階と
    第2の演算器が、前記積に基づいて、第2のパリティ要素を生成する段階と
    第1のセレクタが、前記第1のパリティ要素と前記第2のパリティ要素との間で選択を行う段階と
    備える方法。
  15. 前記第1のパリティ要素を生成する段階は、前記1つ又は複数のストレージブロックからのデータに基づいて、RAID(独立ディスク冗長アレイ)シンドロームを生成する
    請求項14に記載の方法。
  16. 前記第2のパリティ要素を生成する段階は、前記積に基づいて、RAID(独立ディスク冗長アレイ)シンドロームを生成する
    請求項14または15に記載の方法。
  17. 前記積を生成する段階は、前記データをガロア体被乗数と乗算する
    請求項14から16のいずれかに記載の方法。
  18. 除算器が、前記第2のパリティ要素を除数で除算する段階
    をさらに備える請求項14から17のいずれかに記載の方法。
  19. 前記第1の演算器によって生成された前記第1のパリティ要素を第1のバッファに記憶する段階
    をさらに備える請求項14から18のいずれかに記載の方法。
  20. 前記第2のパリティ要素を第2のバッファに記憶する段階
    をさらに備える請求項14から19のいずれかに記載の方法。
  21. 第2のセレクタが、前記乗算器によって生成された前記積および前記第2の演算器によって生成された前記第2のパリティ要素の一方を選択して出力する段階
    をさらに備え、
    前記除算する段階は、前記第2のセレクタの出力を除数で除算し、
    前記第1のパリティ要素と前記第2のパリティ要素との間で選択を行う段階は、前記除算する段階において前記第2のパリティ要素を除数で除算して得られた値と、前記第1のパリティ要素との間で、選択を行う
    請求項18に記載の方法。
  22. 前記第1の演算器によって生成された値を第1のバッファに記憶する段階と、
    前記除算器によって前記第2のセレクタの出力を除数で除算して得られた値を第2のバッファに記憶する段階と
    をさらに備え、
    前記第1のパリティ要素を生成する段階は、前記データと、前記第1のバッファに記憶されている値とに基づいて、前記第1のパリティ要素を生成し、
    前記第2のパリティ要素を生成する段階は、前記乗算器が生成した前記積と、前記第2のバッファに記憶されている値とに基づいて、前記第2のパリティ要素を生成し、
    前記第1のパリティ要素と前記第2のパリティ要素との間で選択を行う段階は、前記第1のバッファに記憶されている値と前記第2のバッファに記憶されている値との間で選択を行う
    請求項21に記載の方法。
  23. 前記積を生成する段階は、前記データを通過させる場合に、1に設定された前記乗算係数と前記データとを乗算して前記積を生成し、
    前記除算する段階は、前記データを通過させる場合に、前記第2のセレクタの出力を、1に設定された除数で除算する
    請求項22に記載の方法。
  24. 前記第1のパリティ要素及び前記第2のパリティ要素は並列に計算される
    請求項14から23のいずれかに記載の方法。
  25. データを記憶する1つ又は複数のストレージデバイスと、
    前記1つ又は複数のストレージデバイスに接続されて、データの復旧用のパリティを生成するパリティ生成器
    を備え、
    前記パリティ生成器は、
    前記1つ又は複数のストレージデバイスからのデータに基づいて第1のパリティ要素を生成する第1の演算器と、
    前記1つ又は複数のストレージデバイスからの前記データを、前記1つ又は複数のストレージデバイスの故障ケースに従って選択された乗算係数と乗算して積を生成する乗算器と、
    前記積に基づき第2のパリティ要素を生成する第2の演算器と、
    前記第1のパリティ要素と前記第2のパリティ要素との間で選択を行う第1のセレクタと
    有するシステム。
  26. 前記パリティ生成器は、
    前記第2のパリティ要素に対して除算演算を行う除算器
    をさらに有する請求項25に記載のシステム。
  27. 前記パリティ生成器は、
    前記乗算器が生成した前記積および前記第2の演算器が生成した前記第2のパリティ要素の一方を選択して出力する第2のセレクタ
    をさらに有し、
    前記除算器は、前記第2のセレクタの出力に対して除算演算を行い、
    前記第1のセレクタは、前記除算器による除算演算で得られた値と、前記第1のパリティ要素との間で、選択を行う
    請求項26に記載のシステム。
  28. 前記パリティ生成器は、
    前記第1の演算器が生成した値を記憶する第1のバッファと、
    前記除算器による除算演算で得られた値を記憶する第2のバッファと
    をさらに有し、
    前記第1の演算器は、前記データと、前記第1のバッファが記憶している値とに基づいて、前記第1のパリティ要素を生成し、
    前記第2の演算器は、前記乗算器が生成した前記積と、前記第2のバッファが記憶している値とに基づいて、前記第2のパリティ要素を生成し、
    前記第1のセレクタは、前記第1のバッファが記憶している値と前記第2のバッファが記憶している値との間で選択を行う
    請求項27に記載のシステム。
  29. 前記乗算器は、前記データを通過させる場合に、1に設定された前記乗算係数と前記データとを乗算して前記積を生成し、
    前記除算器は、前記データを通過させる場合に、前記第2のセレクタの出力を、1に設定された除数で除算する、
    請求項28に記載のシステム。
  30. 前記乗算器はガロア体乗算を行う
    請求項25から29のいずれかに記載のシステム。
  31. 前記第1の演算器及び前記第2の演算器は並列に動作する
    請求項25から30のいずれかに記載のシステム。
  32. 前記第1の演算器は、前記データに基づいて、RAID(独立ディスク冗長アレイ)シンドロームを生成する
    請求項25から31のいずれかに記載のシステム。
  33. 前記第2の演算器は、前記積に基づいて、RAID(独立ディスク冗長アレイ)シンドロームを生成する
    請求項25から32のいずれかに記載のシステム。
JP2007548571A 2004-12-23 2005-12-21 シンドローム生成及びデータ復旧のための方法及びシステム Expired - Fee Related JP4664988B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/021,708 US7343546B2 (en) 2004-12-23 2004-12-23 Method and system for syndrome generation and data recovery
PCT/US2005/046996 WO2006071837A2 (en) 2004-12-23 2005-12-21 Method and system for syndrome generation and data recovery

Publications (2)

Publication Number Publication Date
JP2008525898A JP2008525898A (ja) 2008-07-17
JP4664988B2 true JP4664988B2 (ja) 2011-04-06

Family

ID=36282817

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007548571A Expired - Fee Related JP4664988B2 (ja) 2004-12-23 2005-12-21 シンドローム生成及びデータ復旧のための方法及びシステム

Country Status (8)

Country Link
US (2) US7343546B2 (ja)
EP (1) EP1828899B1 (ja)
JP (1) JP4664988B2 (ja)
CN (1) CN101084486B (ja)
AT (1) ATE407395T1 (ja)
DE (1) DE602005009577D1 (ja)
TW (1) TWI322348B (ja)
WO (1) WO2006071837A2 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7343546B2 (en) 2004-12-23 2008-03-11 Intel Corporation Method and system for syndrome generation and data recovery
KR100652399B1 (ko) * 2005-02-02 2006-12-01 삼성전자주식회사 하드디스크 드라이브의 디펙트 처리 방법, 이에 적합한하드디스크 드라이브 및 기록 매체
TWI285313B (en) * 2005-06-22 2007-08-11 Accusys Inc XOR circuit, RAID device capable of recover a plurality of failures and method thereof
US7607068B2 (en) 2006-08-31 2009-10-20 Intel Corporation Apparatus and method for generating a Galois-field syndrome
US7738657B2 (en) 2006-08-31 2010-06-15 Intel Corporation System and method for multi-precision division
US8145941B2 (en) 2006-10-31 2012-03-27 Hewlett-Packard Development Company, L.P. Detection and correction of block-level data corruption in fault-tolerant data-storage systems
US7664915B2 (en) * 2006-12-19 2010-02-16 Intel Corporation High performance raid-6 system architecture with pattern matching
US7797612B2 (en) * 2006-12-29 2010-09-14 Intel Corporation Storage accelerator
JP4905161B2 (ja) * 2007-01-31 2012-03-28 富士通株式会社 Raid装置及びガロア体を用いたデータ復元装置
US8261124B2 (en) * 2007-12-21 2012-09-04 Spansion Llc System and method for optimized error correction in flash memory arrays
US8150031B2 (en) * 2008-12-19 2012-04-03 Intel Corporation Method and apparatus to perform redundant array of independent disks (RAID) operations
US8239625B2 (en) * 2010-01-24 2012-08-07 Freescale Semiconductor, Inc. Parity generator for redundant array of independent discs type memory
RU2448361C2 (ru) * 2010-07-01 2012-04-20 Андрей Рюрикович Федоров Способ восстановления записей в запоминающем устройстве, система для его осуществления и машиночитаемый носитель
US9137250B2 (en) 2011-04-29 2015-09-15 Stephen Lesavich Method and system for electronic content storage and retrieval using galois fields and information entropy on cloud computing networks
US9037564B2 (en) 2011-04-29 2015-05-19 Stephen Lesavich Method and system for electronic content storage and retrieval with galois fields on cloud computing networks
US9361479B2 (en) 2011-04-29 2016-06-07 Stephen Lesavich Method and system for electronic content storage and retrieval using Galois fields and geometric shapes on cloud computing networks
US9569771B2 (en) 2011-04-29 2017-02-14 Stephen Lesavich Method and system for storage and retrieval of blockchain blocks using galois fields
CN103034559B (zh) * 2012-12-18 2016-06-08 无锡众志和达数据计算股份有限公司 基于rdma架构设计的pq检验模块及检验方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62253228A (ja) * 1986-04-25 1987-11-05 Ricoh Co Ltd パリテイあるいはシンドロ−ム生成回路
JPH06500186A (ja) * 1990-03-02 1994-01-06 イーエムシー コーポレーション ディスク・アレイ・システム
JPH11168392A (ja) * 1997-12-04 1999-06-22 Toshiba Corp データ誤り訂正装置及びデータ誤り訂正方法
JP2002280909A (ja) * 2001-03-22 2002-09-27 Sanyo Electric Co Ltd エラー訂正装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5148432A (en) * 1988-11-14 1992-09-15 Array Technology Corporation Arrayed disk drive system and method
US5099484A (en) 1989-06-09 1992-03-24 Digital Equipment Corporation Multiple bit error detection and correction system employing a modified Reed-Solomon code incorporating address parity and catastrophic failure detection
US5226043A (en) * 1990-12-27 1993-07-06 Raytheon Company Apparatus and method for data error detection and correction and address error detection in a memory system
US5271012A (en) 1991-02-11 1993-12-14 International Business Machines Corporation Method and means for encoding and rebuilding data contents of up to two unavailable DASDs in an array of DASDs
US5579475A (en) 1991-02-11 1996-11-26 International Business Machines Corporation Method and means for encoding and rebuilding the data contents of up to two unavailable DASDS in a DASD array using simple non-recursive diagonal and row parity
US5499253A (en) 1994-01-05 1996-03-12 Digital Equipment Corporation System and method for calculating RAID 6 check codes
US5522032A (en) * 1994-05-05 1996-05-28 International Business Machines Corporation Raid level 5 with free blocks parity cache
US6041431A (en) * 1997-09-19 2000-03-21 Adapter, Inc. Method and apparatus for performing error correction code operations
US6247157B1 (en) 1998-05-13 2001-06-12 Intel Corporation Method of encoding data signals for storage
US6567891B2 (en) * 2001-03-14 2003-05-20 Hewlett-Packard Development Company, L.P. Methods and arrangements for improved stripe-based processing
US6993701B2 (en) * 2001-12-28 2006-01-31 Network Appliance, Inc. Row-diagonal parity technique for enabling efficient recovery from double failures in a storage array
US7698625B2 (en) * 2003-08-26 2010-04-13 Adaptec, Inc. System for improving parity generation and rebuild performance
JP4288486B2 (ja) * 2003-11-17 2009-07-01 日本電気株式会社 ディスクアレイ装置,raid用パリティデータ生成回路およびガロア体乗算回路
US7290199B2 (en) * 2004-11-19 2007-10-30 International Business Machines Corporation Method and system for improved buffer utilization for disk array parity updates
US7343546B2 (en) 2004-12-23 2008-03-11 Intel Corporation Method and system for syndrome generation and data recovery

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62253228A (ja) * 1986-04-25 1987-11-05 Ricoh Co Ltd パリテイあるいはシンドロ−ム生成回路
JPH06500186A (ja) * 1990-03-02 1994-01-06 イーエムシー コーポレーション ディスク・アレイ・システム
JPH11168392A (ja) * 1997-12-04 1999-06-22 Toshiba Corp データ誤り訂正装置及びデータ誤り訂正方法
JP2002280909A (ja) * 2001-03-22 2002-09-27 Sanyo Electric Co Ltd エラー訂正装置

Also Published As

Publication number Publication date
EP1828899B1 (en) 2008-09-03
ATE407395T1 (de) 2008-09-15
JP2008525898A (ja) 2008-07-17
US7343546B2 (en) 2008-03-11
US20060156211A1 (en) 2006-07-13
CN101084486A (zh) 2007-12-05
EP1828899A2 (en) 2007-09-05
DE602005009577D1 (de) 2008-10-16
US20080126907A1 (en) 2008-05-29
WO2006071837A3 (en) 2006-12-28
TWI322348B (en) 2010-03-21
CN101084486B (zh) 2010-12-29
US8156406B2 (en) 2012-04-10
WO2006071837A2 (en) 2006-07-06
TW200634744A (en) 2006-10-01

Similar Documents

Publication Publication Date Title
JP4664988B2 (ja) シンドローム生成及びデータ復旧のための方法及びシステム
US7984361B2 (en) Raid system and data recovery apparatus using galois field
US7669107B2 (en) Method and system for increasing parallelism of disk accesses when restoring data in a disk array system
JP5102776B2 (ja) ストレージアレイにおける三重故障からの効率的な復旧を可能にする三重パリティ技術
US9529670B2 (en) Storage element polymorphism to reduce performance degradation during error recovery
US7779335B2 (en) Enhanced error identification with disk array parity checking
US7925927B2 (en) Simulator for determining data loss in a fault tolerant system
US6918007B2 (en) Memory controller interface with XOR operations on memory read to accelerate RAID operations
US7356731B2 (en) Uniform and symmetric double failure correcting technique for protecting against two disk failures in a disk array
JP2018508073A (ja) データ除去、割り当て、及び再構築
US20150100819A1 (en) Method of Recovering Data in a Storage Device
CN109918225B (zh) 基于飞腾平台的raid6数据恢复优化方法
Li et al. Tier-code: An XOR-based RAID-6 code with improved write and degraded-mode read performance
US7356757B2 (en) Fault tolerance system and method for one or two failed disks in a disk array
US20050278612A1 (en) Storage device parity computation
Jin et al. A comprehensive study on raid-6 codes: Horizontal vs. vertical
US7788525B2 (en) Fault tolerance system and method for multiple failed disks in a disk array
Lin et al. RAID-6 Reed-Solomon codes with asymptotically optimal arithmetic complexities
Kameyama et al. Erasure codes with small overhead factor and their distributed storage applications
Schuman et al. A performance comparison of open-source erasure coding libraries for storage applications

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091208

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100305

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100312

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100407

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100414

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100430

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: 20101221

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110107

R150 Certificate of patent or registration of utility model

Ref document number: 4664988

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140114

Year of fee payment: 3

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

LAPS Cancellation because of no payment of annual fees