自作PCやそれ関連に携わっていたり触ったことがある人は一度は聞いた事がある(と思う)RAID
と呼ばれるもの。
それは一体何なのかを素人ながらまとめて行きたいと思う。
RAIDとは
サーバー用のHDD等に用いられる技術であり、複数のHDDを組み合わせることによりサーバーに対する安全性の向上や大容量化、高速化を行う事ができる。
なぜ大容量化や高速化ができるのか
・ 大容量化
→単純に複数のHDDを使用することになるため、全てのHDDの合計容量が使えるようになる(例外的なRAIDもあり)
・高速化
→HDD1台だけだと10秒かかるような書き込みであっても、複数台(今回は5台と仮定)使用することにより書き込みの分担を行い、2秒という短時間で書き込みが行えるようになる
RAID構成
RAID 0(ストライピング)
RAID0は大容量化と高速化に特化したRAID
よく一般的に聞いたりするのはこの構成だと思う。
複数台のHDDを一つのHDDとして認識し使用するため、データを分散させ高速な読み書きを可能にする。
また、全てのHDDの合算容量が使用できる容量でもある。
但し、複数台のHDDを一つのHDDとして使用しているため、一個のHDDでも破損や動作不良になってしまったら
データの復旧は困難とされている。
RAID 1(ミラーリング)
RAID 1は安全性に特化したRAID
ミラーリングという名前の通り、メインとして使用するHDDのデータを全て別のHDDへ複製する
そのため、2台以上HDDが必要になってくるが実際に使用できるのは1台のみ。
但し、ミラーリングしたHDDとメインでのHDDが同時に壊れることがない限りデータが損失しない。
RAID 5(パリティ付きミラーリング)
RAID 5は大容量化と高速化をしつつ、最低限の安全性を保持したRAID
このRAIDはHDDを最低3台必要とする。各々のHDDに復旧用の「パリティデータ」が生成される
HDD1
: [データ1] [データ2] [パリティデータ5&6]
HDD2
: [データ3] [データ4] [パリティデータ1&2]
HDD3
: [データ5] [データ6] [パリティデータ3&4]
上記を見てわかる通り、1台のHDDは壊れてもパリティデータから復元が可能だが、
2台以上壊れるとデータ復旧が不可能になる。
だが、これによりRAID 0 には劣るが、高速化等が得られるようになる上に安全性も確保できるようになった。(但しパリティデータ分の容量が必要になったため、使用できる容量が多少減っている)
RAID 6(ダブルパリティ)
RAID 6はRAID 5をより向上させたRAID
RAID 5では最低3台のHDDが必要だが、RAID 6では最低4台必要になってくる。
HDD1
: [データ1] [データ2] [パリティデータ5&6]
HDD2
: [データ3] [パリティデータ3&4] [パリティデータ5&6]
HDD3
: [データ5] [パリティデータ1&2] [パリティデータ3&4]
HDD4
: [データ4] [データ6] [パリティデータ1&2]
上記の通り、2台のHDDは壊れても大丈夫だが、3台以上はデータ復旧が不可能になる。
RAID 10
RAID 10は[RAID 0]と[RAID 1]を組み合わせたもの。
HDDを最低でも4台必要とし、2台はRAID0で、もう2台はRAID1で稼働している。
そのため、各々1台の破損は復旧できるが、ミラーリングをしているHDDも壊れたらデータ復旧ができなくなる。
HDD1
: [データ1] [データ3] [データ5]
HDD2
: [データ1] [データ3] [データ5]
HDD3
: [データ2] [データ4] [データ6]
HDD4
: [データ2] [データ4] [データ6]
結局どのRAID使えばいいん?
- 構築にかけれるお金
- 復旧にかけれる時間
- 信頼性や安全性をどれほどあげるか
- 速度や容量をどれほどあげるか
ここら辺を考えて構築したらいいと思う。
RAID 0
とにかく速度と容量が欲しい。
ただ壊れて一切データ戻ってこなくても関係ない人はこれ。
RAID 1
とにかく安全性が欲しい。
その代わり速度も容量も犠牲にするけど、費用も少なく抑えれるから、そういう人はこれ。
RAID 5
費用はかけれないが、ある程度の安全と速度が欲しい。
RAID 6
RAID5と同じ速度ではあるけど、費用はある程度確保できる。
ただ、もうちょい安全性が欲しい人はこれ。
RAID 10
費用をバンバンかけれる代わりに安全性と速度が欲しい。