はてなブックマーク Yahoo!ブックマークに登録  印刷

特集 RAIDの基礎知識

2.そのほかのRAIDレベル

デジタルアドバンテージ
2001/02/27

 ここでは、複数のRAIDレベルを組み合わせる技術と、あまり利用されることのないRAIDレベルを紹介しよう。またRAIDに含まれる技術ではないが、RAIDにとって重要な機能も併せて紹介する。

複数のRAIDレベルの組み合わせ

 RAID 0/1/5はそれぞれ異なるメリット/デメリットを持っており、決して万能とはいえない。そこで考案されたのが、複数のRAIDレベルを組み合わせる技術である。発想としては、あるRAIDレベルが不得意とする機能は別のRAIDレベルでカバーすることで、総合的にデメリットの少ないディスク・サブシステムを実現する、というものだ。単一のRAIDレベルに比べ、必要最小限のディスク台数が多くなりコストがかかりやすいものの、複数のRAIDレベルの組み合わせは、耐障害性の向上と高速化、大容量化を同時に実現する有効な手段としてよく利用されている。実際、ハードウェアRAIDコントローラには、前述のRAID 0/1/5という単体のRAIDレベルだけではなく、これらを組み合わせたRAIDレベルをサポートしている製品が多い。

 厄介なのは、こうしたRAIDレベルを組み合わせたRAIDには標準が存在しないことである。その呼称から仕組みまで、ベンダによって異なっているのが現状だ。呼称は同じにもかかわらず、動作原理は異なるという例すらあるので注意したい。以下では、比較的多くのベンダが採用している組み合わせRAID技術を紹介しよう。

■RAID 0とRAID 1の組み合わせ

 RAID 0では耐障害性がないこと、またRAID 1では複数のディスクをまとめて大容量の単一ディスクを構築できないことが、それぞれのデメリットである。しかし、この2つのRAIDレベルを組み合わせれば、両者のデメリットを解消し、逆に両者のメリットを享受できる。この組み合わせRAID技術は、RAID 10あるいはRAID 0+1、RAID 1+0などと呼ばれる。

RAID 0とRAID 1を組み合わせたRAIDの動作原理
RAID 0では複数の「ディスク」にまたがってデータを配分するが、この場合は複数の「RAID 1アレイ」を単位として、RAID 0のアレイを構成する。各「RAID 1アレイ」では、2台のディスクをミラーリングして耐障害性を確保している。これによりRAID 0のデメリットである耐障害性のなさが解消されると同時に、RAID 1における性能の問題もRAID 0による高速化である程度相殺される。

 この組み合わせRAIDでは、RAID 1により耐障害性を、またRAID 0により高速化と大容量化を実現する。最低限のディスク台数は4台と多めだ。

 RAID製品によっては、上図において「RAID 0」と「RAID 1」を入れ替えたようなディスク・アレイの構成を採るものもある。つまり、RAID 0でストライピングされたディスク・アレイを、RAID 1でミラーリングするというものだ。しかしこのアレイ構成では、1台ディスクが故障すると、次の2台目の故障でデータが失われる可能性が非常に高いという欠点がある。上図のアレイ構成なら、1つのRAID 1アレイを構成するディスク2台が両方とも故障するまで、データは保持される。そのため、実際のRAID製品では、上図のアレイ構成を採用していることが多い。

 筆者が調べた限りでは、この組み合わせRAID技術の呼称は、上図の方式を「RAID 1+0」あるいは「RAID 10」、またRAID 0のディスク・アレイをRAID 1でミラーリングする方式を「RAID 0+1」「RAID 01」と呼ぶことが多い。しかし、これとはまったく逆に「RAID 1+0」と「RAID 0+1」を扱っている例も見かけた。この組み合わせをサポートするRAIDコントローラは多いものの、このように機能が異なる場合があるので、十分な注意が必要だ。

■RAID 50

 RAID 0とRAID 5を組み合わせたRAID技術のことを、RAID 50あるいはRAID 0+5、RAID 5+0などと呼ぶ。これも前出のRAID 10(RAID 1+0、RAID 0+1)同様、標準として定められているわけではなく、ベンダによって呼称や実装形態が異なる。基本的には、前出の図「RAID 0とRAID 1を組み合わせたRAIDの動作原理」において、RAID 1で構成されていたディスク・アレイをRAID 5で構成したものだ。単なるRAID 5に比べ、RAID 0によるストライピングによりデータ転送速度が向上するのがメリットである。最低限のディスク台数は6台と多い。

  RAID 0 RAID 1 RAID 5 RAID 10 RAID 50
