ほとんどのエンタープライズ レベルのデータベース アプリケーションは、ディスク アクセス パフォーマンスとデータ互換性、およびフォールト トレランスを向上させるために RAID ディスク アレイを使用します。SQL Server 2005 では、通常、いくつかのレベル (0、1、5、10) に分類されます。これらのレベルとそのアプリケーションの違いについて簡単に説明します。
RAID 0 はディスク ストライピングと呼ばれ、2 つのディスクを RAID0 にすると、データを書き込むときにディスク A とディスク B に同時に書き込むことができるため、確実に最高の読み取りおよび書き込みパフォーマンスを実現できます。読み取りおよび書き込みのパフォーマンスは向上しますが、これによって問題も発生します。RAID0 には冗長データ回復戦略が用意されていないため、データの一部が失われた場合、すべてのデータは回復されません。したがって、RAID0 は、読み取り専用データベース テーブルまたはコピーされたデータベースで使用できます。つまり、このレベルは高パフォーマンスで非冗長です。
RAID 1 ディスク ミラーリングは、2 つのディスクがある場合、冗長バックアップ方法として 1 つのディスクを使用するため、読み取りには影響しません。そのため、2 つのディスクが 100G の場合、この方法では 50G しか使用できません。ディスク領域の使用量に影響を与え、I/O 書き込みパフォーマンスが低下します。
RAID 5 と RAID1 の違いは、パリティが追加され、すべてのパリティ情報が各ディスクに分散されるため、パフォーマンスは RAID1 よりも高くなります。ただし、ディスク I/O 障害が発生すると、パフォーマンスが急激に低下します。同時に、この方法は RAID0 と RAID1 の間の妥協点でもあり、より一般的なアプローチです。
RAID 10 は、RAID0 と RAID1 を組み合わせたもので、高いパフォーマンスと高可用性を提供し、特に大量の書き込みを行うアプリケーションに適していますが、ディスクの数に関係なくコストが比較的高くなります。持っていると、ディスクストレージの半分が失われます。