- 2009-07-24 (金) 9:00
- ストレージ
RAIDを構成する場合、やはりハードウェアRAIDで構築する方法が無難ですし、高速だし、信頼性も高いのでぜひそうしたいところですよね。
でも、意外とソフトウェアRAIDでも使用するRAIDレベルを考慮すれば、ハードウェアRAIDよりにまずとも劣らない性能を破棄するのです。
まず、ソフトウェアRAIDとハードウェアとは何かご説明しましょう。
ハードウェアRAIDとは
先にハードウェアRAIDからご説明します。
これは、RAIDを構築するのに専用のチップを搭載したPCIやPCI-Expれssの拡張ボードをコンピュータの拡張スロットに搭載して実現させるRAID方式です。
一番の特徴は、データの分割やパリティの計算のために作られたRAIDコントローラと呼ばれるチップの利用と、データを記憶しておくキャッシュメモリが搭載されていることです。
それによって、データ書込みにはライトバックモードで動作したり、読み込みには先読みが出来たりと高速なデータアクセスが期待できます。
さらに、突然電源が落ちたとしても、キャッシュメモリの内容が吹っ飛ばないように、専用のバッテリーが装着できるRAIDコントローラも多数存在します。
たとえばHPのSmartArrayなんかはほとんどのモデルでこのバッテリーを装着することが可能です。
さらにさらに、一つのRAIDコントローラで接続できるHDDの台数もソフトウェアRAIDよりも多いのが特徴です。
しかし、問題はその価格です。
RAIDコントローラ自体、数万~十数万はします。
それプラス、キャッシュメモリ用のバッテリーに数万、キャッシュメモリの容量が足りなければプラス数万と、結構高い構成になります。
企業レベルでは、このハードウェアRAIDのりようが当然です。
しかも、たいていの企業では思わず停電に備え、キャッシュメモリのバッテリーも標準でつけるところが多いでしょう。なかなか個人では手が出せません・・・。
ソフトウェアRAIDとは
ソフトウェアRAIDとは、先に述べたハードウェアRAIDでのデータ分割やパリティの計算、RAIDのリビルドデータの計算などをCPUが行う方式ほRAID構成です。
ソフトウェアと言っても、処理をするのはCPUです。
ハードウェアRAIDでは、RAIDデータを専用のハードウェアで処理するのですが、ソフトウェアRAIDではその処理までCPUが行う分、システムに影響を与えます。
これが、RAID5やRAID6などのパリティ計算が伴う構成でしたらなおさらCPUを使ってしまいます。これがソフトウェアRAIDが遅いと言われる理由です。
ソフトウェアRAIDでも、RAID0やRAID1などパリティ計算の不要なものでしたら、そこそこ速く、RAIDを組む意味も出てきますが、それ以外のレベルのRAIDで組もうとするから遅くなるのです。
と言うわけで、ハードウェアRAIDという選択肢が理想なのですが、ソフトウェアRAIDでもRAID構成を考えればそれなりに使えるものだということが言えます。
ソフトウェアRAIDの場合、ホットスワップできないことが多いのも難点ですね。
関連する記事
- RAID再入門その5:RAIDカードのあれこれ
- RAID再入門その7:RAIDの復旧できますか?
- RAID再入門その4:RAIDのパフォーマンス
- RAID再入門その2:RAIDレベルの説明
- RAID再入門その6:RAIDボリュームの最適サイズ
- Newer: docomo HT-03A購入後1週間レビュー
- Older: RAID再入門その2:RAIDレベルの説明
コメント:0
トラックバック:0
- このエントリーのトラックバックURL
- http://www.yamakawa.us/raid/158.html/trackback
- Listed below are links to weblogs that reference
- RAID再入門その3:ソフトウェアRAIDかハードウェアRAID from yamakawa.us