耐障害性
なし
性能 シーケンシャル読み出し
シーケンシャル書き込み
ランダム読み出し
ランダム書き込み
リビルド時*1
必要なディスク台数
2台以上
2台*2
3台以上
4台以上
6台以上
ディスク容量の利用効率(n:ディスク台数)
100%
50%
100×(n-1)/n%
50%
100×(n-1)/n%
実装にかかるコスト
各RAIDレベルの比較
耐障害性や性能については「優/良/並」、コストについては「小/中/大」の3段階で相対的にランクを付けてみた。理論値をもとに各ランクを決めているので、実際のRAID製品とは食い違う場合もあるので注意していただきたい。
*1 故障したディスクを正常なものに交換した後、RAIDのディスク・アレイを元の状態に修復する作業をリビルド(Rebuild)という。リビルドの最中は、各ディスクへの読み書きが頻繁に生じるため、通常時と比べ、PCからアクセスされたときの性能は下がる
*2 3台以上のハードディスクでミラーリングするRAID製品も存在するが、基本的には2台でディスク・アレイを構成する


あまり利用されないRAIDレベル

 RAID 0/1/5以外のRAIDレベルは、動作原理の複雑さやコスト・パフォーマンスの低さといった問題により、現実に利用されることはほとんどない。現在では、理論的な構成としてのみ残っているといえるだろう。以下では、利用されなくなった理由も含めて、廃れてしまったRAIDレベルを紹介しよう。

■RAID 2

 RAID 2では、エラーを修復するための冗長コードを元のデータとともに、複数のディスクにまたがって記録する。特徴は、冗長コードが多ビットのECC(Error Correcting Code:誤り訂正符号)であることと、データを配分するときの単位サイズがブロック(セクタ)単位ではなくbitまたはbyte単位であることだ。

 多ビットのECCによる冗長コードは、元のデータに対してそのサイズが大きくなりがちで、容量面でのオーバーヘッドが大きいというデメリットがある。例えば、代表的なECCの1つであるハミング符号を用いると、元のデータを2台のディスクに分散するには、冗長コードだけのために3台のディスクが必要になってしまう。元のデータより冗長コードの容量を小さくするには、元のデータを格納するディスクを4台以上にしなければならない。

 またECCの計算は、パリティより複雑で時間がかかるため、速度面でもオーバーヘッドは大きい。こうしたデメリットのため、市販のRAID製品にRAID 2はほとんど実装されていない。

■RAID 3

 RAID 3もまた、元のデータに冗長コードを加えて複数のディスクに記録する。冗長コードには、RAID 5と同じパリティを採用する。RAID 5と大きく異なるのは、

  • 各ディスクにデータを配分する際の単位サイズが、ブロック(セクタ)単位ではなくbitまたはbyte単位である
  • パリティが特定のディスクに保存される(全ディスクには分散されない)
  • 高速化のためには、複数のディスクをまったく同時に読み書きするための同期機能が必要

という点だ。特に3番目の条件を満たすには、ほかのディスクと同期して回転させたり、データ転送したりするための仕組みを持った特殊なディスクが必要となるほか、ディスクごとにバスを別々に設けてRAIDコントローラと接続するといった工夫も必要になるなど、コスト面でほかのRAIDレベルより不利である。このため、市販のRAID製品でもRAID 3を実装している製品は、それほど多くはない。

■RAID 4

 RAID 4は、RAID 5と同様に、元のデータからパリティを生成して、ブロック単位で複数のディスクに記録する、という点でよく似ている。異なるのは、パリティを全ディスクに分散するのではなく、特定のディスクだけに格納する点だ。つまり、元のデータとパリティそれぞれを格納するディスクが別々に分かれている*3。この原理のため、RAID 4では、データの書き込みが発生すると、パリティ用ディスクへの書き込みが集中してしまい、それがボトルネックとなって書き込み性能が下がってしまう。このデメリットをパリティの分散書き込みで改善しているのがRAID 5である。つまり、RAID 4は事実上RAID 5で代替されており、RAID製品でもRAID 4をサポートしているものはほとんどない。

*3 決まったパリティ用ディスクを持つという点では、RAID 4とRAID 3は同じである。両者の決定的な違いは、RAID 3がbitまたはbyte単位でデータを各ディスクに配分するのに対し、RAID 4はRAID 5同様、ブロック(セクタ)単位でデータを配分するという点だ。

