連載
» 2008年09月24日 00時00分 公開

ストレージをデータ保護から理解するストレージとは何か(2)(2/3 ページ)

[安藤充洋,EMCジャパン株式会社]

ディスクのデータ保護

 多くのストレージには、データ消失を防ぐためさまざまな対策が施されている。まず、HDDの障害に対して備えるRAID技術について、一般に実装されているRAIDレベルを中心に各々の特徴について解説する。

 よく使われるRAIDレベルには、次のものがある。

RAID0(ストライピング)

 構成する複数のHDDへI/Oを分散させることによるパフォーマンス向上を意図したRAIDレベル。ただし、RAIDグループ内のHDDのうち1台でも障害が発生すると、データが消失し継続利用ができなくなるので、業務目的では利用されない。

図2 RAID0の仕組み 図2 RAID0の仕組み

RAID1(ミラーリング)

 同一データを2台のHDDに書き込むRAIDレベル。HDDの障害時には一方の正常なHDDで継続利用が可能。また、RAID再構築(リビルド)は、正常なHDD内の全データを交換したHDDへコピーする(コピーバック)。

 ミラーペアを構成するHDDの双方に障害が発生するとデータが消失する。

図3 RAID1の仕組み 図3 RAID1の仕組み

RAID1+0

 HDDをミラーリングした上でストライピングするRAIDレベル。RAID0とRAID1の特徴を併せ持ち、読み取り、書き込みともパフォーマンスに優れる。障害時にはミラーペアを構成する正常なHDDで継続利用が可能。また、リビルドは正常なHDDの全データを交換したHDDへコピーバックする。

 ミラーペアを構成するHDDの双方に障害が発生するとデータが消失する。

図4 RAID1+0の仕組み 図4 RAID1+0の仕組み

RAID5

 データブロックと同時に「パリティ※」と呼ばれる冗長コードを計算・分散書き込みし、一部のブロックが消失してもデータを再生成できるようにしたRAIDレベル。RAID5ではHDDのデータブロックを水平方向に計算するパリティを利用する。

 RAID0同様、構成する複数のHDDにI/Oを分散させるため、データ読み取りのパフォーマンスは高速である。しかし、データ書き込みはパリティ計算のオーバーヘッドによりパフォーマンスは高くない。

 HDD障害時は、正常なHDDのデータブロックとパリティを利用し、欠落したデータを再生成することで継続利用が可能だが、計算のオーバーヘッドによりパフォーマンスが劣化することがある(一般にこの状態を縮退モードと呼ぶ)。リビルド動作は縮退モードと同様にデータを再生成しながら、交換したHDDに書き込む。

 同時に2台以上のHDDに障害が発生するとデータが消失する。

※パリティとは2進数で表現した情報の0または1の偶奇性を排他的論理和で求めたもの

図5 RAID5の仕組み 図5 RAID5の仕組み

RAID6

 通常のパリティと計算ロジックを変えたパリティの2種類を分散して書き込むことで、2台までのHDD障害に耐えるRAIDレベル。

 RAID5との比較では、実データブロックの分散I/O数の減少(RAIDグループを構成するHDDが同一の場合)やパリティ計算の複雑化によりパフォーマンスは若干劣ることがある。

 同時に3台以上のHDDに障害が発生するとデータが消失する。

図6 RAID6の仕組み 図6 RAID6の仕組み
RAIDレベル RAID 0 RAID 1 RAID 1+0 RAID 5 RAID 6
特徴 優れたパフォーマンス
保護なし
高い保護レベル
迅速なリストア
優れたパフォーマンス
高い保護レベル
迅速なリストア
高い保護レベル 高い保護レベル
2台のHDD同時障害に対応
HDDの利用効率(N台のRAIDグループ) N N/2 N/2 N-1 N-2
耐障害性(故障してもデータロスしないHDD台数) 0 1 1〜N/2 1 2
用途 テスト環境など業務以外の用途 OSシステム、小規模ファイルサーバなど データベースのトランザクションログ、メールサーバなど ファイルサーバ、データベースのテーブル情報など SATAや大容量HDD使用時、バックアップ、アーカイブなど
表1 RAIDレベル別の特徴

 近年、SATAなど安価で大容量なディスクを利用してRAID6を構成するケースが増えている。これはSATAディスク単体の信頼性の低さに起因するもので、FCやSASディスクに対してHDDの二重障害の確率が高いためRAID6でカバーしている。このほか、長時間におよぶリビルド動作中のHDD障害によるデータ消失を防ぐため、HDD数が多いRAIDグループ構成や大容量HDD使用時にRAID6を採用するケースが多い。

 また、予備HDD(ホットスペア)を利用し自動的にリビルドを行うことで、可用性の低い状態(ミラーペア障害や縮退モードなど)での運用時間を短縮する工夫も、多くのストレージが採用している。

キャッシュメモリのデータ保護

 ここでは、ストレージコントローラのキャッシュメモリのデータ保護について解説する。サーバはストレージにデータを送りACKを受信すると、問題なく書き込みが完了したと判断する。ACKの受信でサーバ上のデータはクリアされるため、ストレージのコントローラのキャッシュ上には存在していても、まだHDDへ送られていないデータを損失すると復旧が困難となる。従って、キャッシュメモリ上のデータを保護するため、下記のいずれかの対策を多くのストレージが採用している。

キャッシュメモリのバッテリ保護

長所:シンプルな設計、低コストで実装可能
短所:バッテリ切れでデータが消失
採用製品:ローエンド/ミッドレンジ

バッテリ駆動によるHDDへのディステージ

長所:確実な保護
短所:コントローラ、HDDを駆動させるため大容量バッテリが必要
採用製品:ミッドレンジ/ハイエンド

不揮発性メモリ(NVRAM:Non-Volatile RAM)

長所:バッテリ不要
短所:通常のメモリと比較しアクセススピードが遅い、コストの観点から大容量化しにくい
採用製品:ローエンド/ミッドレンジ

 一般的なストレージ製品は、コントローラ上にキャッシュメモリを実装しているため、キャッシュメモリ自体の障害時はコントローラの停止を伴う交換作業が必要となる。これに対し一部の高機能なストレージでは、稼働中のキャッシュメモリモジュール(ボード)の増設や交換も前提にしているため、より高度な保護方式が採用されている。特に金融や会計、流通システムなどミッションクリティカルな重要業務では、稼働中のキャッシュメモリ交換や増設を理由に、高機能なストレージを利用することが多い。

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。