私は読んでいます: http://community.netapp.com/t5/Tech-OnTap-Articles/Back-to-Basics-RAID-DP/ta-p/8612
これは基本的に、RAID-DPを対角パリティRAIDとして説明しています。しかし、私を少し悩ませていることが1つあります。この例は、合計を取ることを説明しているため、単純化する必要があります。これは十分に公平です-RAID4とRAID5の「通常の」パリティの場合-単純な加算和ではなくXORを実行します。これは、XORが非常に効率的であり、再構築できるために機能します。
パリティが次の場合:
A xor B xor C = P
次に
P xor B xor C = A
ただし、私を少し悩ませていることが1つだけあります。「XORスタイル」のデュアルパリティを実行すると、結果があいまいになるため、DP合計はそのように機能しません。連立方程式の束を作成します。これにより、ビット間の関係を把握できます。どのビットが等しく、互いに等しくないかがわかります。ただし、最終的には2つの有効なソリューションが得られます。1つはもう1つの「逆」です。
これが、実際の例で加法和を使用している理由だと思います...しかし、thatについて気になるのは、次のとおりです。ソースよりバイトの。 '合計'が1バイトの長さの値であり、合計が1バイトよりも大きい場合があります。私が推測する合計を「ラップ」することはできますが、それでもあいまいな結果が得られるリスクがあります。
パリティが効果的にでわかるのは、どのビットが互いに等しいか、どのビットが等しくないかです。しかし、最終的な結果はあいまいです。「正しい」答えを得るか、「正しい」答えを逆にすることができます。
何が足りないのですか?
(答えはRAID-6のやり方と似ているのではないかと思います)。
結果が追加に適さないことを心配しないでください。オーバーフローは無視してください。あいまいさはありません。たとえば、1桁の10進数を保持するバケットを想像してみましょう。
5 + 4 + 8 + 3 + 6 => 26。
1桁しかないので、パリティを「6」と書くだけです。次に、4番目のデータ桁を再構築する必要があります。加算の逆数は減算です。
6-(5 + 4 + 8 + 6)=> -17正の数が得られるまで、それに「10」を追加するだけで、3が欠落値です。
デュアルディスクの場合、単一の行で作業して情報を回復することはできません。複数の行を読み取ることができる必要があります。 Here は、行の対角パリティのアルゴリズムをカバーするUSENIXペーパーです。
たぶん http://www.netapp.com/us/media/tr-3298.pdf デザインを理解するのに役立つ詳細とリファレンスがありますか?