RAID
予備ディスクドライブ (Spare Disk Drive) (予備ディスク)は、RAIDの構成で普段は使用されていないが、使用中のいずれかのディスクに障害が発生した時にそのディスクを置き換えることに備えて接続されているハードディスク装置である。ベンダーによって呼称は異なるが、ホットスペアに該当するものである。
たとえば、全部で4台のディスクのうち3台でRAID 5を構成するシステムを考える。RAID 5中のいずれか一台のディスクが故障すると、予備ディスクで故障ディスクを自動的に置き換えて元通りRAID 5を構成する。
これら4台のディスクでRAID 6を構成しても同じ実効ディスク容量が得られるが、それと比較して予備ディスクは以下の利点・欠点をもっている。
利点: RAID 5なのでRAID 6に比べて書込み速度が速い。予備ディスクは普段は動作していない(ただし通電は継続)ので寿命が長くなることが期待される。
欠点: 予備ディスクで故障したディスクを置き換えてリシンク(resync、再同期)が終了するまでの間(2013年の技術で1TBあたり10分以上)はシステムは冗長性を持っていないので、さらにもう一台のディスクが故障するとシステム全体の情報が失われる。
また、4台のディスクのうち3台でRAID 1を構成すると、上記のリシンク中の冗長性欠如のリスクは大幅に低減する。
RAID中に組み込まれたディスクはリアルタイム・オンラインで冗長性を作り出しているのに対して、予備ディスクは実際の故障発生時にオフラインバッチ処理でまとめて冗長性を作り出していると見ることもできる。
Q+CRC(A+C*4)=CRC(B*2+D*8) (加算と減算は共にXORで同一なので)
となるので、この連立方程式を解く。
P+A+C=B+D
P+A+C-B=D
P+A+C+B=D
これを代入して
Q+CRC(A+C*4)=CRC(B*2+D*8)
Q+CRC(A+C*4)=CRC(B*2+(P+A+C+B)*8)
Q+CRC(A+C*4)=CRC(B*2+(P+A+C)*8+B*8)
Q+CRC(A+C*4)=CRC(B*2+B*8+(P+A+C)*8)
Q+CRC(A+C*4)=CRC(B*(2+8)+(P+A+C)*8)
Q+CRC(A+C*4)=CRC(B*10+(P+A+C)*8)
Q+CRC(A+C*4)=CRC(B*10+(P+A+C)*8)
Q+CRC(A+C*4)=CRC(B*10)+CRC((P+A+C)*8)
Q+CRC(A+C*4)-CRC((P+A+C)*8)=CRC(B*10)
Q+CRC(A+C*4)+CRC((P+A+C)*8)=CRC(B*10)
ここで、CRCの生成多項式は原始多項式であるので、10と互いに素である。ここから中国の剰余定理を利用してBを算出する。つまり左辺を10(二進法で1010)で割る。 それを
P+A+C+B=D
に代入して D を求める。
RAID 6ではRAID 5の水平パリティ (PH) に加え、対角線パリティ (PD) もパリティとして使用される。
水平パリティとは異なり対角線パリティは専用のディスクに格納される。ディスク4台でRAID6を構成しているとき、対角線パリティの配置と計算は以下の通り。
PH1/B1 /C1 /PD1 A2 /PH2/C2 /PD2 A3 /B3 /PH3/PD3
PD1=PH1+C2+B3 PD2=B1+A2+PH3 PD3=C1+PH2+A3