■RAID 6

 RAID 6は、RAID 5の改良版といえる技術で、1つのデータ・ブロックにつき2つのパリティを生成する。これにより、同時に2台のハードディスクが故障しても、元のデータを修復可能としている。この耐障害性の高さがRAID 6のメリットである。

 しかし、パリティが増えた分、その計算や書き込みのオーバーヘッドも増加するため、特に書き込みの性能は高くない。また、パリティ用に2台分のディスク容量を必要とするため、ディスクの利用効率はRAID 5より下がる。それに、2台のディスク故障に備えるだけなら、RAID 5に後述のホットスペアを組み合わせることでも代替できなくはない(短時間で2台が故障したら、RAID 5+ホットスペアだと復旧できないが)。こうした理由から、RAID 6を実装している製品は少ない。

RAIDの耐障害性を支える技術

 最後に、RAID 1/5などでディスクが故障した際に役立つ機能を紹介しよう。

■ホットスワップ(hot-swap)

 ホットスワップとは、着脱可能な電気機器を、システムが通電された状態のまま取り外して、代替機器と交換・装着する操作のことを意味する。システム全体を止めることなく、一部の部品だけをホットスワップで交換することにより、ユーザーに対するサービスを中断させずにシステムの修理や機能向上を図ることができる。

 一般的に、通電された状態の電気回路では、何の対策もせず、電気信号の配線を突然切り離すと電気回路が故障することがある。そのため、ホットスワップ対応の電気機器は、回路が故障しないよう、特殊な対策が施されている。例えば、大きな電流が流れる電力線が切り離される前に、電気信号の配線を切り離す、といった工夫だ。コンピュータ機器の場合は、取り外す前にその機器へのアクセスを停止するといったソフトウェア処理も必要になる。

 RAIDにより耐障害性を高めているディスク・サブシステムでは、故障したディスクを交換する際、いちいちコンピュータ・システム全体を止めずに済むよう、ホットスワップ対応のドライブ・ベイを導入していることがある。その場合、故障したディスクをドライブ・ベイから取り外し、新品に取り替えるといった作業の間、コンピュータ・システムはサービスを止めることなくユーザーに提供し続けることが可能だ。ホットスワップ非対応の場合は、いったんコンピュータを停止して電源を切り、ディスクを交換してから再起動しなければならない。

■ホットスペア(hot-spare)

 ホットスペアとは、電気機器の故障に備えて、あらかじめ予備の代替機器を通電状態で待機させておくことを意味する。あるいは、待機状態にある予備の機器のことを指す。ホット・スタンバイあるいはオンライン・スタンバイとも呼ばれる。ホットスペアを用意しておけば、ある機器が故障したとき、その代わりに予備の機器を稼働させ、故障発生前の状態に修復する、という作業を自動化することができる。

 RAIDにより耐障害性を高めているディスク・サブシステムでは、ホットスペアがよく実装される。ホットスペア用として設定されたディスクは、通電された待機状態にある。もし、1台のハードディスクが故障した場合、ディスク・サブシステムを管理しているRAIDコントローラは、故障したディスクを論理的に切り離し、ホットスペア用ディスクを起動する。そして、残っているデータとパリティ情報などからホットスペアのディスクに必要なデータを書き込み、元の正常な状態に復旧させる。以上の処理がすべて自動的に実行されるのが、ホットスペアのメリットである。ホットスペア用ディスクを用意していない場合、ディスクの故障時には、手動で正常なディスクに交換するまで、そのディスク・サブシステムは耐障害性が低下した状態で運用せざるを得なくなる。記事の終わり

  関連記事(PC INSIDER内)
最新IDE RAID事情
 
 

 INDEX

  [特集]RAIDの基礎知識−RAIDレベルを理解しよう−
    1.よく利用されるRAIDレベル
  2.そのほかのRAIDレベル
 
「PC Insiderの特集」
System Insider フォーラム 新着記事

@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

RSSフィード


スキルアップ/キャリアアップ
情報マネジメント_K:ストレージ
- PR -
@IT Special -PR-
「結婚してからは自宅で仕事」をかなえる
シン・クライアントの確かなセキュリティ

New!
“Exchange Server 2007 SP1”
アップグレードする本当の理由とは?

New!
★オープンソースと商用製品のAPサーバ★
導入前に考えておきたい7つのポイント!

