このページの本文へ

ゼロからはじめるバックアップ入門 第6回

レプリケーション、スナップショット、スプリットミラーを理解しよう

ディスクバックアップを支える新しい技術とは?

2010年07月08日 09時00分更新

文● 伊藤玄蕃

  • この記事をはてなブックマークに追加
  • 本文印刷

ある時点を再現するスナップショット

 レプリケーションの欠点、すなわち「つね直近の状態のデータを複製するため、データをある時点の状態に戻すような処理には対応できない」を補完するために用いられるのが、スナップショット(Snapshot)である。

 スナップショットに対応したストレージ装置は、ある時点のディスクボリュームの状態(スナップショット)を保存し、ユーザーの要求があればスナップショットを「見せる」。ファイルサーバー用のOSや、普及価格帯のストレージ装置では、「コピーオンライト(Copy on Write)方式」と呼ばれる手法でスナップショットを実現している。Windows Server 2003以降に実装されたボリュームシャドウコピー(Volume Shadow Copy)機能も、コピーオンライト方式を採用している。

 コピーオンライト方式では、データそのもののコピーは行なわない。最初のスナップショットの取得時に、対象となるボリュームに書き込まれたデータの位置情報(ポインタ)をスナップショット管理領域(Windows Server ではシャドウコピー領域)へ記録する。ポインタ自体のデータ量は非常に小さいため、数秒程度でどのデータがどの場所にあるかという情報を記録できる。

 そして、それ以降に本番ボリュームに対して更新(追加・変更・削除)があれば、更新前のデータをスナップショット管理領域へ記録する。同時に、更新前後のデータの位置情報(ポインタ)や更新された時間なども、スナップショット管理領域に記録する。このようにしてスナップショット管理領域に蓄積された情報と、本番ボリューム上にあるデータとを組み合わせて、過去の特定時点のボリュームの内容(これを「仮想ボリューム」あるいは「ビュー」と呼ぶ)をユーザーに見せることが可能になる(図2)。

図2 スナップショット機能を利用したバックアップ

コピーオンライト方式の問題点

 コピーオンライト方式では、更新されたデータと管理情報(ポインタや更新時間など)だけを保管するため、使用するディスクの容量は本番ボリュームよりも少なくて済む。しかし、本番ボリュームに障害が発生すると仮想ボリューム(ビュー)を作成することができないため、厳密にはバックアップとはいえない。そのため、静止点が明らかなバックアップデータを確実に保存するため、スナップショットを定期的にテープなど別のメディアへ取得する作業が必須である

 つねにディスクのI/Oを監視して、変更されたデータをコピーするなどの処理が必要となり、サーバーやストレージ装置の負荷は増える。また、テープへのバックアップ処理など仮想ボリュームを利用する際にも、本番ボリュームを読み出すことになり、業務処理のI/Oとの競合が生じる。

2つのメリットを組み合わせるスプリットミラー

 ここまで述べてきたように、レプリケーションと(コピーオンライト方式の)スナップショットは、バックアップに対する管理者の理想に大きく近づいたが、まだ、それぞれに短所がある。金融機関など、システム予算を潤沢に確保できる組織では「金には糸目をつけないから、両者の長所だけを利用したい」というニーズがあった。それを実現したのが、スプリットミラー(Split Mirror)の技法である。

 スプリットミラーは、レプリケーション技術を拡張した技法である。通常のレプリケーションでは、本番ボリュームとつねに同期する複製ボリューム(レプリカボリュームとよぶ)を1つ作成する。これに対しスプリットミラーでは、レプリカボリュームに加えて、スナップショット用の複製ボリューム(ミラーボリュームとよぶ)も作成する。

 そして、必要に応じてミラーボリュームをレプリケーション処理から切り離してスナップショットに利用する。このスナップショットは、静止点の明らかなバックアップデータとして利用でき、かつ、本番ボリュームに障害が生じても影響を受けない。この技法は、「ミラーボリュームを必要に応じてスプリットする(切り離す)」という意味から、「スプリットミラー」と名付けられた。

 ただし、ストレージ装置の容量あたり単価は他のメディアと比べて高い。ミラーディスクをスナップショットとして利用するのは、長くても数日程度である。静止点のあるバックアップデータをそれより長く保存する必要があれば、データをテープに吸い上げる。

 スナップショットとしての役割を終えたミラーボリュームは、またレプリケーション処理に組み込んで本番ボリュームと再同期し、新たなスナップショットとして再利用する。スプリットミラーによるスナップショットを使えば、静止点を有するバックアップをテープに退避する際にI/Oの競合が生じないので、高速なデータ吸い上げが可能である(図3)。

図3 スプリットミラーを利用したバックアップ

 複数世代のスナップショットが必要であれば、その数だけミラーボリュームを用意すればよい。それぞれのミラーボリュームの論理容量は本番ボリュームと同じだけ必要なため、これを実装するストレージ装置は大量のディスクを格納できるハイエンドの機種が中心で、コストも高くなる。コストを抑えるため、ミラーボリュームの性能や信頼性を、本番およびレプリカボリュームよりも下げて、廉価な構成にすることがある。たとえば、本番およびレプリカボリュームはファイバチャネル接続の高速なHDDをRAID 0+1で構成し、ミラーボリュームはSATA接続の比較的低速なHDDをRAID 5で構成するなどである。

(次ページ、「ストレージのコストを減らす重複排除」に続く)


 

カテゴリートップへ

この連載の記事