「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次  †
概要  †
ハードウェアRAIDレベルの選択
RAIDレベルの種類  †
DBサーバにとって、以下のRAIDレベルが有用である。
- ストライプ化(RAID 0)
 
- ミラー化(RAID 1)
 
- パリティ付きストライプセット(RAID 5)
 
- ストライプ化、ミラー化(RAID 0 + 1)
 
RAIDレベルの選択時は、「コスト」、「性能」、「可用性と信頼性」に関する要求事項を考慮する必要がある。
RAIDと「性能」  †
DBサーバは、ソフトウェアRAIDではなく、ハードウェアRAIDを選択する。
通常、ソフトウェアRAIDの負荷は低いが、CPUを使うため、ハードウェアRAIDが望ましい。
RAIDと「可用性と信頼性」  †
「データ ファイル」が壊れた場合、最新のデータにまで復旧するには、最新の「トランザクション ログ バックアップ」が必要になる。
- 「データ ファイル」、「トランザクション ログ ファイル」の保存先ドライブを別々に設定しておけば、
「データ ファイル」を格納してあるドライブがクラッシュした場合も、最新のデータ変更分を
「トランザクション ログ バックアップ」として、取得でき、データの損失が減少する。 
- このため、一般的に「信頼性」の高いディスクに保存する必要があるのは、「トランザクション ログファイル」の方である。
ただし、ドライブの冗長化では、物理的でない論理的な破壊(例えば、間違ってデータを消してしまった場合など)には
対応できないので、「データ ファイル」、「トランザクション ログ ファイル」のバックアップは必要である。 
RAIDとDBMSファイルのボリューム レイアウト  †
RAID 0, 1  †
- 一般的に「信頼性」の高いディスクに保存する必要があるのは、「トランザクション ログ ファイル」の方であるため、
- RAID 0のドライブに「データ ファイル」を格納し、
 
- RAID 1のドライブに「トランザクション ログ ファイル」を格納する。
 
 
- これにより、DBに対する最良のI/O処理速度が得られ、
- 「データ ファイル」のバックアップさえ取って置けば、
 
- 「データ ファイル」に障害が発生した場合も、データの損失が減少する。
 
 
RAID 1, 5  †
RAID 0, 1以上の信頼性を必要とする場合は、
- RAID 5のドライブに「データ ファイル」を格納し、
 
- RAID 1のドライブに「トランザクション ログ ファイル」を格納する。
 
RAID 5, 0+1の比較表  †
「性能」、「可用性と信頼性」を考慮した、「RAID 5」、「RAID 0 + 1」の選択には、次を参考にする。
| 項番 | 比較項目 | RAID 5 | RAID 0 + 1 | 
| 1-1 | 性能 | シーケンシャル読み出し | ◎ | ◎ | 
| 1-2 | シーケンシャル書き込み | △ | ◎ | 
| 1-3 | ランダム読み出し | ◎ | ◎ | 
| 1-4 | ランダム書き込み | △ | ○ | 
| 1-5 | リビルド | △ | ◎ | 
| 2 | 耐障害性 | ○ | ◎ | 
 
- 「RAID 5」は、書き込み処理よりも読み取り処理を得意とし、「RAID 0 + 1」よりも負荷が低いシステムに向く。
 
- 「RAID 0 + 1」は、書き込みが中心となる処理およびtempdbへのアクセスを得意とし、「RAID 5」より負荷が大きいシステムに向く。
 
Tags: :データアクセス, :SQL Server, :障害対応