まずは、ご存じのない方のために簡単に解説しておきましょう。RAIDは、Redundant
Array of Inexpensive Disksの略で「レイド」と読みます。
直訳するなら安価な複数のディスクによる冗長化されたアレイ(配列)とでもいいましょうか?
で、まぁ、教科書的には、UCBの教授による' 87年の論文に起源があり……、なんていう説明がつきますが、
要するに複数のディスクの集合にデータを配置して、一部のディスクが故障してもアレイ全体のデータは保全されるというかたちで、信頼性を得ようという手法です。
件の論文では、その種類としてRAID1〜RAID5の5種類が挙げられていますが、現実にはすべての方式が現実の製品として実装されているわけではありません。
最近安価なPC用の製品としてよく利用されるのは、RAID1とRAID5でしょう。実際には、RAID0というものもありますが、これは厳密にはRAIDではありません。
もっとも単純なRAID1は、ミラーリングといわれる方式です。
これは、2台のディスクを用意してそれぞれに同一のデータを書き込むことで、1台が故障しても、もう1台で運用が続けられるというものです。
次に説明するRAID5のように書き込み時にパリティの読み出しと再計算などをせず、単に同じデータを2 台に書き込むだけなので、単体のドライブの場合とほぼ同じ速度で書き込むことができるのが特徴です。
読み出し時は実装によっては、双方のディスク時から別々のデータを読み出すことで高速化を可能にしているものもあるようです。
ただし、全体のディスクの容量の半分しか使えないという欠点があります。
![]() |
|
RAID1(ミラーリング)は、2つのディスクに同一のデータを書き込む
|
RAID5は、複数のディスクに順番にデータを書いていくほか、パリティと呼ばれるデータを書き込むことで冗長性を得ています。
たとえば、DISK1〜DISK4 の4台のディスクからなるRAID5によるアレイがあり、そこに、DATA1、DATA2、
DATA3……というデータのブロック(RAID5では一定の長さのブロック単位で書き込みます)を順に書いていく場合を考えてみましょう。
まず、DATA1はDISK1 に、DATA2はDISK2に、DATA3はDISK3と順次書き込んでいきます。
ここで、 DISK4にはDATA4ではなく、DATA1〜3から計算したパリティを書き込みます。
パリティは、DATA1〜3のデータの排他論理和(XOR)を取った値です。
くわしい解説は避けますが、この場合、DISK1〜4に書き込んだこれらのブロックのいずれかの1つが失われても、ほかの3つから失われたデータが復元でき、それによって冗長性が確保されています。
![]() |
|
RAID5では、パリティとして各ビットの排他論理和(XOR)を取った値を使用する
|
RAID5では、パリティを書き込むディスクをローテーションすることで、書き込み時のパフォーマンスを向上させています。
なぜなら、データを書くたびにパリティは必ず書かなくてはならず、パリティを書くディスクが同一(RAID4
の場合はそうです)だと、ディスクのアクセス速度の関係で全体的なスピードが低下してしまうのです。
とはいえ、書き込み時には、パリティを読み出して再計算し再度書き込まなくてはならないため、読み出し時に比べると書き込みのパフォーマンスは落ちてしまうことはさけられません。
RAID5の利用効率は、 4台のディスクから構成すると全体の3/4の容量というふうに、n台の場合は全体の(n-1)/n倍の容量となります。
![]() |
|
RAID0として知られるストライピングは冗長性はまったくないが、高速でのアクセスが可能
|
ちなみに、RAID0として知られるものは、「ストライピング(ブロックストライピング)」と呼ばれるもので、データの書き込みを複数のディスクに分散することで、速度の向上とより大きなボリュームサイズを得られます。
そのため、動画像などの編集などに適しています。
ブロックストライピングを利用したものという点ではRAID5と同じですが、RAID0にはパリティなどの冗長性はないため、1台が壊れると全体が利用できなくなるたってしまいます。
そのため、信頼性という点ではディスク1台の場合よりも劣ってしまいます。
このほかにも、RAID1とRAID0を組み合わせたものを、RAID10、RAID1+0などのように、メーカー独自の呼び方で呼ぶこともあります。
そのほかに ソフトウェア RAID
「ソフトウェアRAID」とは、一見するとミラーリングやストライピングといったRAIDの機能を、ハードウェアRAIDコントローラだけで実現しているように見えるが、実際には内部でPCのプロセッサによるソフトウェア処理が大部分を占めている方式を指す。
安価なRAIDカードは、この方式を採用していることが多い。
OSだけで実現する純粋なソフトウェアRAIDのことではないので注意しください。
かつてはさまざまなメーカーからRAIDを実現するソフトウェアが発売されておりましたが今では秋葉原のジャンク屋さんでしか手に入らないかもしれません。
LinuxやSolarisではまだ使っている方もいらっしゃるとは思いますが・・・
なぜなら、「Windows 2000 SERVER」にてソフトウェア RAIDが実現されてしまったからです。
また、IDE-RAID機器も1999年頃から安価で個人でも手に入りやすくなってきているからです。
そして、さらに、2003年春にIntelからチップセット「Intel 875P」や「Intel
865G/PE/P」にてICH(I/O Controller Hub)いわゆるサウスブリッジがICH5でRAID0とRAID1がIAA RD3.5によって「Windows 2000 Pro」「Windows XP」へ提供されるようになったからでしょう・・・
20040505