New!
「エクスペリエンスを作るための3つの
ステップ」にこだわったDBツール

New!
ミッションクリティカルの常識を変えた!
“データグリッド”導入の効果とは?

経済性とエネルギー効率――2つのエコに
優れたオープンなストレージ環境とは?

2名のエンジニアが実機で設定を体験!
アライドテレシス新L3スイッチのCLIとは?

MyEclipseの強力なJSFビジュアル開発
機能で親切な購入フォームを構築しよう

【最終回】現場が会社を変える!あなたの
そばにも“いぶき”が現れるかもしれない

必見!Exchange Server 2007
円滑な移行のポイントはコレだ!

“落し穴”――統制管理の脆弱性にメス!
問題が起きてからではもう遅い!

“役に立つ”のに意外と知られていない?
開発効率を高めるデバッグ・テクニック

【x86サーバアンケート結果:後編】
読者からのお悩みにお答えします!!

不用意なメールセキュリティ対策が・・・
管理者の(ちょっとトホホな)体験談

お勧め求人情報

キャリアアップ 〜JOB@IT
@IT Special -PR-
  New! 今のDB選び、本当に正しいですか?
最小構成なら10万円以下も可能なこの選択

  New! 「申し訳ございません!個人情報が・・」
社員の動き、本当に把握できてますか?

  New! 迫るJ−SOX法の適用。今からでもまだ
間に合います!統制管理を成功させろ!!

  「結婚してからは自宅で仕事」をかなえる
シン・クライアントの確かなセキュリティ

  “Exchange Server 2007 SP1”
アップグレードする本当の理由とは?

  高信頼なシステムを支えるAPサーバの選定
押さえておきたい7つのポイントとは?

  「大量データを一括登録・変更したい!」
PDCAサイクルで【よくある問題点】を解決

  ミッションクリティカルの常識を変えた!
“データグリッド”導入の効果とは?

  管理者の負担減!サーバルームに出向かず
サーバが目の前にあるように操作ができる

  IT課題全般や、MS製品に関する悩み……
一人で悩んでないで、ここで解決!

  ユーザー・SEを魅了する新しいL3スイッチ
アライドテレシスの新製品に現場の反応は

  MyEclipseの強力なJSFビジュアル開発
機能で親切な購入フォームを構築しよう

  RAIDじゃない!失敗しない次世代
ストレージ戦略に必要なものって一体?

  「マイクロソフトだから私は成長できた」
ITコンサルタントが実例を語る!

  分析対象は「動いているプロジェクト」
“産学連携だからこそ”のメリットとは?

  内部統制を強化する【5つ】のステップ
「現状把握」が確実なセキュリティを生む

  【最終回】“いぶき”のBI奮闘記からの
教訓――現場の知恵が会社を変える!!

  必見!Exchange Server 2007
円滑な移行のポイントはコレだ!

  シンプル・イズ・ザ・ベストな組み込みDB
「Oracle Berkeley DB」の実力とは?

  毎日会社で使うファイルサーバ、あなたの
会社ではこんな「あるある」起こってる?

  “落し穴”――統制管理の脆弱性にメス!
問題が起きてからではもう遅い!

  個人事業主・SOHO・中小企業の方、必見!
スモールビジネスを“本気”で応援します!

  【問題】「ITエンジニアのたしなみ」とも
言われる資格は何でしょう? 答えはコチラ

  “役に立つ”のに意外と知られていない?
開発効率を高めるデバッグ・テクニック

  次世代DBエンジニアに必要なスキルとは?
〜エンジニア・キャリア進化論(第4回)〜

  ユビキタス・コミュニケーションを実現
するサービス実行基盤「WebOTX」とは?

  提案から実装まで責任を持って運営していく
技術志向のITコンサルタントを目指せ!

  転職する前に知っておきたい、外資系企業の
どこまで「ウソ」で、どこまで「ホント」?

  ITエンジニア5年目の彼が選んだキャリアパス
「講師」という仕事の魅力って何?

  顧客企業に切られた―― そのときどうする?
【実録】これがITコンサルタントの仕事だ!

  「iPhoneプレゼント」――と思ったら!?
脅威は、電子メールだけじゃない!

  米Fortune誌、環境に優しい企業トップ10
IT業界として唯一選ばれた企業とは?

  マニュアルを見ないでも利用可能!
クライアントPCを簡単に管理する方法は?