RAIDの概要と種類
概要
RAID(Redundant Array of Independent Disk)とは、
複数のディスクにデータを分散し冗長性デ−タを付加して格納し、ディスク障害のときにデータの再生を可能とするディスクアレイのことである。
ディスクアレイのアーキテクチャを以下に示す。
- RAID1 : ディスクミラーリング
- RAID2 : ストライピング(ハミングコード)
- RAID3 : ストライピング(パリティコード)
- RAID4 : 独立R/Wアクセス(パリティディスク固定)
- RAID5 : 独立R/Wアクセス(パリティディスク分散)
- RAID6 : 独立R/Wアクセス(パリティディスク分散(2台)
RAID0
RAID0はストライピングと呼ばれる。
データをブロック単位に分割し、複数のディスクに分散して配置することで読み込み/書き込み速度を向上する。
ただし、RAID0には冗長性がない為、ディスクに障害が発生した場合、すべてのデータが失われる。
特徴
- データ使用効率が最も良い。
- 冗長性を持たないため、ディスクに対する耐障害性がない。
RAID1
RAID1はミラーリングと呼ばれる。
同じデータを2つのディスクに書き込むことで、片方のディスクに障害が発生した場合でも、データが失われない。
特徴
- データの2重化(ミラーリング)。
- システムの高信頼性。
- 容量コストが倍になる。
- リードパフォーマンスの向上。
RAID2
データ本体とエラー修正用の冗長コードをそれぞれ複数の専用ドライブに分割して記録する方式である。
データはバイト(あるいはビット)単位で分割される。
冗長コードには、DRAM等で使用されるハミングコードが採用されているが、この仕組みはHDDでは動作も遅く実用的ではない。
また、データと冗長コードはそれぞれ複数の専用ドライブが必要であり、最小構成の場合でもデータ用2台、修正コード用3台の計5台のHDDが必要となる。
そのため、RAID2が採用されているものは見受けられない。
RAID0+1(RAID01)
RAID0とRAID1を組み合わせた方式である。
データをブロック単位に分割して並列に書き込むとともに、2つのディスクにまったく同じデータを書き込む。
特徴
- データをブロック単位に分割(ストライピング)し、さらに2つのディスクへ同時に書き込む(ミラーリング)。
- RAID0の高速性とRAID1の冗長性を組み合わせたRAID方式。
- 容量コストが倍になる。
RAID1+0(RAID10)
RAID1とRAID0を組み合わせた方式である。
2つのディスクにまったく同じデータを書き込み、さらに、データをブロック単位に分割して並列に書き込む。
RAID1+0では、RAID0を構成するRAID1の構成ドライブ2台がどちらも故障しない限り、データは破壊されない。
特徴
- 2つのディスクへ同時書き込む(ミラーリング)を行い、かつ、データをブロック単位に分割(ストライピング)して書き込む。
- RAID1の冗長性とRAID0の高速性を組み合わせたRAID方式。
- 容量コストが倍になるが安全性の高いRAID構成である。
RAID3
データをバイト(ビット)単位で分割して並列に書き込む。
エラー訂正コード(パリティコード)を付加することでエラー訂正/データ復旧を可能にしている。
また、パリティドライブが1台なのでアクセスが集中し、書き込み処理でボトルネックが生じる。
サーバ等でRAID3を用いるメリットはなく、あまり採用されないRAIDレベルである。
特徴
- パリティディスクの採用。
- 容量コストパフォーマンスの向上。
- リード時のエラーリカバリー。
- 障害ディスクの再構築。
- バイト単位のストライピング。
- 回転の同期化によりアクセス効率を図る。
- 大サイズデータ転送により効果大(イメージデータ、科学技術計算等)。
- 小サイズデータ転送に不向き(トランザクション処理)。
RAID4
RAID4はRAID3のデータ処理単位をブロック単位で行うことで高速化したものである。
データをブロック単位で分割して並列にディスクに書き込み、パリティコードを固定した専用のパリティディスクに書き込む。
しかし、読み出しは高速だが、書き込みはパリティディスクが1台なのでアクセスが集中しボトルネックが生じるため遅くなる。
特徴
- パリティディスク(固定)の採用。
- ライト時は並列処理できない。
- 独立I/Oアクセス。
- トランザクション処理に効果大。
- パリティコード更新時のボトルネック(ライト時)。
- 2回のディスクアクセスが必要(旧データおよび旧パリティの読み取り、新データの書き込みおよび新パリティの計算と書き込み)。
RAID5
RAID4で固定していたパリティディスクをブロック単位でシフトすることで、パリティディスクへのアクセス集中を防ぐ。
特徴
- パリティディスク(分散)の採用。
- ライト時も並列処理が可能。
- 大量、小サイズデータの処理に効果大。
- 独立I/Oアクセス。
- トランザクション処理に効果大。
- パリティコード更新時のボトルネック(ライト時)。
- 2回のディスクアクセスが必要。
- 信頼性、可用性。
- 容量コストパフォーマンスの向上。
- リード時のエラーリカバリー。
- 障害ディスクの再構築。
RAID6
RAID5のパリティディスク1台を2台に増やし、同時に2台のディスクが故障した場合もデータ回復が可能である。
特徴
- パリティディスク(分散)2台の採用。
- ライト時も並列処理が可能。
- 独立I/Oアクセス。
- トランザクション処理に効果大。
- 信頼性、可用性。
- RAID5より信頼性高い。
- リード時のエラーリカバリー。
- 障害ディスクの再構築。