RAIDとは
RAIDとは、複数のハードディスクを仮想的に一つのディスクに見せて利用する技術である。Redundant Arrays of Independent Disksの略称で、ディスクの冗長化や高速化を実現できる。そのため、サーバコンピュータなどで幅広く利用されている。
RAIDの実装
RAIDの実装には、ハードウェアで実装したものとソフトウェアによる実装とがある。ハードウェア実装の一つとして、サーバ筐体の複数のディスクを束ねて利用するRAIDコントローラと呼ばれるものがある。RAIDコントローラが複数のハードディスクを仮想的に見えるようにしてくれるため、OS側としてはRAIDコントローラを操作するドライバがあれば、ディスクの数を意識せずに利用することができる。 また、一つの外部ストレージとして複数のディスクを利用可能にしているディスクアレイ装置と呼ばれるものがある。この装置には、SCSIなどのデバイスのターゲットとして認識するようになっており、OS側は一般的な外部ストレージデバイスとして見ることができる。
ソフトウェアでの実装の場合は、OSレベルで複数のディスクを1つの仮想的なディスクに見せることができる。OSで処理するため、オーバーヘッドはCPUにいくが、ハードウェアがなくても利用することができる。LinuxカーネルやSolarisでも標準で利用することができる。
最近では、IntelのチップセットがSATAのディスクをRAIDとして利用できるため、家庭でも簡単に利用できるようになった。ディスクが大容量化して他の媒体へのバックアップが現実的ではなくなっている現状では、バックアップとして利用できる方法の一つとなっている。
RAIDレベル
RAIDの方法論として、RAID 0, RAID 1, RAID 5, RAID 6がある。また、それぞれを組み合わせたものがある。
RAID 0は、複数のディスクをストライピングとして利用する。データを複数のディスクに分散配置することで、高速化を狙った構成である。冗長性が全くないため、RAID '0'と呼ばれ、ディスクのどれか一つでも故障したらすべてのデータが失われる。
RAID 1は、複数のディスクに同じデータを書き込み、データの冗長性を持たせる構成である。同じデータを書き込むことをミラーリングとも呼び、耐障害性の高い構成である。一般的に同じデータを2本のディスクに書き込むため、2の倍数のディスク本数で利用する。この構成は全ディスク容量の1/2が実効容量となるので、利用効率は悪くなる。 4本以上で構成する場合は、ミラーリングしつつ、ストライピングで高速化を計ることも可能で、この場合は、RAID 1+0とかRAID 10と呼ぶことがある。
RAID 5は、パリティの計算結果を記録することで、一つのディスク障害が発生してもパリティからデータを復元することで対処可能にしたRAID構成である。パリティデータはディスクブロックの位置によって分散して記録する。ディスク1つ分の容量をパリティで利用するため、ディスクの数-1が実効容量となる。利用効率を高めながら耐障害性を高めることができるが、2つのディスクに障害が発生すると復旧ができなくなる。
RAID6は、RAID5のパリティの記録に加えて、別の計算結果に基づいたパリティを追加で記録することで、2つのドライブの故障にまで耐えられるようにしたRAID構成である。パリティデータはディスクブロックの位置によって分散して記録する。ディスク2つ分の容量をパリティで利用するため、ディスクの数-2が実効容量となる。RAID5より耐障害性を高めることができる。
【カテゴリ】:システム管理  Linux関連技術  
【Webセミナー】自社でOSSを採用しよう!今更聞けないOSSの基本セミナー
日程: | 11月22日(金)Webセミナー「BigBlueButton」を使用します。 |
内容: | OSSを導入したいけど、どこから手をつければいいかわからない方必見! |
ご興味のあるかたはぜひご参加ください。 |