(57)【要約】【課題】スナップショット機能の導入前でも必要となる物理ディスク容量を適切に見積もることを可能にする。【解決手段】ホスト１００からデータ更新要求を受けた場合、スナップショットシミュレーション機能制御手段２１は、指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグがオンであれば、更新範囲判定手段１０に問い合わせて更新データの範囲に対応するビットマップ上のビットの通知を受け、ビットマップ情報更新手段１１によりビットマップ情報記憶手段１２の指定された論理ボリュームに関するビットマップ上の対応するビットをセットし、データ更新処理を実行する。シミュレーション結果報告指示があると、スナップショットシミュレーション結果報告手段２２は、スナップショットシミュレーション機能により算出したスナップショットの物理ディスク容量を報告する。【選択図】図１
2005128590.tif 000002
【特許請求の範囲】
【請求項１】
論理ボリュームの管理単位毎に更新の有無を示すビットマップを保持するビットマップ情報記憶手段と、
前記ビットマップ情報記憶手段のビットマップを更新するビットマップ情報更新手段と、
指定された更新データの範囲が論理ボリュームのどの管理単位に含まれるのかを判定して、それらの管理単位に対応する前記ビットマップ情報記憶手段のビットマップ上のビットを通知する更新範囲判定手段と、
外部からのスナップショットシミュレーション機能開始指示に応じてスナップショットシミュレーション機能の有効フラグをオンにしてスナップショットシミュレーション機能を開始させ、外部からのスナップショットシミュレーション機能終了指示に応じてスナップショットシミュレーション機能の有効フラグをオフにしてスナップショットシミュレーション機能を終了させるスナップショットシミュレーション機能管理手段と、
データ更新要求があったときに、スナップショットシミュレーション機能の有効フラグがオンであれば、前記更新範囲判定手段に問い合わせて更新データの範囲に対応するビットマップ上のビットの通知を受け、前記ビットマップ情報更新手段により前記ビットマップ情報記憶手段のビットマップ上の対応するビットをセットし、データ更新処理を実行するスナップショットシミュレーション機能制御手段と、
前記スナップショットシミュレーション機能管理手段からスナップショットシミュレーション機能終了指示を受信したときに、前記ビットマップ情報記憶手段のビットマップ上にセットされているビット数を調べ、該ビット数×管理単位サイズをスナップショットの物理ディスク容量として計算して記憶し、前記ビットマップ情報更新手段により前記ビットマップ情報記憶手段のビットマップ上の全ビットをリセットし、外部からのシミュレーション結果報告指示に応じて記憶しているスナップショットの物理ディスク容量を報告するスナップショットシミュレーション結果報告手段と
を有することを特徴とするスナップショットシミュレーション機能を有するディスクアレイ装置。
【請求項２】
論理ボリューム毎にスナップショットシミュレーション機能が有効であるかどうかを示す有効フラグ，および論理ボリュームの管理単位毎に更新の有無を示すビットマップを保持するビットマップ情報記憶手段と、
前記ビットマップ情報記憶手段の有効フラグおよびビットマップを更新するビットマップ情報更新手段と、
指定された更新データの範囲が論理ボリュームのどの管理単位に含まれるのかを判定して、それらの管理単位に対応する前記ビットマップ情報記憶手段の該当論理ボリュームに対応するビットマップ上のビットを通知する更新範囲判定手段と、
外部からのスナップショットシミュレーション機能開始指示に応じて指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグをオンにして該当論理ボリュームに関するスナップショットシミュレーション機能を開始させ、外部からのスナップショットシミュレーション機能終了指示に応じて指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグをオフにして該当論理ボリュームに関するスナップショットシミュレーション機能を終了させるスナップショットシミュレーション機能管理手段と、
データ更新要求があったときに、指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグがオンであれば、前記更新範囲判定手段に問い合わせて更新データの範囲に対応するビットマップ上のビットの通知を受け、前記ビットマップ情報更新手段により前記ビットマップ情報記憶手段の指定された論理ボリュームに関するビットマップ上の対応するビットをセットし、データ更新処理を実行するスナップショットシミュレーション機能制御手段と、
前記スナップショットシミュレーション機能管理手段からスナップショットシミュレーション機能終了指示を受信したときに、前記ビットマップ情報記憶手段の該当論理ボリュームに対応するビットマップ上にセットされているビット数を調べ、該ビット数×管理単位サイズをスナップショットの物理ディスク容量として計算して記憶し、前記ビットマップ情報更新手段により前記ビットマップ情報記憶手段の該当論理ボリュームに対応するビットマップ上の全ビットをリセットし、外部からのシミュレーション結果報告指示に応じて記憶しているスナップショットの物理ディスク容量を報告するスナップショットシミュレーション結果報告手段と
を有することを特徴とするスナップショットシミュレーション機能を有するディスクアレイ装置。
【請求項３】
前記スナップショットシミュレーション結果報告手段が、前記スナップショットシミュレーション機能管理手段からスナップショットシミュレーション機能終了指示を受信したときに、前記ビットマップ情報記憶手段の該当論理ボリュームに対応するビットマップに基づいて更新によりセットされたビット数を論理ボリューム毎に計数し、該ビット数×管理単位サイズを全論理ボリューム分加算した結果をスナップショットの物理ディスク容量として報告することを特徴とする請求項２記載のスナップショットシミュレーション機能を有するディスクアレイ装置。
【請求項４】
外部からのスナップショットシミュレーション機能開始指示に応じてスナップショットシミュレーション機能の有効フラグをオンにしてスナップショットシミュレーション機能を開始させる工程と、
データ更新要求があったときに、スナップショットシミュレーション機能の有効フラグがオンであれば、指定された更新データの範囲が論理ボリュームのどの管理単位に含まれるのかを判定して、ビットマップ上の対応するビットをセットし、データ更新処理を実行する工程と、
外部からのスナップショットシミュレーション機能終了指示に応じてスナップショットシミュレーション機能の有効フラグをオフにしてスナップショットシミュレーション機能を終了させる工程と、
スナップショットシミュレーション機能終了時に、ビットマップ上にセットされているビット数を調べ、該ビット数×管理単位サイズをスナップショットの物理ディスク容量として計算して記憶し、ビットマップ上の全ビットをリセットする工程と、
外部からのシミュレーション結果報告指示に応じて記憶しているスナップショットの物理ディスク容量を報告する工程と
を含むことを特徴とするスナップショットシミュレーション方法。
【請求項５】
外部からのスナップショットシミュレーション機能開始指示に応じて指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグをオンにして該当論理ボリュームに関するスナップショットシミュレーション機能を開始させる工程と、
データ更新要求があったときに、指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグがオンであれば、更新データの範囲に対応する指定された論理ボリュームに関するビットマップ上の対応するビットをセットし、データ更新処理を実行する工程と、
外部からのスナップショットシミュレーション機能終了指示に応じて指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグをオフにして該当論理ボリュームに関するスナップショットシミュレーション機能を終了させる工程と、
スナップショットシミュレーション機能の終了時に、該当論理ボリュームに対応するビットマップ上にセットされているビット数を調べ、該ビット数×管理単位サイズをスナップショットの物理ディスク容量として計算して記憶し、該当論理ボリュームに対応するビットマップ上の全ビットをリセットする工程と、
外部からのシミュレーション結果報告指示に応じて記憶しているスナップショットの物理ディスク容量を報告する工程と
を含むことを特徴とするスナップショットシミュレーション方法。
【請求項６】
スナップショットシミュレーション機能終了時に、該当論理ボリュームに対応するビットマップに基づいて更新によりセットされたビット数を論理ボリューム毎に計数し、該ビット数×管理単位サイズを全論理ボリューム分加算した結果をスナップショットの物理ディスク容量として報告することを特徴とする請求項５記載のスナップショットシミュレーション方法。
【請求項７】
コンピュータを、論理ボリュームの管理単位毎に更新の有無を示すビットマップを保持するビットマップ情報記憶手段，前記ビットマップ情報記憶手段のビットマップを更新するビットマップ情報更新手段，指定された更新データの範囲が論理ボリュームのどの管理単位に含まれるのかを判定して、それらの管理単位に対応する前記ビットマップ情報記憶手段のビットマップ上のビットを通知する更新範囲判定手段，外部からのスナップショットシミュレーション機能開始指示に応じてスナップショットシミュレーション機能の有効フラグをオンにしてスナップショットシミュレーション機能を開始させ、外部からのスナップショットシミュレーション機能終了指示に応じてスナップショットシミュレーション機能の有効フラグをオフにしてスナップショットシミュレーション機能を終了させるスナップショットシミュレーション機能管理手段，データ更新要求があったときに、スナップショットシミュレーション機能の有効フラグがオンであれば、前記更新範囲判定手段に問い合わせて更新データの範囲に対応するビットマップ上のビットの通知を受け、前記ビットマップ情報更新手段により前記ビットマップ情報記憶手段のビットマップ上の対応するビットをセットし、データ更新処理を実行するスナップショットシミュレーション機能制御手段，および前記スナップショットシミュレーション機能管理手段からスナップショットシミュレーション機能終了指示を受信したときに、前記ビットマップ情報記憶手段のビットマップ上にセットされているビット数を調べ、該ビット数×管理単位サイズをスナップショットの物理ディスク容量として計算して記憶し、前記ビットマップ情報更新手段により前記ビットマップ情報記憶手段のビットマップ上の全ビットをリセットし、外部からのシミュレーション結果報告指示に応じて記憶しているスナップショットの物理ディスク容量を報告するスナップショットシミュレーション結果報告手段として動作させることを特徴とするスナップショットシミュレーションプログラム。
【請求項８】
コンピュータを、論理ボリューム毎にスナップショットシミュレーション機能が有効であるかどうかを示す有効フラグ，および論理ボリュームの管理単位毎に更新の有無を示すビットマップを保持するビットマップ情報記憶手段，前記ビットマップ情報記憶手段の有効フラグおよびビットマップを更新するビットマップ情報更新手段，指定された更新データの範囲が論理ボリュームのどの管理単位に含まれるのかを判定して、それらの管理単位に対応する前記ビットマップ情報記憶手段の該当論理ボリュームに対応するビットマップ上のビットを通知する更新範囲判定手段，外部からのスナップショットシミュレーション機能開始指示に応じて指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグをオンにして該当論理ボリュームに関するスナップショットシミュレーション機能を開始させ、外部からのスナップショットシミュレーション機能終了指示に応じて指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグをオフにして該当論理ボリュームに関するスナップショットシミュレーション機能を終了させるスナップショットシミュレーション機能管理手段，データ更新要求があったときに、指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグがオンであれば、前記更新範囲判定手段に問い合わせて更新データの範囲に対応するビットマップ上のビットの通知を受け、前記ビットマップ情報更新手段により前記ビットマップ情報記憶手段の指定された論理ボリュームに関するビットマップ上の対応するビットをセットし、データ更新処理を実行するスナップショットシミュレーション機能制御手段，および前記スナップショットシミュレーション機能管理手段からスナップショットシミュレーション機能終了指示を受信したときに、前記ビットマップ情報記憶手段の該当論理ボリュームに対応するビットマップ上にセットされているビット数を調べ、該ビット数×管理単位サイズをスナップショットの物理ディスク容量として計算して記憶し、前記ビットマップ情報更新手段により前記ビットマップ情報記憶手段の該当論理ボリュームに対応するビットマップ上の全ビットをリセットし、外部からのシミュレーション結果報告指示に応じて記憶しているスナップショットの物理ディスク容量を報告するスナップショットシミュレーション結果報告手段として動作させることを特徴とするスナップショットシミュレーションプログラム。
【請求項９】
前記スナップショットシミュレーション結果報告手段が、前記スナップショットシミュレーション機能管理手段からスナップショットシミュレーション機能終了指示を受信したときに、前記ビットマップ情報記憶手段の該当論理ボリュームに対応するビットマップに基づいて更新によりセットされたビット数を論理ボリューム毎に計数し、該ビット数×管理単位サイズを全論理ボリューム分加算した結果をスナップショットの物理ディスク容量として報告することを特徴とする請求項８記載のスナップショットシミュレーションプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はディスクアレイ装置に関し、特にスナップショットシミュレーション機能を有するディスクアレイ装置に関する。
【背景技術】
【０００２】
ディスクアレイ装置の有する機能として一般的となったスナップショット機能では、ユーザが指定した時点でのデータを保持する。データ保持方法として、あらかじめ２つの論理ボリュームのデータを二重化しておきスナップショット作成指示に応じて切り離す方法や、スナップショットの作成後に論理ボリュームに対して更新された領域のデータ（更新データ）をコピーして管理する方法などがある。
【０００３】
更新データをコピーして管理するデータ保持方法の場合、更新差分のみを記憶するので、仮想ディスクを利用することにより容量効率よく複数世代の複製を作成することが可能であり、データが更新されたときに必要な領域を新たに確保すればよいので、あらかじめ論理ボリュームを二重化しておく方法に比べ容量効率がよいという利点がある。
【０００４】
例えば、従来の更新差分のみを記憶する方法の一例では、ホストは、ペア形成要求およびペア分割要求をディスクサブシステムに発行し、ボリュームのスナップショットを作成した後、処理を開始する。ディスクサブシステムは、スナップショットの作成以降、更新が行われたデータの位置を差分情報として記憶する。ホストからのデータ復旧要求を受領すると、ディスクサブシステムは、差分情報に基づいて、更新が行われた箇所のデータをスナップショットからリストアする。これにより、処理の実行中に発生した障害などによって破壊されたデータをバックアップデータから高速に回復することができる（特許文献１参照）。
【０００５】
また、従来の更新差分のみを記憶する方法の他の例では、第１データ保持部は、通常の読み書きを行う。第２データ保持部は、ある時点での第１データ保持部のスナップショットイメージを保存する。第３データ保持部は、第２データ保持部にスナップショットイメージを保存した時点以降の第１データ保持部へのデータ書替えに伴う更新データと、その世代を示す情報と、その更新領域を示す情報とを含む履歴情報を保存する。データ読出し元選択部は、読み出されるべきスナップショットイメージの世代および領域の指定に応じて、第３データ保持部に保存される各履歴情報を参照し、読み出されるべきスナップショットイメージの保存場所を知得し、その保存場所に応じてデータの読出し元を第２データ保持部および第３データ保持部のいずれかに切替える。これにより、システムを少ない記憶装置（より小型／より廉価）で構成し、かつ複数の世代のスナップショットイメージを任意に読み出せるようにする（特許文献２参照）。
【０００６】
さらに、従来の更新差分のみを記憶する方法の別の例では、ミラー切り離し直後はリスト形式差分情報テーブルにスナップショット差分情報を保持し、リスト形式差分情報テーブルが一杯になり、かつ新たにエントリを追加できない状態、つまりリスト形式差分情報テーブルが格納される差分情報テーブル領域を拡張できない状態では、リスト形式差分情報テーブルをビットマップ形式差分情報テーブルに変換し、以降、ビットマップ形式差分情報テーブルにスナップショット差分情報を保持する。これにより、スナップショット差分情報を保持するのに、ビットマップ形式とリスト形式とを使い分けることで、比較的少ないメモリ容量でありながら、ビットマップ形式単独で使用する場合に比べてコピーデータ量を低減できるようにする（特許文献３参照）。
【０００７】
ところで、これら従来の更新差分のみを記憶する方法を採用するディスクアレイ装置では、データ更新処理が行われると、仮想ディスクに物理ディスク容量が割り付けられるが、割り付けられる物理ディスク容量は更新データ量そのものではなく、ディスクアレイ装置が内部で分割して管理する管理単位（ブロック）となる。このため、更新データの範囲を管理するために更新の有無（差分情報）を論理ボリュームの管理単位毎のビットマップとして保持する方法が一般的である。管理単位のサイズは任意であるが、管理単位のサイズを大きくすればビットマップのサイズは小さくできるが、逆に物理ディスクの容量効率が悪くなる。これは、管理単位より小さい範囲のデータ更新であっても、更新データの範囲を含んだ管理単位の物理ディスク容量が必要となるからである。よって、一般に、スナップショットに必要な物理ディスク容量は、ホストからの更新データ量と同値ではなく更新データ量以上に必要となる。例えば、管理単位を３２ＫＢ単位とした場合、４ＫＢのデータ更新があっても３２ＫＢの物理ディスク容量が確保される。シーケンシャルなデータ更新であれば管理単位の３２ＫＢの全域が使用されるが、ランダムなデータ更新では４ＫＢの更新毎に新たに３２ＫＢずつ物理ディスク容量が確保されることになる。
【０００８】
したがって、ホストで動作するアプリケーションプログラム（業務ジョブ）の入出力特性（業務内容）に応じて必要となる物理ディスク容量が異なることになり、実際に運用してみないと、スナップショットに必要な物理ディスク容量を見積もることは難しかった。
【特許文献１】特開２００１−２１６１８５（第３−４頁、図１）
【特許文献２】特開２００２−２７８８１９（第４頁、図１）
【特許文献３】特開２００２−３７３０９３（第６−７頁、図４）
【発明の開示】
【発明が解決しようとする課題】
【０００９】
従来のディスクアレイ装置では、同じ更新データ量であってもホストで動作するアプリケーションプログラムの入出力特性に応じて実際に必要となる物理ディスク容量は異なり、スナップショットを実際に作成してみないと必要な物理ディスク容量を見積もることが難しいという問題点があった。
【００１０】
本発明の目的は、実際にスナップショットを作成する前にスナップショットシミュレーション機能により適切なスナップショットの物理ディスク容量を見積もることができ、無駄のない構成設計が可能となるスナップショットシミュレーション機能を有するディスクアレイ装置を提供することにある。
【課題を解決するための手段】
【００１１】
本発明のスナップショットシミュレーション機能を有するディスクアレイ装置は、論理ボリュームの管理単位毎に更新の有無を示すビットマップを保持するビットマップ情報記憶手段と、前記ビットマップ情報記憶手段のビットマップを更新するビットマップ情報更新手段と、指定された更新データの範囲が論理ボリュームのどの管理単位に含まれるのかを判定して、それらの管理単位に対応する前記ビットマップ情報記憶手段のビットマップ上のビットを通知する更新範囲判定手段と、外部からのスナップショットシミュレーション機能開始指示に応じてスナップショットシミュレーション機能の有効フラグをオンにしてスナップショットシミュレーション機能を開始させ、外部からのスナップショットシミュレーション機能終了指示に応じてスナップショットシミュレーション機能の有効フラグをオフにしてスナップショットシミュレーション機能を終了させるスナップショットシミュレーション機能管理手段と、データ更新要求があったときに、スナップショットシミュレーション機能の有効フラグがオンであれば、前記更新範囲判定手段に問い合わせて更新データの範囲に対応するビットマップ上のビットの通知を受け、前記ビットマップ情報更新手段により前記ビットマップ情報記憶手段のビットマップ上の対応するビットをセットし、データ更新処理を実行するスナップショットシミュレーション機能制御手段と、前記スナップショットシミュレーション機能管理手段からスナップショットシミュレーション機能終了指示を受信したときに、前記ビットマップ情報記憶手段のビットマップ上にセットされているビット数を調べ、該ビット数×管理単位サイズをスナップショットの物理ディスク容量として計算して記憶し、前記ビットマップ情報更新手段により前記ビットマップ情報記憶手段のビットマップ上の全ビットをリセットし、外部からのシミュレーション結果報告指示に応じて記憶しているスナップショットの物理ディスク容量を報告するスナップショットシミュレーション結果報告手段とを有することを特徴とする。
【００１２】
また、本発明のスナップショットシミュレーション機能を有するディスクアレイ装置は、論理ボリューム毎にスナップショットシミュレーション機能が有効であるかどうかを示す有効フラグ，および論理ボリュームの管理単位毎に更新の有無を示すビットマップを保持するビットマップ情報記憶手段と、前記ビットマップ情報記憶手段の有効フラグおよびビットマップを更新するビットマップ情報更新手段と、指定された更新データの範囲が論理ボリュームのどの管理単位に含まれるのかを判定して、それらの管理単位に対応する前記ビットマップ情報記憶手段の該当論理ボリュームに対応するビットマップ上のビットを通知する更新範囲判定手段と、外部からのスナップショットシミュレーション機能開始指示に応じて指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグをオンにして該当論理ボリュームに関するスナップショットシミュレーション機能を開始させ、外部からのスナップショットシミュレーション機能終了指示に応じて指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグをオフにして該当論理ボリュームに関するスナップショットシミュレーション機能を終了させるスナップショットシミュレーション機能管理手段と、データ更新要求があったときに、指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグがオンであれば、前記更新範囲判定手段に問い合わせて更新データの範囲に対応するビットマップ上のビットの通知を受け、前記ビットマップ情報更新手段により前記ビットマップ情報記憶手段の指定された論理ボリュームに関するビットマップ上の対応するビットをセットし、データ更新処理を実行するスナップショットシミュレーション機能制御手段と、前記スナップショットシミュレーション機能管理手段からスナップショットシミュレーション機能終了指示を受信したときに、前記ビットマップ情報記憶手段の該当論理ボリュームに対応するビットマップ上にセットされているビット数を調べ、該ビット数×管理単位サイズをスナップショットの物理ディスク容量として計算して記憶し、前記ビットマップ情報更新手段により前記ビットマップ情報記憶手段の該当論理ボリュームに対応するビットマップ上の全ビットをリセットし、外部からのシミュレーション結果報告指示に応じて記憶しているスナップショットの物理ディスク容量を報告するスナップショットシミュレーション結果報告手段とを有することを特徴とする。
【００１３】
さらに、本発明のスナップショットシミュレーション機能を有するディスクアレイ装置は、前記スナップショットシミュレーション結果報告手段が、前記スナップショットシミュレーション機能管理手段からスナップショットシミュレーション機能終了指示を受信したときに、前記ビットマップ情報記憶手段の該当論理ボリュームに対応するビットマップに基づいて更新によりセットされたビット数を論理ボリューム毎に計数し、該ビット数×管理単位サイズを全論理ボリューム分加算した結果をスナップショットの物理ディスク容量として報告することを特徴とする。
【００１４】
一方、本発明のスナップショットシミュレーション方法は、外部からのスナップショットシミュレーション機能開始指示に応じてスナップショットシミュレーション機能の有効フラグをオンにしてスナップショットシミュレーション機能を開始させる工程と、データ更新要求があったときに、スナップショットシミュレーション機能の有効フラグがオンであれば、指定された更新データの範囲が論理ボリュームのどの管理単位に含まれるのかを判定して、ビットマップ上の対応するビットをセットし、データ更新処理を実行する工程と、外部からのスナップショットシミュレーション機能終了指示に応じてスナップショットシミュレーション機能の有効フラグをオフにしてスナップショットシミュレーション機能を終了させる工程と、スナップショットシミュレーション機能終了時に、ビットマップ上にセットされているビット数を調べ、該ビット数×管理単位サイズをスナップショットの物理ディスク容量として計算して記憶し、ビットマップ上の全ビットをリセットする工程と、外部からのシミュレーション結果報告指示に応じて記憶しているスナップショットの物理ディスク容量を報告する工程とを含むことを特徴とする。
【００１５】
また、本発明のスナップショットシミュレーション方法は、外部からのスナップショットシミュレーション機能開始指示に応じて指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグをオンにして該当論理ボリュームに関するスナップショットシミュレーション機能を開始させる工程と、データ更新要求があったときに、指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグがオンであれば、更新データの範囲に対応する指定された論理ボリュームに関するビットマップ上の対応するビットをセットし、データ更新処理を実行する工程と、外部からのスナップショットシミュレーション機能終了指示に応じて指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグをオフにして該当論理ボリュームに関するスナップショットシミュレーション機能を終了させる工程と、スナップショットシミュレーション機能の終了時に、該当論理ボリュームに対応するビットマップ上にセットされているビット数を調べ、該ビット数×管理単位サイズをスナップショットの物理ディスク容量として計算して記憶し、該当論理ボリュームに対応するビットマップ上の全ビットをリセットする工程と、外部からのシミュレーション結果報告指示に応じて記憶しているスナップショットの物理ディスク容量を報告する工程とを含むことを特徴とする。
【００１６】
さらに、本発明のスナップショットシミュレーション方法は、スナップショットシミュレーション機能終了時に、該当論理ボリュームに対応するビットマップに基づいて更新によりセットされたビット数を論理ボリューム毎に計数し、該ビット数×管理単位サイズを全論理ボリューム分加算した結果をスナップショットの物理ディスク容量として報告することを特徴とする。
【００１７】
他方、本発明のスナップショットシミュレーションプログラムは、コンピュータを、論理ボリュームの管理単位毎に更新の有無を示すビットマップを保持するビットマップ情報記憶手段，前記ビットマップ情報記憶手段のビットマップを更新するビットマップ情報更新手段，指定された更新データの範囲が論理ボリュームのどの管理単位に含まれるのかを判定して、それらの管理単位に対応する前記ビットマップ情報記憶手段のビットマップ上のビットを通知する更新範囲判定手段，外部からのスナップショットシミュレーション機能開始指示に応じてスナップショットシミュレーション機能の有効フラグをオンにしてスナップショットシミュレーション機能を開始させ、外部からのスナップショットシミュレーション機能終了指示に応じてスナップショットシミュレーション機能の有効フラグをオフにしてスナップショットシミュレーション機能を終了させるスナップショットシミュレーション機能管理手段，データ更新要求があったときに、スナップショットシミュレーション機能の有効フラグがオンであれば、前記更新範囲判定手段に問い合わせて更新データの範囲に対応するビットマップ上のビットの通知を受け、前記ビットマップ情報更新手段により前記ビットマップ情報記憶手段のビットマップ上の対応するビットをセットし、データ更新処理を実行するスナップショットシミュレーション機能制御手段，および前記スナップショットシミュレーション機能管理手段からスナップショットシミュレーション機能終了指示を受信したときに、前記ビットマップ情報記憶手段のビットマップ上にセットされているビット数を調べ、該ビット数×管理単位サイズをスナップショットの物理ディスク容量として計算して記憶し、前記ビットマップ情報更新手段により前記ビットマップ情報記憶手段のビットマップ上の全ビットをリセットし、外部からのシミュレーション結果報告指示に応じて記憶しているスナップショットの物理ディスク容量を報告するスナップショットシミュレーション結果報告手段として動作させることを特徴とする。
【００１８】
また、本発明のスナップショットシミュレーションプログラムは、コンピュータを、論理ボリューム毎にスナップショットシミュレーション機能が有効であるかどうかを示す有効フラグ，および論理ボリュームの管理単位毎に更新の有無を示すビットマップを保持するビットマップ情報記憶手段，前記ビットマップ情報記憶手段の有効フラグおよびビットマップを更新するビットマップ情報更新手段，指定された更新データの範囲が論理ボリュームのどの管理単位に含まれるのかを判定して、それらの管理単位に対応する前記ビットマップ情報記憶手段の該当論理ボリュームに対応するビットマップ上のビットを通知する更新範囲判定手段，外部からのスナップショットシミュレーション機能開始指示に応じて指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグをオンにして該当論理ボリュームに関するスナップショットシミュレーション機能を開始させ、外部からのスナップショットシミュレーション機能終了指示に応じて指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグをオフにして該当論理ボリュームに関するスナップショットシミュレーション機能を終了させるスナップショットシミュレーション機能管理手段，データ更新要求があったときに、指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグがオンであれば、前記更新範囲判定手段に問い合わせて更新データの範囲に対応するビットマップ上のビットの通知を受け、前記ビットマップ情報更新手段により前記ビットマップ情報記憶手段の指定された論理ボリュームに関するビットマップ上の対応するビットをセットし、データ更新処理を実行するスナップショットシミュレーション機能制御手段，および前記スナップショットシミュレーション機能管理手段からスナップショットシミュレーション機能終了指示を受信したときに、前記ビットマップ情報記憶手段の該当論理ボリュームに対応するビットマップ上にセットされているビット数を調べ、該ビット数×管理単位サイズをスナップショットの物理ディスク容量として計算して記憶し、前記ビットマップ情報更新手段により前記ビットマップ情報記憶手段の該当論理ボリュームに対応するビットマップ上の全ビットをリセットし、外部からのシミュレーション結果報告指示に応じて記憶しているスナップショットの物理ディスク容量を報告するスナップショットシミュレーション結果報告手段として動作させることを特徴とする。
【００１９】
さらに、本発明のスナップショットシミュレーションプログラムは、前記スナップショットシミュレーション結果報告手段が、前記スナップショットシミュレーション機能管理手段からスナップショットシミュレーション機能終了指示を受信したときに、前記ビットマップ情報記憶手段の該当論理ボリュームに対応するビットマップに基づいて更新によりセットされたビット数を論理ボリューム毎に計数し、該ビット数×管理単位サイズを全論理ボリューム分加算した結果をスナップショットの物理ディスク容量として報告することを特徴とする。
【発明の効果】
【００２０】
第１の効果は、スナップショットを実際に作成しなくとも必要となる物理ディスク容量を事前に知ることができることである。スナップショットでは定期的にバックアップをとるのが一般的であるから、何回かスナップショットシミュレーション機能により必要となる物理ディスク容量を採取すれば、実際にスナップショットを導入した際に必要な物理ディスク容量を見積もることが可能である。従って、スナップショットのための適切な増設ディスク容量を知ることができ、構成設計での無駄なコストを削減することができる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施例について図面を参照して詳細に説明する。
【実施例１】
【００２２】
図１を参照すると、本発明の実施例１に係るスナップショットシミュレーション機能を有するディスクアレイ装置１は、ディスク制御部２と、複数の物理ディスク３０を有するディスクユニット部３とから、その主要部が構成され、ホスト１００と接続され、ホスト１００からの指示に応じてデータの更新や参照が行われる。ディスクユニット部３は、複数の物理ディスク３０をＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙ  ｏｆ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｄｉｓｋｓ）構成としデータを記録し、ホスト１００に対しては論理ボリュームとして見せている。
【００２３】
ディスク制御部２は、更新範囲判定手段１０と、ビットマップ情報更新手段１１と、ビットマップ情報記憶手段１２と、スナップショットシミュレーション機能管理手段２０と、スナップショットシミュレーション機能制御手段２１と、スナップショットシミュレーション結果報告手段２２とを含んで構成されている。
【００２４】
更新範囲判定手段１０は、ホスト１００からデータ更新要求があった場合に、指定された更新開始論理アドレスおよびサイズに基づいて、その更新データの範囲が論理ボリュームのどの管理単位に含まれるのかを判定して、それらの管理単位に対応するビットマップ情報記憶手段１２の該当論理ボリュームに対応するビットマップ上のビットを通知する。詳しくは、図２に示すように、論理ボリュームが一定サイズの管理単位に分割されているので、更新開始論理アドレスおよび更新終了論理アドレス（＝更新開始論理アドレス＋サイズ）の範囲がまたがる管理単位を判定して、対応するビットマップ上のビットを通知する。例えば、論理ボリューム♯ｎを一定のサイズｍの管理単位で分割し、論理ボリューム♯ｎの先頭論理アドレスがｍ＊ｎ、末尾論理アドレスが（ｍ＋１）＊ｎ−１であるとすると、これに基づいてビットマップ上のビットを決定する。
【００２５】
ビットマップ情報更新手段１１は、ビットマップ情報記憶手段１２の論理ボリューム毎のビットマップ上のビットをセット／リセットする。また、ビットマップ情報更新手段１１は、ビットマップ情報記憶手段１２の論理ボリューム毎の有効フラグをオン／オフする。
【００２６】
ビットマップ情報記憶手段１２は、論理ボリューム毎にスナップショットシミュレーション機能が有効であるかどうかを示す有効フラグ，および論理ボリューム毎にテーブル形式のビットマップを保持する。ビットマップ上の各ビットは、論理ボリュームの論理アドレスを一定の管理単位サイズで分割し、その分割した範囲を管理単位として１対１に対応されている（図２参照）。
【００２７】
スナップショットシミュレーション機能管理手段２０は、ホスト１００や図示しない保守端末からのスナップショットシミュレーション機能開始指示に応じて指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグをオンにして該当論理ボリュームに関するスナップショットシミュレーション機能を開始させる。また、スナップショットシミュレーション機能管理手段２０は、ホスト１００や図示しない保守端末からのスナップショットシミュレーション機能終了指示に応じて指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグをオフにして該当論理ボリュームに関するスナップショットシミュレーション機能を終了させる。
【００２８】
図３を参照すると、スナップショットシミュレーション機能管理手段２０の処理は、スナップショットシミュレーション機能開始指示／スナップショットシミュレーション機能終了指示受信待ちステップＳ１０１と、スナップショットシミュレーション機能開始指示／スナップショットシミュレーション機能終了指示判定ステップＳ１０２と、スナップショットシミュレーション機能有効フラグオンステップＳ１０３と、スナップショットシミュレーション機能終了指示通知ステップＳ１０４と、スナップショットシミュレーション機能有効フラグオフステップＳ１０５とからなる。
【００２９】
スナップショットシミュレーション機能制御手段２１は、ホスト１００からデータ更新要求があったときに、指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグがオンであれば、更新範囲判定手段１０に問い合わせて更新データの範囲に対応するビットマップ上のビットの通知を受け、ビットマップ情報更新手段１１によりビットマップ情報記憶手段１２の指定された論理ボリュームに関するビットマップ上の対応するビットをセットし、データ更新処理を実行する。
【００３０】
図４を参照すると、スナップショットシミュレーション機能制御手段２１のデータ更新要求受信時の処理は、データ更新要求受信ステップＳ２０１と、スナップショットシミュレーション機能有効フラグ確認ステップＳ２０２と、有効／無効判定ステップＳ２０３と、更新範囲対応ビット問い合わせステップＳ２０４と、対応ビットセットステップＳ２０５と、データ更新処理実行ステップＳ２０６とからなる。
【００３１】
同じく、図４を参照すると、スナップショットシミュレーション機能制御手段２１のシミュレーション結果報告指示受信時の処理は、スナップショットシミュレーション結果報告指示受信ステップＳ２１１と、スナップショットシミュレーション結果問い合わせステップＳ２１２と、スナップショットシミュレーション結果報告ステップＳ２１３とからなる。
【００３２】
スナップショットシミュレーション結果報告手段２２は、ホスト１００や図示しない保守端末からのシミュレーション結果報告指示に応じてスナップショットシミュレーション機能により算出したスナップショットの物理ディスク容量を報告する。
【００３３】
図５を参照すると、スナップショットシミュレーション結果報告手段２２のシミュレーション機能終了指示受信時の処理は、スナップショットシミュレーション機能終了指示受信ステップＳ３０１と、セットビット数調査ステップＳ３０２と、スナップショット物理ディスク容量計算ステップＳ３０３と、全ビットリセットステップＳ３０４とからなる。
【００３４】
同じく、図５を参照すると、スナップショットシミュレーション結果報告手段２２のシミュレーション結果報告指示受信時の処理は、スナップショットシミュレーション結果報告指示受信ステップＳ３１１と、スナップショット物理ディスク容量報告ステップＳ３１２とからなる。
【００３５】
次に、このように構成された実施例１に係るスナップショットシミュレーション機能を有するディスクアレイ装置１の動作について説明する。
【００３６】
ホスト１００からディスクアレイ装置１に対してデータ更新要求を発行する場合、ＲＡＩＤ構成の複数の物理ディスク３０により構築されたディスクユニット部３における論理ボリューム番号と、更新開始論理アドレスおよびサイズとを指定する。
【００３７】
ディスクアレイ装置１は、論理ボリュームと物理ディスク３０との対応を管理しており、指定された論理ボリューム番号と、更新開始論理アドレスおよびサイズとをもとに物理ディスク３０にデータを書き込む。
【００３８】
ホスト１００または図示しない保守端末からスナップショットシミュレーション機能開始指示を受けると（ステップＳ１０１）、スナップショットシミュレーション機能管理手段２０は、スナップショットシミュレーション機能開始指示かスナップショットシミュレーション機能終了指示かを判定し（ステップＳ１０２）、スナップショットシミュレーション機能開始指示であるので、スナップショットシミュレーション機能開始指示で指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグをオンにする（ステップＳ１０３）。このスナップショットシミュレーション機能開始指示は、論理ボリューム単位で指示可能で、ディスクアレイ装置１内でスナップショットシミュレーション機能が有効な論理ボリュームと無効な論理ボリュームとを共存させることができる。
【００３９】
スナップショットシミュレーション機能の有効フラグがセットされた論理ボリュームに対して、ホスト１００からデータ更新要求を受けた場合（ステップＳ２０１）、スナップショットシミュレーション機能制御手段２１は、データ更新要求があったときに、指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグを確認し（ステップＳ２０２）、有効または無効を判定する（ステップＳ２０３）。
【００４０】
有効であれば、スナップショットシミュレーション機能制御手段２１は、更新範囲判定手段１０に問い合わせて更新データの範囲に対応するビットマップ上のビットの通知を受ける（ステップＳ２０４）。
【００４１】
更新範囲判定手段１０は、指定された更新開始論理アドレスおよびサイズからビットマップ情報記憶手段１２の対応する管理単位を判定し、該当するビットマップのビットを通知する。
【００４２】
次に、スナップショットシミュレーション機能制御手段２１は、ビットマップ情報更新手段１１により通知されたビットに該当するビットマップ情報記憶手段１２の指定された論理ボリュームに関するビットマップ上のビットをセットする（ステップＳ２０５）。
【００４３】
ビットマップ情報更新手段１１は、ビットマップ情報記憶手段１２における該当する管理単位のビットをセットする。更新データの範囲が管理単位サイズよりも大きければ複数のビットがセットされ、更新データの範囲が管理単位サイズより小さい場合も最低１ビットがセットされる（更新開始論理アドレスおよびサイズによっては管理単位をまたぐために２ビット以上がセットされる場合もある）。
【００４４】
続いて、スナップショットシミュレーション機能制御手段２１は、データ更新処理を実行する（ステップＳ２０６）。
【００４５】
ステップＳ２０３で無効であれば、スナップショットシミュレーション機能制御手段２１は、直ちにデータ更新処理を実行する（ステップＳ２０６）。
【００４６】
ホスト１００が業務ジョブを実行すると、多数のデータ更新要求が発行され、ビットマップ情報記憶手段１２の該当論理ボリュームに対応するビットマップにてセットされるビットが増加してゆく。
【００４７】
ホスト１００および図示しない保守端末からスナップショットシミュレーション機能終了指示を受けると（ステップＳ１０１）、スナップショットシミュレーション機能管理手段２０は、スナップショットシミュレーション結果報告手段２２にスナップショットシミュレーション機能終了指示を通知する（ステップＳ１０４）。
【００４８】
スナップショットシミュレーション結果報告手段２２は、スナップショットシミュレーション機能管理手段２０からスナップショットシミュレーション機能終了指示を受信すると（ステップＳ３０１）、ビットマップ情報記憶手段１２の該当論理ボリュームに対応するビットマップ上にセットされているビット数を調べ（ステップＳ３０２）、該ビット数×管理単位サイズを計算してスナップショットの物理ディスク容量として記憶し（ステップＳ３０３）、ビットマップ情報更新手段１１によりビットマップ情報記憶手段１２の該当論理ボリュームに対応するビットマップ上の全ビットをリセットする（ステップＳ３０４）。
【００４９】
ビットマップ情報更新手段１１は、ビットマップ情報記憶手段１２における該当する論理ボリュームの全ての管理単位のビットをリセットする。
【００５０】
次に、スナップショットシミュレーション機能管理手段２０は、スナップショットシミュレーション機能終了指示で指定された論理ボリュームに関するスナップショットシミュレーション機能の有効フラグをオフにする（ステップＳ１０５）。
【００５１】
スナップショットシミュレーション機能終了指示を受けた以降のデータ更新処理においては、有効フラグがオフであるので、スナップショットシミュレーション機能が働かず、物理ディスク３０のデータを更新するだけの通常処理に戻る。
【００５２】
ホスト１００および図示しない保守端末からスナップショットシミュレーション結果報告指示を受信すると（ステップＳ２１１）、スナップショットシミュレーション機能制御手段２１は、スナップショットシミュレーション結果報告手段２２にスナップショットシミュレーション結果報告指示を通知する（ステップＳ２１２）。
【００５３】
スナップショットシミュレーション結果報告手段２２は、スナップショットシミュレーション機能制御手段２１からスナップショットシミュレーション結果報告指示を受けると（ステップＳ３１１）、指定された論理ボリュームに対応して記憶するスナップショットの物理ディスク容量をスナップショットシミュレーション機能制御手段２１に報告する（ステップＳ３１２）。
【００５４】
スナップショットシミュレーション機能制御手段２１は、スナップショットシミュレーション結果報告手段２２からスナップショットの物理ディスク容量の報告を受けると（ステップＳ２１２）、ホスト１００および図示しない保守端末に指定された論理ボリュームに対応するスナップショットの物理ディスク容量をスナップショットシミュレーション結果として報告する（ステップＳ２１３）。
【００５５】
実施例１によれば、スナップショットを実際に作成しなくともスナップショットに必要となる物理ディスク容量を知ることができる。スナップショットでは定期的にバックアップをとるのが一般的であるから、何回かスナップショットシミュレーション機能によりスナップショットに必要な物理ディスク容量の報告を受け、実際にスナップショットを導入した際に必要なスナップショットの物理ディスク容量を見積もることが可能である。従って、スナップショットに適切な増設ディスク容量を事前に知ることができ、構成設計での無駄なコストを削減することができる。
【００５６】
なお、実施例１では、スナップショットシミュレーション結果報告手段２２が、スナップショットシミュレーション機能管理手段２０からスナップショットシミュレーション機能終了指示を受信したときに、指定された論理ボリュームのスナップショットの物理ディスク容量のみを報告するようになっているが、論理ボリューム毎のスナップショットの物理ディスク容量を全論理ボリューム分加算した結果を全論理ボリュームのスナップショットの物理ディスク容量として指定された論理ボリュームのスナップショットの物理ディスク容量と併せてまたは単独で報告するようにしてもよい。
【実施例２】
【００５７】
図６は、本発明の実施例２に係るスナップショットシミュレーション機能を有するディスクアレイ装置の構成を示すブロック図である。本実施例に係るスナップショットシミュレーション機能を有するディスクアレイ装置は、図１に示した実施例１に係るスナップショットシミュレーション機能を有するディスクアレイ装置に対して、スナップショットシミュレーションプログラム２００を付加するようにした点だけが異なる。したがって、その他の特に言及しない部分には同一符号を付して、それらの詳しい説明を省略する。
【００５８】
スナップショットシミュレーションプログラム２００は、ディスクアレイ装置１に読み込まれ、ディスクアレイ装置１の動作を、更新範囲判定手段１０，ビットマップ情報更新手段１１，ビットマップ情報記憶手段１２，スナップショットシミュレーション機能管理手段２０，スナップショットシミュレーション機能制御手段２１，およびスナップショットシミュレーション結果報告手段２２として制御する。スナップショットシミュレーションプログラム２００の制御によるディスクアレイ装置１の動作は、実施例１におけるスナップショットシミュレーション機能を有するディスクアレイ装置１の動作と全く同様になるので、その詳しい説明を割愛する。
【図面の簡単な説明】
【００５９】
【図１】本発明の実施例１に係るスナップショットシミュレーション機能を有するディスクアレイ装置の構成を示すブロック図である。
【図２】実施例１に係るスナップショットシミュレーション機能を有するディスクアレイ装置における論理ボリュームとビットマップ情報記憶手段との関係を説明する図である。
【図３】図１中のスナップショットシミュレーション機能管理手段の処理を示すフローチャートである。
【図４】図１中のスナップショットシミュレーション機能制御手段の処理を示すフローチャートである。
【図５】図１中のスナップショットシミュレーション結果報告手段の処理を示すフローチャートである。
【図６】本発明の実施例２に係るスナップショットシミュレーション機能を有するディスクアレイ装置の構成を示すブロック図である。
【符号の説明】
【００６０】
１  ディスクアレイ装置
２  ディスク制御部
３  ディスクユニット部
１０  更新範囲判定手段
１１  ビットマップ情報更新手段
１２  ビットマップ情報記憶手段
２０  スナップショットシミュレーション機能管理手段
２１  スナップショットシミュレーション機能制御手段
２２  スナップショットシミュレーション結果報告手段
３０  物理ディスク
１００  ホスト
２００  スナップショットシミュレーションプログラム
S１０１  スナップショットシミュレーション機能開始指示／スナップショットシミュレーション機能終了指示受信待ちステップ
Ｓ１０２  スナップショットシミュレーション機能開始指示／スナップショットシミュレーション機能終了指示判定ステップ
Ｓ１０３  スナップショットシミュレーション機能有効フラグオンステップ
Ｓ１０４  スナップショットシミュレーション機能終了指示通知ステップ
Ｓ１０５  スナップショットシミュレーション機能有効フラグオフステップ
Ｓ２０１  データ更新要求受信ステップ
Ｓ２０２  スナップショットシミュレーション機能有効フラグ確認ステップ
Ｓ２０３  有効／無効判定ステップ
Ｓ２０４  更新範囲対応ビット問い合わせステップ
Ｓ２０５  対応ビットセットステップ
Ｓ２０６  データ更新処理実行ステップ
Ｓ２１１  スナップショットシミュレーション結果報告指示受信ステップ
Ｓ２１２  スナップショットシミュレーション結果問い合わせステップ
Ｓ２１３  スナップショットシミュレーション結果報告ステップ
Ｓ３０１  スナップショットシミュレーション機能終了指示受信ステップ
Ｓ３０２  セットビット数調査ステップ
Ｓ３０３  スナップショット物理ディスク容量計算ステップ
Ｓ３０４  全ビットリセットステップ
Ｓ３１１  スナップショットシミュレーション結果報告指示受信ステップ
Ｓ３１２  スナップショット物理ディスク容量報告ステップ
【図１】
2005128590.tif 000003
【図２】
2005128590.tif 000004
【図３】
2005128590.tif 000005
【図４】
2005128590.tif 000006
【図５】
2005128590.tif 000007
【図６】
2005128590.tif 000008