RAIDはデータストレージデバイスです。RAIDとは、Redundant Array of Independent Disks、Redundant Array of Inexpensive Disksの略です。
RAIDアレイは、SSDまたはハードドライブの集合体で、1つの大型ストレージ「プール」として機能するよう構成されています。これにより、どのハードディスクよりもはるかに大きなストレージシステムを構築できます。
RAIDアレイを構成するドライブは、さまざまな方法で構成できるため、システムの信頼性やパフォーマンスを最適化できます。RAIDはハードウェアベースまたはソフトウェアベースのいずれかです。
ハードウェアRAIDは、専用のRAIDコントローラを使用してインストールされたドライブを管理します。これはコンピューター内の別のデバイスかもしれませんが、マザーボードに組み込むことができます。ハードウェアコントローラを使用するRAIDシステムは、RAIDでデータフローとストレージを管理するコントローラに完全に依存します。RAIDコントローラが動作しなくなった場合、RAIDアレイを復元できない可能性があり、データが失われる可能性があります。
専用のRAIDハードウェアコントローラに投資することで、ホストシステムの作業を軽減できるだけでなく、一般的にコストもかかるため、ソフトウェアRAIDよりも優れたパフォーマンスが得られます。
ソフトウェアRAIDは、インストールされているオペレーティングシステム内のソフトウェアを使用してRAIDを構成および管理します。ソフトウェアRAIDは、一般的にハードウェアRAIDよりも構成と使用が安価です。RAIDを構成する手順は、セットアップする正確なタイプによって異なりますが、一般的にアレイはRAIDアダプタのファームウェアユーティリティまたはシステムのUEFIまたはBIOSで構成されます。その後、オペレーティングシステムはアレイをパーティション分割の宛先として捉え、オペレーティングシステムをRAIDに取り付けるか、セカンダリボリュームとして使用するかのいずれかにデータを書き込みます。セットアップと管理の詳細については、マザーボード、オペレーティングシステム、専用RAIDアダプタのサポートを参照してください。
RAID構成は、ストライピングと呼ばれるプロセスでアレイ内の複数のドライブにデータを分散させることで、ストレージパフォーマンスを最適化するために使用できます。データを単一のドライブに保存する場合、そのデータをデバイスに直列に書き込むか、一度に1ビット書き込む必要があります。ハードディスクには、データの読み取りと書き込みの速度に制限があります。ビット1は最初に書き、次にビット2、次にビット3など、データが完了するまで書き込む必要があります。
RAIDアレイでは、構成に応じて、このデータを複数のドライブ間で並列に書き込むことができます。ビット1はドライブ1に書き込むことができ、ビット2はドライブ2に書き込むことができ、ビット3はドライブ3に書き込むことができます。各ドライブにはデータ全体の断片しか保存されないため、総書き込み時間が短縮されます。読み取り中のデータについても同じことが言えます。このようにして、個々のドライブの速度制限が共有され、動作が高速化されます。
各ドライブにはファイル全体の一部しか含まれていないため、データに確実にアクセスするには、すべてのドライブを動作させる必要があります。
RAIDは、ミラーリングのプロセスを使用して信頼性を向上させるように構成できます。この構成では、データは一度に複数のドライブに保存されます。これにより、データを複数回保存する必要があるため、書き込み時間が長くなりますが、単一ドライブの故障によってデータが失われることはありません。
これらのアレイは、接続されているすべてのドライブが同じ場合に最適ですが、多くのRAID環境では異なるディスクを使用できます。接続されたドライブ間のパフォーマンスと容量の違いにより、アレイ内のすべてのディスクのパフォーマンスと使用可能な容量は、パフォーマンスが最も低い部品にまで低下します。
RAIDアレイは、全体的なバックアップ戦略の重要な部分として機能しますが、排他的に使用することはできません。RAIDは依然として故障する可能性があり、通常は大量のデータを保持するように設計されているため、この損失は壊滅的なものになる可能性があります。RAIDは、3-2-1バックアップ戦略の一部として使用する必要があります。3つのデータコピーを少なくとも2か所、1つのオフサイトに配置できます。
パフォーマンスや信頼性にRAIDを使用するという概念は一般的な原則ですが、RAIDアレイはいくつかの方法で構成できます。一部のテクノロジープロバイダーは独自のバージョンのRAIDを開発しましたが、以下の構成は一般的な業界標準です。
これにより、すべてのドライブを1つの大容量ストレージとして扱います。これにより、最大限の容量が得られますが、冗長性は提供されません。ドライブが1台失われると、ボリューム全体が失われる可能性があります。
これは、データを複数のドライブにミラーリングします。これにより、データの完全コピーがセット内の各ドライブに存在するため、冗長性が確保されます。
これにより、複数のドライブ間でデータが消去され、エラー訂正のためのハミングコードが使用されます。最新のドライブにはエラー訂正機能が組み込まれているため、RAID 2は現在生産終了です。
これは原則としてRAID 2に似ていますが、専用パリティディスクのビットレベルのストライピングではなく、バイトレベルのストライピング(8ビット)を使用します。パフォーマンスの限界により、最新のストレージソリューションでは人気のない選択肢となっています。
これはRAID 2やRAID 3のように動作しますが、ビットやバイトレベルではなくブロックレベルで動作します。また、専用のパリティディスクも使用します。
RAID 4と同様に、これはブロックレベルで動作しますが、パリティデータは、ボトルネックになる可能性のある専用ディスクを持つのではなく、RAID全体に分散されます。RAID 5は、データ損失が発生する前に単一ドライブの損失に耐えることができます。
これは原則としてRAID 5に似ていますが、故障耐性を高めるためにダブルパリティを使用します。このアレイでは、最大2台のドライブが故障する可能性がありますが、アレイは引き続き機能する可能性があります。
日常的な使用では、RAIDは1台のディスクのように機能しますが、診断ツールは、単一のSSDやハードディスクでおこなう場合とは異なる方法でRAID構成からデータを読み取ります。たとえば、Crucial Storage Executiveは一部のRAIDコントローラや構成との完全な互換性がなく、Self-Monitoring and Reporting Technology(SMART)レポートやファームウェアの更新などの特定の機能はサポートされていない環境で動作しないため、個々のドライブの更新やトラブルシューティングのためにRAIDを一時的に分解する必要があります。
また、最新のオペレーティングシステムとRAIDドライバーでは、RAIDのSSDでトリムコマンドを実行することができますが、レガシーオペレーティングシステムとドライバーでは適切にサポートされていない可能性があるため、接続されたSSDから最高のパフォーマンスを維持するためにガベージコレクションなどの機能が重要になります。