RAIDでデータの消失を防ごう

皆さんこんにちは! 管理人のBenです。前回の話で「ハードディスクは壊れてもデータ消失してません」とというお話をしました。
そのカギがRAID(レイド)です。RAIDとは基本的に、複数のハードディスクを組み合わせてより性能がいい一台のハードディスクとして利用する技術です。RAIDを使うと読み書きの速度が上がったり、ハードディスクが壊れてもデータの消失を防いだりできます。この一部分が壊れても全体として性能を維持できる状態を冗長性(じょうちょうせい)があると言い、このような状態を作ることを冗長化と言います。代表的なRAIDの種類を紹介します。

20151023_raid0.png
まずはRAID0(ゼロ)。これはストライピングと言って、データの読み書きを2台のハードディスクで分担するので全体として読み書き速度が向上します。ただし、一台壊れると基本的に全データが消えます つまり冗長性はありません。なお、図のAとかBは保存するデータを示したもので、次のRAID1のようにAが両方にあるということは同じデータを両方に保存しているということです。

20151023_raid1.png
次はRAID1です。こちらはミラーリングと呼ばれ同じ内容を2台のハードディスクに書き込みます。片方が壊れても同じ内容がもう片方にあるのでデータは大丈夫です。

20151023_raid10.png
こちらはRAID10で上記2つを組み合わせたものです。ミラーリングでそれぞれのペアの冗長性を持ちつつ、ストライピングで高速化を図ります。各ペアで1台ずつ壊れてもミラーリングのためデータは大丈夫です。ただ、ペアが全滅(図で言うとディスク1と2が死亡)した場合はアウトです。

20151023_raid5.png
ここからはちょっと複雑になってRAID5です。パリティというデータを修復するコードのようなものをデータとは別のディスクに保存します。たとえば図のようにディスク2が死亡した場合、残っているデータAとパリティを使ってBを修復します。この図の場合のパリティは、データAとBのどちらが失われても修復できるようなコードとなっています。その結果、どのハードディスクでも1台までだったら故障してもデータを復活できるようになっています。

20151023_raid6.png
最後にRAID6です。これはパリティを2台に保存することで任意の2台が壊れても大丈夫な仕組みです。この場合のパリティは・・・複雑で私もわからないので割愛します(^^;

ざっと復習しましたが、このほか使える容量や読み書き速度などもRAIDの種類とハードディスクの台数で異なります。機会がありましたら私の運用記録とともに書きたいと思います。ところでRAID2~4はないのでしょうか? どうやらパリティを使った方式を四苦八苦した過程みたいで、RAID5誕生の人柱になったようです

この記事へのコメント


この記事へのトラックバック