ハードウェアRAIDとソフトウェアRAID
RAID(Redundant Array of Inexpensive Disks)システムは、ソフトウェアまたは専用ハードウェアという2つの基本的な方法のいずれかで実装されます。どちらの方法も非常に有効であり、それぞれに利点があります。
IntelおよびAMDアーキテクチャのシステムとWindowsオペレーティングシステムが支配する中小企業の分野では、ハードウェアRAIDが非常に一般的であるため、ソフトウェアRAIDについて多くの混乱が生じています。これは、後述するように、専用ハードウェアとして宣伝されながら実際にはソフトウェアRAID製品であり、俗に「フェイクRAID」と呼ばれる詐欺的製品の氾濫に少なからず起因しています。
RAIDが最初に開発された当初は、プロプライエタリUNIXを実行するハイエンドのエンタープライズサーバーでソフトウェアとして使用されており、システムは非常に安定していて、ハードウェアは非常に強力で堅牢であったため、ソフトウェアRAIDは非常に良く機能しました。初期のRAIDは主にミラーリングRAIDまたは非常に単純なパリティRAID(RAID 2のような)に焦点を当てており、オーバーヘッドはほとんどありませんでした。
RAIDの需要がより小規模なサーバー空間に広がり始め、パリティRAIDが普及するにつれてより大きな処理能力が必要になると、x86空間の非力なプロセッサが、特にRAID 5のRAIDの処理負荷によって大きな影響を受けることが問題になりました。これに加え、これらのプラットフォームで広く使用されているオペレーティングシステムにはほぼソフトウェアRAIDの実装がなかったため、ハードウェアRAID、つまりオフロードプロセッサボード(グラフィックスのGPUに類似)が自然に発展しました。このボードはCPU、メモリ、ファームウェアを備えた独自の完全なコンピュータを内蔵していました。
ハードウェアRAIDはx86サーバー空間でのRAIDオーバーヘッド問題を解決するのに非常に効果的でした。CPUがより強力になりメモリが豊富になるにつれて、Windows Serverのような一般的なx86オペレーティングシステムがソフトウェアRAIDオプションを提供し始めました。特にWindowsのソフトウェアRAIDは貧弱な実装として知られており、サーバーオペレーティングシステムバージョンでのみ利用可能だったため、主にWindowsを扱うシステム管理者のコミュニティにおけるソフトウェアRAIDへの評価の低さを招きました。
エンタープライズサーバー空間とコモディティx86空間での歴史的な実装により、最初はテクノロジーによって、その後は純粋にイデオロギーによって支えられた2つの市場間の自然な分離が生まれました。コモディティ空間のシステム管理者と話すと、ほぼ例外なくハードウェアRAIDが唯一の選択肢だと聞かされます。一方、メインフレーム、RISC(Sparc、Power、ARM)またはEPIC(Itanium)サーバー(UNIXサーバーとも呼ばれる)空間のシステム管理者と話すと、これらのクラスのシステムではハードウェアRAIDが利用できないため、ソフトウェアRAIDは当然の結論として、しばしば驚かれることがあります。どちらの陣営も、反対側の状況を本当に理解しているわけではなく、Linux、Solaris、FreeBSDのようなエンタープライズUNIXプラットフォームがコモディティハードウェアプラットフォーム上で非常に人気が出て広く理解されるようになった最近まで、これら2つのスキルセット間の交差は比較的まれでした。
コモディティサーバー空間をさらに混乱させたのは、支配的なオペレーティングシステムベンダーがサーバー以外のオペレーティングシステム市場向けのソフトウェアRAIDを提供しないという空白を埋めるために、また技術的に精通していない対象ユーザーへのマーケティングを試みるために、多数のベンダーが実際にはソフトウェアRAIDである「ドライバー」付きの非RAIDコントローラーカードを販売し、その結果の製品が実際にハードウェアRAIDであるかのように偽り始めたことです。これは、最善の場合でも大きな混乱を生み、最悪の場合にはソフトウェアRAIDへの強い嫌悪感をもたらしました。なぜなら、データ保護を核心機能とするシステムの市場が欺瞞と混乱の上に成り立っている場合、ほぼ例外なく災害をもたらすからです。フェイクRAIDシステムはパフォーマンスと信頼性の問題を定常的に引き起こします。理論的にはサードパーティのソフトウェアRAIDパッケージは合理的な選択肢ですが、ソフトウェアRAID市場の現実は、実質的にすべての高品質なソフトウェアRAID実装はオペレーティングシステム自体(Linux、Mac OSX、Solaris、Windows)またはファイルシステム(ZFS、VxFS、BtrFS)のネイティブコンポーネントであり、一次ベンダーによって提供・維持されているため、少数の小規模な正規ソフトウェアRAIDプレーヤーが存在するWindowsデスクトップ空間を除いて、サードパーティ製品の余地や目的はほとんどありません。しかしそれらもフェイクRAIDプレーヤーに影を潜めがちです。
今日では、コモディティプラットフォームは非常に強力であり、計算リソースとメモリリソースの両方に劇的な余裕がほぼ常に存在するため、ハードウェアRAIDの必要性はほとんどありません。ハードウェアRAIDは代わりに、リソース負荷の軽減ではなく、主に機能に基づいて競合しています。コモディティサーバー空間でのハードウェアRAIDとソフトウェアRAIDの選択は、特定のパフォーマンスや機能ではなく、ほぼ完全に好みと市場の慣性によるものです。ハードウェアおよびソフトウェアのアプローチ自体よりも、個々の実装の方が製品オプションを検討する際にはるかに重要です。
今日のハードウェアRAIDは、標準的なRAIDレベルのかなりシンプルな実装で「汎用的」な傾向があります。ハードウェアRAIDは、リソース使用率の削減(CPUとメモリのオフロード)、障害ドライブの「ブラインドスワップ」機能、ストレージ管理の簡素化、オペレーティングシステムから抽象化されたブロックレベルのストレージ、ドライブ近くの高速キャッシュ、バッテリーまたはフラッシュバックアップキャッシュによってその価値を発揮する傾向があります。ソフトウェアRAIDは、低消費電力、低い取得コスト、オペレーティングシステムとの統合管理、独自のまたは高度なRAID機能(標準的なRAID 5のライトホール問題を持たないZFSのRAIDZなど)、そして全般的に優れたパフォーマンスによってその価値を発揮する傾向があります。これは本当に優劣の議論ではなく、非常に特定の状況に対してどちらがより適しているかという議論であり、最も重要な要素はしばしば慣れ親しみや快適さ、あるいはデフォルトのベンダー提供内容です。
ハードウェアRAIDとソフトウェアRAIDの間で最も見落とされながらも重要な違いの一つは、RAIDアレイ管理に関連するジョブロールの変化です。ハードウェアRAIDはアレイの取り扱いをサーバー管理者(物理サーバーを扱い、データセンターに常駐するサポートロール)に移しますが、ソフトウェアRAIDはアレイの取り扱いをシステム管理者(オペレーティングシステム以上を担当し、データセンターにほとんど常駐しないサポートロール)に移します。中小企業市場ではこの要素は完全に見落とされるかもしれませんが、Fortune 500企業ではジョブロールの違いは非常に重要です。ハードウェアRAIDを使用する多くの場合、ディスクの交換やシステムセットアップはシステム管理者の介入なしに実行できます。データセンターのサーバー管理者は、アラートを通じてまたは巡回時に「アンバーライト」を探すことで障害ドライブを発見し、誰にも連絡することなく、またサーバーが何を実行しているかを知らなくても、その場で交換を行うことができます。ソフトウェアRAIDでは、ほぼ常にシステム管理者が障害ディスクのオフライン化の管理、データセンターとの交換プロセスの調整、交換完了後の新しいディスクのオンライン化に関与する必要があります。
CPUオフロードとパフォーマンスの仕組み、および非標準のRAID実装がパリティRAIDの再構築をどのように処理するかについてのいくつかの利点から、ミラーリングRAIDレベルはハードウェアRAIDを好む傾向があり、ソフトウェアRAIDレベルはパリティRAIDを好む傾向があります。パリティRAIDはCPUを大幅に多く使用するため、高性能な中央CPUリソースへのアクセスはRAID計算の高速化において主要な要因となり得ます。しかし、ミラーリングRAIDではRAIDの再構築がパリティRAIDよりもはるかに安全であり、自動再構築がより重要であるため、ハードウェアRAIDはブラインドドライブ交換を非常に簡単に行えるという利点をもたらします。
ハードウェアとソフトウェアのRAIDの議論において非常に逆説的な一面は、ソフトウェアRAIDをハードウェアRAIDに対して劣っているとして一蹴することが多い市場が、ファイルサーバーよりもコモディティNASアプライアンスの方が優れていると感じる市場とほぼ完全に重複している(頭の中でベン図を描いてみてください)ことです。しかし、中小企業向けのそれらのNASアプライアンスは、ほぼ例外なく、軽視されているのと同じソフトウェアRAID実装に基づいています。したがって、しばしば劣っているとも優れているとも同時に考えられています。ソフトウェアRAIDベースの中小企業向けNASデバイスおよびNASアプライアンスソフトウェアには、Netgear ReadyNAS、Netgear ReadyData、Buffalo Terastation、QNAP、Synology、OpenFiler、FreeNAS、Nexenta、NAS4Freeなどがあります。
ハードウェアとソフトウェアのRAIDには、「常にどちらか一方を使用する」という答えはありません。6桁台の巨大なエンタープライズNASおよびSANアプライアンスでさえ、業界の一部が各方向に進んでいるため、どちらを使用するかが決まっていません。本当の答えは特定の状況次第です。ジョブロールの分離、技術的なニーズ、経験、予算など。どちらのオプションも、どんな組織においても完全に有効です。
