(57)【要約】【課題】差分スナップショットとボリュームスナップショットを併用して、差分ボリュームの消費を抑制することを目的とする。【解決手段】クライアントコンピュータからのスナップショット作成要求を受け付ける手順（Ｓ１）と、スナップショット作成要求があったときに、第２のボリュームにおける更新差分の使用率を取得する手順（Ｓ３）と、ユーザの前記第２のボリュームにおける更新差分の使用履歴を取得する手順（Ｓ２）と、使用率と前記使用履歴に基づいて第１のボリュームの更新差分を第２のボリュームに書き込む差分スナップショットと、第３のボリュームを第１のボリュームに同期させるボリュームスナップショットのいずれか一方を選択する手順（Ｓ４、Ｓ５）と、選択した差分スナップショットまたはボリュームスナップショットのいずれか一方を実行する手順（Ｓ６、Ｓ７）とを含む。【選択図】図７
2006065622.tif 000002
【特許請求の範囲】
【請求項１】
格納したデータの参照または更新を行う第１のボリュームと、前記第１のボリュームの更新差分を格納する第２のボリュームと、前記第１のボリュームの複製を格納する第３のボリュームを備えて、クライアントコンピュータからの要求に基づいて前記第１のボリュームのスナップショットを作成するスナップショットの作成方法であって、
前記クライアントコンピュータからのスナップショット作成要求を受け付ける手順と、
前記スナップショット作成要求があったときの前記第２のボリュームにおける更新差分の使用率を取得する手順と、
前記スナップショット作成要求を行ったユーザを予め設定したアカウントに基づいて特定する手順と、
前記ユーザの前記第２のボリュームにおける更新差分の使用履歴を取得する手順と、
前記使用率と前記使用履歴に基づいて、第１のボリュームの更新差分を第２のボリュームに書き込む差分スナップショットと、前記第３のボリュームを第１のボリュームに同期させるボリュームスナップショットのいずれか一方を選択する手順と、
前記選択した差分スナップショットまたはボリュームスナップショットのいずれか一方を実行する手順と、
を含むことを特徴とするスナップショットの作成方法。
【請求項２】
前記差分スナップショットとボリュームスナップショットのいずれか一方を選択する手順は、前記第２のボリュームの更新差分の使用率が予め設定した第１のしきい値未満のときに、前記使用履歴にかかわらず差分スナップショットを選択し、前記第２のボリュームの更新差分の使用率が予め設定した第２のしきい値以上のときには、前記使用履歴にかかわらずボリュームスナップショットを選択することを特徴とする請求項１に記載のスナップショットの作成方法。
【請求項３】
前記差分スナップショットとボリュームスナップショットのいずれか一方を選択する手順は、前記第２のボリュームの更新差分の使用率が予め設定した第１のしきい値以上、かつ、前記第２のしきい値未満のときには、前記ユーザの更新差分の使用履歴に基づいて、前記差分スナップショットと、前記ボリュームスナップショットのいずれか一方を選択することを特徴とする請求項１に記載のスナップショットの作成方法。
【請求項４】
前記ユーザの更新差分の使用履歴を取得する手順は、
前記第２のボリューム上に残っている前記ユーザが作成した更新差分の数と、前記ユーザがスナップショットの作成要求を行った回数との比を求める手順を含み、
前記差分スナップショットとボリュームスナップショットのいずれか一方を選択する手順は、
前記第２のボリュームの更新差分の使用率が予め設定した第１のしきい値以上、かつ、前記第２のしきい値未満のときに、前記更新差分の数と作成要求を行った回数との比が予め設定した第３のしきい値未満のときには、差分スナップショットを選択する一方、前記更新差分の数と作成要求を行った回数との比が、第３のしきい値以上のときには、ボリュームスナップショットを選択することを特徴とする請求項３に記載のスナップショットの作成方法。
【請求項５】
前記ユーザの更新差分の使用履歴を取得する手順は、
前記ユーザが要求したスナップショットの作成要求数と、前記ユーザが要求した更新差分の削除数と、これら作成要求数と削除要求数の差に基づいて、前記第２のボリュームで使用している更新差分の数を待ち行列の数として取得する手順を含み、
前記差分スナップショットとボリュームスナップショットのいずれか一方を選択する手順は、
前記第２のボリュームの更新差分の使用率が予め設定した第１のしきい値以上、かつ、前記第２のしきい値未満のときに、前記待ち行列の数が予め設定した第４のしきい値未満のときには、差分スナップショットを選択する一方、前記待ち行列の数が、第４のしきい値以上のときには、ボリュームスナップショットを選択することを特徴とする請求項３に記載のスナップショットの作成方法。
【請求項６】
前記第２のボリューム上に残っている前記ユーザが作成した更新差分の数と、前記ユーザがスナップショットの作成要求を行った回数との比を求める手順は、
前記ユーザがファイルシステム毎に作成した更新差分の数と、記ユーザがファイルシステム毎にスナップショットの作成要求を行った回数との比であることを特徴とする請求項４に記載のスナップショットの作成方法。
【請求項７】
前記第２のボリュームで使用している更新差分の数を待ち行列の数として取得する手順は、
前記ユーザがファイルシステム毎に要求したスナップショットの作成要求数と、前記ユーザがファイルシステム毎に要求した削除要求数と、これら作成用球数と削除要求数の差に基づいて、前記第２のボリュームで使用している更新差分の数を待ち行列の数として取得することを特徴とする請求項５に記載のスナップショットの作成方法。
【請求項８】
格納したデータの参照または更新を行う第１のボリュームと、前記第１のボリュームの更新差分を格納する第２のボリュームと、前記第１のボリュームの複製を格納する第３のボリュームを備えて、クライアントコンピュータからの要求に基づいて前記第１のボリュームのスナップショットを作成するプログラムであって、
前記クライアントコンピュータからのスナップショット作成要求を受け付ける処理と、
前記スナップショット作成要求があったときの前記第２のボリュームにおける更新差分の使用率を取得する処理と、
前記スナップショット作成要求を行ったユーザをアカウントに基づいて特定する処理と、
前記ユーザの前記第２のボリュームにおける更新差分の使用履歴を取得する処理と、
前記使用率と前記使用履歴に基づいて、第１のボリュームの更新差分を第２のボリュームに書き込む差分スナップショットと、前記第３のボリュームを第１のボリュームに同期させるボリュームスナップショットのいずれか一方を選択する処理と、
前記選択した差分スナップショットまたはボリュームスナップショットのいずれか一方を実行する処理と、
をコンピュータに機能させることを特徴とするプログラム。
【請求項９】
前記差分スナップショットとボリュームスナップショットのいずれか一方を選択する処理は、前記第２のボリュームの更新差分の使用率が予め設定した第１のしきい値未満のときに、前記使用履歴にかかわらず差分スナップショットを選択し、前記第２のボリュームの更新差分の使用率が予め設定した第２のしきい値以上のときには、前記使用履歴にかかわらずボリュームスナップショットを選択することを特徴とする請求項８に記載のプログラム。
【請求項１０】
前記差分スナップショットとボリュームスナップショットのいずれか一方を選択する処理は、前記第２のボリュームの更新差分の使用率が予め設定した第１のしきい値以上、かつ、前記第２のしきい値未満のときには、前記ユーザの更新差分の使用履歴に基づいて、前記差分スナップショットと、前記ボリュームスナップショットのいずれか一方を選択することを特徴とする請求項８に記載のプログラム。
【請求項１１】
前記ユーザの更新差分の使用履歴を取得する処理は、
前記第２のボリューム上に残っている前記ユーザが作成した更新差分の数と、前記ユーザがスナップショットの作成要求を行った回数との比を求める処理を含み、
前記差分スナップショットとボリュームスナップショットのいずれか一方を選択する処理は、
前記第２のボリュームの更新差分の使用率が予め設定した第１のしきい値以上、かつ、前記第２のしきい値未満のときに、前記更新差分の数と作成要求を行った回数との比が予め設定した第３のしきい値未満のときには、差分スナップショットを選択する一方、前記更新差分の数と作成要求を行った回数との比が、第３のしきい値以上のときには、ボリュームスナップショットを選択することを特徴とする請求項１０に記載のプログラム。
【請求項１２】
前記ユーザの更新差分の使用履歴を取得する処理は、
前記ユーザが要求したスナップショットの作成要求数と、前記ユーザが要求した更新差分の削除数と、これら作成要求数と削除要求数の差に基づいて、前記第２のボリュームで使用している更新差分の数を待ち行列の数として取得する処理を含み、
前記差分スナップショットとボリュームスナップショットのいずれか一方を選択する処理は、
前記第２のボリュームの更新差分の使用率が予め設定した第１のしきい値以上、かつ、前記第２のしきい値未満のときに、前記待ち行列の数が予め設定した第４のしきい値未満のときには、差分スナップショットを選択する一方、前記待ち行列の数が、第４のしきい値以上のときには、ボリュームスナップショットを選択することを特徴とする請求項１０に記載のプログラム。
【請求項１３】
前記第２のボリューム上に残っている前記ユーザが作成した更新差分の数と、前記ユーザがスナップショットの作成要求を行った回数との比を求める処理は、
前記ユーザがファイルシステム毎に作成した更新差分の数と、記ユーザがファイルシステム毎にスナップショットの作成要求を行った回数との比であることを特徴とする請求項１１に記載のプログラム。
【請求項１４】
前記第２のボリュームで使用している更新差分の数を待ち行列の数として取得する処理は、
前記ユーザがファイルシステム毎に要求したスナップショットの作成要求数と、前記ユーザがファイルシステム毎に要求した削除要求数と、これら作成用球数と削除要求数の差に基づいて、前記第２のボリュームで使用している更新差分の数を待ち行列の数として取得することを特徴とする請求項１２に記載のプログラム。
【請求項１５】
複数のボリュームを備えたストレージ装置と、
クライアントコンピュータからの要求に応じて前記ストレージ装置を制御する制御部と、を備えたストレージシステムであって、
前記ストレージ装置には、格納したデータの参照または更新を行う第１のボリュームと、前記第１のボリュームの更新差分を格納する第２のボリュームと、前記第１のボリュームの複製を格納する第３のボリュームを備え、
前記クライアントコンピュータからの参照要求または更新要求に応じて、前記第１のボリュームにアクセスを行うアクセス制御部と、
ネットワークを介して接続されたクライアントコンピュータからスナップショットの作成要求を受け付けるスナップショット要求受付部と、
前記第１のボリュームの更新差分を第２のボリュームに書き込む差分スナップショットを実行する差分スナップショット実行部と、
前記第３のボリュームを第１のボリュームに同期させるボリュームスナップショットを実行するボリュームスナップショット実行部と、
前記スナップショット作成要求があったときの前記第２のボリュームにおける更新差分の使用率を取得する使用率取得部と、
前記スナップショット作成要求を行ったユーザの前記第２のボリュームにおける更新差分の使用履歴を取得する使用履歴取得部と、
前記スナップショット作成要求があったときには、前記使用率取得部の使用率と、使用履歴取得部の使用履歴に基づいて、前記差分スナップショット実行部とボリュームスナップショット実行部のいずれか一方を選択し、スナップショットの作成要求を指令するスナップショット実行部と、
を備えたことを特徴とするストレージシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データのバックアップ方法に関し、特に、差分スナップショットを用いるものに関する。
【背景技術】
【０００２】
コンピュータシステムにおいては、ストレージ装置に記憶されるデータをバックアップする場合など、ある時点での整合性を保って元のデータを保存するスナップショットが知られている。
【０００３】
このスナップショットの取得には、元のデータを記憶した主ボリュームの複製を他の差分ボリュームに生成するボリュームスナップショットが知られている。
【０００４】
また、元のデータを記憶した主ボリュームと複製データを記憶した副ボリュームとの間で、ある時点での整合性を保ち、ある時点の後に元のデータが更新されたとしてもある時点の元のデータを参照できるようにする差分スナップショットが知られている。
【０００５】
差分スナップショットの技術によれば、整合性を保つべき時点の後に元のデータが更新される場合には、整合性を保つべき時点のデータを別の差分ボリュームに記憶するようにする。つまり元のデータは、更新されなければそのままであり、更新される場合には整合性を保つべき時点のデータが別の記憶ボリュームに記憶される（例えば、特許文献１）。
【特許文献１】特開２００２−２７８８１９号
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、上記ボリュームコピーの場合では、確保するスナップショットの数だけ副ボリュームが必要となって、ストレージ装置の大型化を招く場合がある。
【０００７】
また、上記差分スナップショットの場合では、ボリュームコピーに比して必要とする記憶ボリュームの容量は少なくてすむ反面、差分スナップショットが削除されずに放置されると、差分ボリュームが差分情報で溢れてしまい、過去に取得した差分情報が失われるおそれがある。
【０００８】
そこで本発明は、上記問題点に鑑みてなされたもので、差分ボリュームの使用量と差分スナップショットの使用状況を監視して、差分スナップショットとボリュームスナップショットを併用して、差分ボリュームの消費を抑制することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、クライアントコンピュータからのスナップショット作成要求を受け付ける手順と、前記スナップショット作成要求があったときに、第１のボリュームの更新差分を格納する前記第２のボリュームにおける更新差分の使用率を取得する手順と、前記スナップショット作成要求を行ったユーザを予め設定したアカウントに基づいて特定する手順と、前記ユーザの前記第２のボリュームにおける更新差分の使用履歴を取得する手順と、前記使用率と前記使用履歴に基づいて、第１のボリュームの更新差分を第２のボリュームに書き込む差分スナップショットと、第３のボリュームを第１のボリュームに同期させるボリュームスナップショットのいずれか一方を選択する手順と、選択した差分スナップショットまたはボリュームスナップショットのいずれか一方を実行する手順とを含む。
【００１０】
また、前記使用率が予め設定した第１のしきい値未満のときには、差分スナップショットを選択し、前記使用率が予め設定した第２のしきい値以上のときには、ボリュームスナップショットを選択し、記使用率が予め設定した第１のしきい値以上、第２のしきい値未満のときには、ユーザの第２のボリュームの使用履歴に基づいて差分スナップショットとボリュームスナップショットのいずれかを決定する。
【発明の効果】
【００１１】
したがって、本発明は、差分スナップショットを格納する第２のボリュームの使用率を監視して、使用率に応じて実行するスナップショットを差分スナップショットとボリュームスナップショットのいずれかに切り換えるので、差分スナップショットを格納する第２のボリュームの消費を抑制することができる。
【００１２】
また、ユーザの第２のボリュームの使用履歴に応じて実行するスナップショットを切り換えることで、不要な差分スナップショットの増加を抑制しながら、必要な差分スナップショットを保存することができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の一実施形態を添付図面に基づいて説明する。
【００１４】
図１は、本発明をＮＡＳ(Network Attached Storage)１に適用した場合のシステムの全体的な構成を示すブロック図で、図２はＮＡＳ１のソフトウェア構成を示すブロック図である。
【００１５】
ＮＡＳ１は、ディスク装置３１、３２、３３とバックアップ装置５（例えば、テープ装置など）、これらディスク装置３１、３２、３３からなるディスクサブシステム２０及びバックアップ装置５と、これらディスクサブシステム２０及びバックアップ装置５を制御するコントローラ１０を含んで構成されている。
【００１６】
また、ＮＡＳ１は、ネットワーク６を介してＮＡＳ１に対してデータの書き込み（更新）や読み出し（参照）を要求するＮＦＳクライアントコンピュータ７やＣＩＦＳクライアントコンピュータ８に接続されている。なお、ＮＦＳクライアントコンピュータ７は、ＯＳがＵＮＩＸ（登録商標）であり、ＮＦＳ（Network File System）によりＮＡＳ１に格納されたデータの参照、更新要求を行い、ＣＩＦＳクライアントコンピュータ８は、ＯＳがWindows（登録商標）であり、ＣＩＦＳ（Common Internet File System）によりＮＡＳ１に格納されたデータの参照、更新要求を行う。
【００１７】
ＮＦＳクライアントコンピュータ７やＣＩＦＳクライアントコンピュータ８は、ＮＡＳ１の管理者権限でＮＡＳ１にアクセスした場合には、ＮＡＳ１に格納されるデータ（ファイル）へアクセス（参照または更新）するユーザのアクセス権限の設定や、ＮＡＳ１のファイルやディレクトリ毎のアクセス権の設定を行い、また、後述するスナップショットの切り換えのポリシーを設定することができる。なお、ディスク装置３１、３２、３３には、予め設定したファイルシステムが構築されている。
【００１８】
そして、ディスクサブシステム２０には、ディスク装置３１、３２、３３で構成される記憶領域に、主ボリューム２１と主ボリューム２１の複製を格納する副ボリューム２２が設定される。
【００１９】
主ボリューム２１には、ＮＦＳクライアントコンピュータ７、ＣＩＦＳクライアントコンピュータ８からのファイルの参照要求、更新要求を行うＰ（Primary）ボリューム２３（図２参照）と、Ｐボリューム２３の差分スナップショットを格納する差分ボリューム２４が設定される。
【００２０】
この差分スナップショットは、運用ボリュームであるＰボリューム２３にデータの更新があると、まず、更新前のデータを更新差分情報として差分ボリューム２４に格納する。その後、Ｐボリューム２３のデータを更新する、いわゆるコピーオンライトを行う。そして、後述する差分スナップショット機能により、Ｐボリューム２３と差分ボリューム２４を論理的に結合した論理ボリュームをクライアントコンピュータ（ＮＦＳクライアントコンピュータ７またはＣＩＦＳクライアントコンピュータ８、以下同様）へ提供することにより、クライアントコンピュータは更新前と更新後のデータを参照することが可能となる。
【００２１】
副ボリューム２２には、Ｐボリューム２３の複製（ボリュームコピー）を格納するＳ（Secondary）ボリューム２５（図２参照）が設定される。
【００２２】
副ボリューム２２のデータ（Ｓボリューム２５）はバックアップ装置５に所定のタイミング（例えば、副ボリューム２２のデータが更新されたとき）でバックアップされる。
【００２３】
なお、ＮＦＳクライアントコンピュータ７及びＣＩＦＳクライアントコンピュータ８には、図示はしないがＣＰＵ、メモリ、ネットワーク６に接続されるインターフェース、表示装置や入力装置が備えられる。
【００２４】
ＮＡＳ１のコントローラ１０は後述する制御プログラムによって、クライアントコンピュータからのファイルの参照要求、更新要求などに応じてディスクサブシステム２０に対するデータの入出力を制御し、スナップショットを作成する。
【００２５】
図１において、ＮＡＳ１のコントローラ１０には、ＣＰＵ１１、メモリ１２、データ転送コントローラ１３、ネットワークインターフェース１４及びストレージ用のインターフェース１５が設けられている。なお、メモリ１２にデータキャッシュ（図示省略）を設けても良く、あるいは、データキャッシュをデータ転送コントローラ１３側に設けても良い。
【００２６】
メモリ１２には制御プログラム（図２参照）がロードされており、ＣＰＵ１１が制御プログラムを呼び出して実行することによって後述する各種処理が行われる。
【００２７】
データ転送コントローラ１３は、ＣＰＵ１１、ネットワークインターフェース１４、ストレージインターフェース１５及びメモリ１２の間でデータを転送する。
【００２８】
図２は、コントローラ１０で実行される制御プログラムの機能ブロックを示す。ＮＡＳ＿ＯＳ５５は、各制御プログラムの実行管理を行い、例えば、クライアントコンピュータからのファイルアクセスを受け付けるＮＦＳ／ＣＩＦＳファイルサーバ５０、差分スナップショット機能とボリュームスナップショット（ボリュームコピー）を選択的に切り替えるスナップショット取得制御部５１と、Ｐボリューム２３の複製をＳボリューム２５に作成するボリュームスナップショット要求部５２と、ＮＦＳ／ＣＩＦＳファイルサーバ５０からのファイルアクセスに基づいてＰボリューム２３のアクセスを行うファイルシステム５３、Ｐボリューム２３の更新差分を差分ボリューム２４に生成する差分スナップショット部５４の実行管理を行う。
【００２９】
また、ＮＡＳ１のディスクサブシステム２０には、Ｐボリューム２３の内容をＳボリューム２５に選択的に複写するボリュームスナップショット部２６が機能している。
【００３０】
ボリュームスナップショット部２６は、Ｐボリューム２３とＳボリューム２５を、同期状態と切り離し状態のいずれかに選択するもので、ボリュームスナップショット要求部５２からボリュームスナップショットの作成要求があると、Ｓボリューム２５をＰボリューム２３にさせて、Ｐボリューム２３の複製をＳボリューム２５に書き込んでボリュームスナップショットを作成する。ボリュームスナップショットが完了すると、ボリュームスナップショット部２６は、Ｐボリューム２３とＳボリューム２５を切り離し状態として、Ｓボリューム２５の内容を保存する一方、Ｐボリューム２３の更新を行う。
【００３１】
この、ボリュームスナップショット部２６は、ＮＡＳ１のハードウェアまたはファームウェアによって実現される。
【００３２】
ＮＦＳ／ＣＩＦＳファイルサーバ５０は、クライアントコンピュータ７、８からの認証要求に応じて、要求のあったユーザのアカウントＩＤと、予め設定したユーザのアカウントＩＤをパスワードに基づいて認証を行う。その後、認証が完了したユーザ（アカウントＩＤ）からの参照要求または更新要求を受け付けて、運用ボリュームであるＰボリューム２３に対して参照、更新を行う（ファイルアクセス受付処理）。なお、ユーザのアカウントＩＤとパスワードなどを含むユーザ情報はディスク装置３１〜３２のうち任意のディスク装置（但し、運用ボリューム（Ｐボリューム２３）やスナップショット保存用のボリュームを除く他のボリューム）に格納され、管理者権限で認証したクライアントコンピュータ７、８から設定されたものである。
【００３３】
次に、図３はスナップショット取得制御部５１の詳細を示す。
【００３４】
スナップショット取得制御部５１は、クライアントコンピュータ７、８などからスナップショットの作成要求・削除要求を受け付け、適用するスナップショットの種別を決定するスナップショット要求受付処理部５１１と、差分ボリューム２４に格納された差分スナップショットの利用状況を取得して、差分使用ログ６１を作成する差分スナップショット使用状況取得部５１２から構成される。
【００３５】
スナップショット要求受付処理部５１１は、クライアントコンピュータ７、８からのスナップショット作成要求を受け付けると、後述するように、スナップショットの要求内容を示す要求ログ６０と差分スナップショットの利用状況を示す差分使用ログ６１を読み込んで、差分スナップショットとボリュームスナップショットのいずれを適用するか決定する。この決定が差分スナップショットの場合には、差分スナップショット部５４に差分スナップショットの作成要求を送り、あるいはボリュームスナップショットの場合には、ボリュームスナップショット部２６にボリュームスナップショットの作成要求を送ってＰボリューム２３とＳボリューム２５の同期をとることでスナップショットの作成を実行させる。
【００３６】
ここで、要求ログ６０は、スナップショットの作成要求があったときに、スナップショット要求受付処理部５１１により作成されるものである。この要求ログ６０の一例としては、図５で示すように、スナップショットの作成または削除の要求があった日時６０１、要求を行ったユーザのアカウントＩＤ６０２、スナップショットの作成または削除要求の対象となるファイルシステム名６０３、要求が作成または削除のいずれであるかを示す処理区分６０４、決定されたスナップショットの処理が差分スナップショットまたはボリュームスナップショットのいずれであるかを示す処理方式６０５を１レコードとして構成する。
【００３７】
差分使用ログ６１は、図６で示すように、ファイルシステム名６１１毎にレコードが作成され、各ファイルシステム名に対応するユーザのアカウントＩＤ毎に差分スナップショット使用状況（使用履歴）６１２を複数記録したものである。例えば、図６において、ｆｓ１のファイルシステム名６１１について、アカウントＩＤ＝ａｃｃｏｕｎｔ１の使用状況６１２は、「７／１０」となっている。これは、ユーザが作成した７つの差分スナップショットが差分ボリューム２４に残っており、スナップショットの作成要求が１０回あったことを示しており。
【００３８】
ａｃｃｏｕｎｔ２、３のユーザも同様に、差分ボリューム２４に残っている差分スナップショットの数（ＳＳ残数）と、スナップショットを要求した回数（ＳＳ要求回数）が記録される。なお、差分スナップショットの数（ＳＳ残数）とスナップショットを要求した回数（ＳＳ要求回数）の比率（ＳＳ残数／ＳＳ要求回数）を記録しても良い。
【００３９】
この差分使用ログ６１は、ファイルシステム名６１１毎に、複数のユーザのアカウントＩＤ６１２毎の差分スナップショットの使用状況を記録しており、ユーザのアカウントＩＤに対応するフィールドは、ユーザの数に対応した数だけ確保される（図中６１２ｎ）。そして、この差分使用ログ６１は、差分スナップショット使用状況取得部５１２により定期的（例えば、数時間あるいは１日おき）にバッチ処理などで更新される。
【００４０】
次に、スナップショット要求受付処理部５１１が、スナップショットの作成に対して差分スナップショットとボリュームスナップショットのいずれかに決定する際のポリシーについて説明する。
【００４１】
スナップショット要求受付処理部５１１は、予め設定されたポリシー情報６２を読み込んで、作成するスナップショットの種別を後述のように決定しており、例えば、ポリシー情報６２の一例としては、図４で示すように、判定条件１と判定条件２から構成される。
【００４２】
判定条件１：
ａ）差分ボリューム２４の使用率が３０パーセント未満の場合→差分スナップショット
ｂ）差分ボリューム２４の使用率が３０パーセント以上、７０パーセント未満の場合→判定条件２で決定
ｃ）差分ボリューム２４の使用率が７０パーセント以上の場合→ボリュームスナップショット
判定条件２：
ｄ）要求したユーザのＳ差分スナップショット残数と要求回数の比が３０パーセント未満の場合→差分スナップショット
ｅ）要求したユーザのＳ差分スナップショット残数と要求回数の比が３０パーセント以上の場合→ボリュームスナップショット
以上のポリシーによりユーザからのスナップショット作成要求に対し、差分ボリューム２４の使用率と、要求したユーザのスナップショットの残数と要求回数の比に応じて差分スナップショットとボリュームスナップショットのいずれかが決定される。なお、差分ボリューム２４の使用率は、ファイルシステム５３に含まれる機能から取得すればよい。
【００４３】
なお、上記ポリシー情報６２、要求ログ６０、差分使用ログ６１は、ディスク装置３１〜３２のうち任意のディスク装置に格納される。
【００４４】
次に、図７のフローチャートを参照しながらスナップショット要求受付処理部５１１で行われるスナップショットの作成要求処理について説明する。このフローチャートは、クライアントコンピュータ７、８からスナップショットの作成要求があったときに実行されるものである。
【００４５】
まず、Ｓ１では、スナップショットの作成要求を行ったユーザのアカウントＩＤとファイルシステム名を読み込み、さらにポリシー情報６２から判定条件１、２を読み込む。
【００４６】
Ｓ２では、上記Ｓ１で読み込んだアカウントＩＤとファイルシステム名をキーとして、差分使用ログ６１を検索し、該当するアカウントＩＤ及びファイルシステム名の差分スナップショットの使用状況（残数と要求回数）を読み込む。そして、該当ユーザのファイルシステム名に対する差分スナップの残数と作成要求回数の比（残数／要求回数）を求める。
【００４７】
Ｓ３では、差分ボリューム２４の全容量のうち、現在差分スナップショットが占有している容量の比率を取得する。
【００４８】
Ｓ４では、上記Ｓ１で読み込んだポリシー情報６２の判定条件１と比較を行い、上記判定条件１のａ）またはｃ）に合致した場合には、Ｓ５に進み、そうでない場合にはＳ８に進んで判定条件２との比較を行う。
【００４９】
Ｓ５では、判定条件１のａ）に合致した場合には、Ｓ６へ進んで差分スナップショット部５４にＰボリューム２３の更新差分を差分ボリューム２４へ書き込むように指令し、判定条件１のｃ）に合致した場合には、Ｓ７へ進んでボリュームスナップショット部２６にＰボリューム２３とＳボリューム２５を同期させるように指令する。
【００５０】
Ｓ８では、上記判定条件２のｄ）、ｅ）のいずれに合致するかを判定し、ｄ）と合致する場合には、Ｓ８に進んで差分スナップショット部５４にＰボリューム２３の更新差分を差分ボリューム２４へ書き込むように指令し、判定条件２のｅ）に合致した場合には、Ｓ７へ進んでボリュームスナップショット部２６にＰボリューム２３の内容をＳボリューム２５へ更新差分を差分ボリューム２４へ書き込むように指令する。
【００５１】
そして、Ｓ６またはＳ７でスナップショットの作成を指令した後、Ｓ９では上記図５で示したように、現在の日時、アカウントＩＤ、ファイルシステム名、処理区分、今回の処理で決定した処理方式を要求ログ６０に書き込む。
【００５２】
上記スナップショットの作成要求受付処理により、ユーザからスナップショットの作成要求があった時点の差分ボリューム２４の使用率が、予め設定した第１のしきい値（ここでは３０％）未満の場合では、差分スナップショットの作成を許可する一方、差分ボリューム２４の使用率が、予め設定した第２のしきい値（ここでは７０％）未満の場合では、差分スナップショットを禁止してボリュームスナップショットとする。
【００５３】
したがって、差分ボリューム２４の使用率が高い（第２のしきい値を超えている）場合には、全てのユーザがボリュームスナップショットにスナップショットを作成することになって、差分ボリューム２４が差分スナップショットで溢れるのを防止することができる。
【００５４】
そして、差分ボリューム２４の使用率が少ない（第１のしきい値未満）場合では、全てのユーザが差分スナップショットにより、過去のデータを残した状態で、新たなデータをＰボリューム２３に更新することができる。
【００５５】
さらに、差分ボリューム２４の使用率が第１のしきい値以上かつ第２のしきい値未満の場合では、判定条件２により、差分使用ログ６１に記録された各ユーザのファイルシステム名毎の使用履歴に基づいて、差分スナップショットを用いるかボリュームスナップショットを用いるかが決定される。
【００５６】
すなわち、要求したユーザのアカウントＩＤとファイルシステム名から差分使用ログ６１を検索し、差分スナップショットの残数とスナップショットの作成要求回数の比が、予め設定した第３のしきい値未満であれば、差分スナップショットの使用を許可する許可する一方、差分スナップショットの残数とスナップショットの作成要求回数の比が、予め設定した第３のしきい値以上の場合には差分スナップショットの使用を禁止して、ボリュームスナップショットに決定する。
【００５７】
したがって、差分ボリューム２４の使用率が中間（第１のしきい値以上かつ第２のしきい値未満）の場合は、差分スナップショットの残数の比率（残数／要求回数）が低い（第３のしきい値未満）ユーザに対して差分スナップショットの使用を許可する一方、差分スナップショットの残数の比率が高い（第３のしきい値以上）ユーザに対しては差分スナップショットの使用を禁止してボリュームスナップショットとする。
【００５８】
すなわち、頻繁に差分スナップショットの削除を行って、こまめにメンテナンスを行うユーザ対しては、差分ボリューム２４の使用率が第２のしきい値未満であれば、いつでも差分スナップショットの使用を許可する。これに対して、差分スナップショットを作成したものの、削除をあまり行わないユーザに対しては、差分スナップショットの使用を制限することができる。
【００５９】
このように、差分ボリューム２４の使用率が第２のしきい値未満の場合では、クライアントコンピュータ７、８からスナップショットの作成要求を行ったユーザの差分スナップショットのメンテナンスの実績に応じて、差分スナップショットの使用許可を与えることにより、差分スナップショットのメンテナンスに余り関心のないユーザに対しては差分スナップショットの使用を禁止してボリュームスナップショットのみを許可することで、差分ボリューム２４の使用率が不要に増大するのを防ぎ、差分ボリュームの消費を抑制することができる。
【００６０】
なお、スナップショットの削除要求については、図示はしないが、スナップショット要求受付処理部５１１が以下の処理を行う。
【００６１】
削除要求を行ったユーザのアカウントＩＤとファイルシステム名から、差分ボリューム２４内で該当する差分スナップショットを削除する。次に、上記図５の要求ログ６０に要求日時、アカウントＩＤとファイルシステム、「削除」、「差分」を書き込んで終了する。
【００６２】
次に、上記Ｓ２で使用される差分使用ログ６１の作成について、図８のフローチャートを参照しながら説明する。図８のフローチャートは、差分スナップショット使用状況取得部５１２で上記所定のタイミングでバッチ処理などにより実行されるものである。
【００６３】
Ｓ１１では、まず、図６に示した差分使用ログ６１を読み込む。Ｓ１２では、読み込んだ差分使用ログ６１を、図９に示す集計テーブルに展開する。なお、この集計テーブルは、メモリ１２上で展開されるもので、行方向にアカウントＩＤ７１１、ファイルシステム名７１２、差分スナップショット残数、スナップショットの作成要求回数が設定され、列方向にアカウントＩＤとファイルシステム名に対応した数の列が作成される。例えば、インデックスｉ＝ｎ−１のアカウントＩＤ＝user００１には、ファイルシステム名７１２にｆｓ１が設定され、このユーザuser００１のファイルシステムｆｓ１に関する差分スナップショット残数が５で、スナップショットの作成要求回数が１０であることが格納されている。
【００６４】
次に、Ｓ１３では、要求ログ６０を先頭から１レコードずつ読み込んで以下の処理を行う。
【００６５】
Ｓ１４では、要求ログ６０の終端（End  Of  File）に達したか否かを判定し、終端でなければＳ１５に進み、終端に達したらＳ２４に進む。
【００６６】
Ｓ１５では、読み込んだ要求ログ６０から、アカウントＩＤとファイルシステム名、処理区分及び処理方式を抽出する。
【００６７】
そして、Ｓ１６では、アカウントＩＤとファイルシステム名をキーとして、図９に示した集計テーブルを検索する。
【００６８】
Ｓ１７では、検索の結果、該当するアカウントＩＤとファイルシステム名があればＳ１８に進む一方、該当するデータがない場合にはＳ２２へ進む。
【００６９】
Ｓ１８では、処理区分が「作成」で、かつ、処理方式が「差分」であるか否かを判定し、この条件に一致する場合にはＳ１９に進んで、集計テーブルのＳＳ残数と作成要求回数にそれぞれ１を加算し、集計テーブルを更新する。
【００７０】
Ｓ１８の条件に一致しない場合には、Ｓ２０に進んで、処理区分が「削除」で、かつ、処理方式が「差分」であるか否かを判定し、この条件に一致する場合にはＳ２１に進んで、集計テーブルのＳＳ残数から１を減算し、集計テーブルを更新する。なお、Ｓ２０の条件に一致しない場合にはＳ１３に戻る。
【００７１】
一方、Ｓ１７の判定で、該当するデータがない場合にはＳ２２へ進み、処理区分が「作成」で、かつ、処理方式が「差分」であるか否かを判定し、この条件に一致する場合にはＳ２３に進んで、集計テーブルの未使用の格納位置にアカウントＩＤとファイルシステム名及びＳＳ残数と作成要求回数を１として集計テーブルを更新する。なお、この条件に一致しない場合には、Ｓ１３に戻る。
【００７２】
上記Ｓ１３からＳ１９、Ｓ２１、Ｓ２３を繰り返して実行し、要求ログ６０の終端に達するとＳ２４に進み、更新された集計テーブルを差分使用ログ６１に書き戻す。
【００７３】
このように、差分スナップショット使用状況取得部５１２は、定期的に要求ログ６０を読み込んで、差分スナップショットの作成あるいは削除したことを、ユーザのアカウントＩＤとファイルシステム名の組み合わせを単位として管理し、差分スナップショットの増減と要求回数の集計を行う。
【００７４】
そして、上記図８で更新された差分使用ログ６１をスナップショット要求受付処理部５１１が参照することで、ユーザとファイルシステム毎の差分スナップショットのメンテナンス状況を正確に把握することができる。
【００７５】
なお、上記実施形態においては、差分ボリューム２４上のスナップショットの残数と、スナップショットの作成要求回数に応じて、ユーザとファイルシステム毎の差分スナップショットのメンテナンス状況を取得したが、スナップショットの作成要求をサービスの受付、スナップショットの削除をサービスの完了として、削除が行われていないサービスを保持する待ち行列をユーザとファイルシステム毎に設け、この待ち行列の大きさに応じて差分スナップショットの使用許可の判定を行っても良い。この場合、上記図８のフローチャートにおいて、残数を待ち行列に読み替えて、Ｓ１９、Ｓ２３では待ち行列にサービスを一つ追加し、Ｓ２０で待ち行列からサービスを一つ削除するようにすればよい。
【００７６】
そして、差分スナップショットの使用率が第１のしきい値以上、第３のしきい値未満のときには、待ち行列の数が予め設定した第４のしきい値未満のときには差分スナップショットを適用し、待ち行列の数が第４のしきい値以上のときにはボリュームスナップショットを適用すればよい。
【００７７】
図１０は第２の実施形態を示し、前記第１の実施形態のＮＡＳ１に代わって、ＳＡＮ（Storage Area Network）に本発明を適用した例を示す。
【００７８】
ＦＣ（Fiber Chanel）等で構成されＳＡＮ６ａには、複数のディスク装置を備えたストレージ装置３、ストレージ装置３にデータの参照または更新を要求し、スナップショットの作成または削除を行う運用ホストコンピュータ２と、ストレージ装置３のデータをバックアップするバックアップ装置５がそれぞれ接続される。さらにＳＡＮ６ａに接続された管理ホストコンピュータ４は、ストレージ装置３にＰボリューム２３、差分ボリューム２４、Ｓボリューム２５等の記憶領域を設定し、運用ホストコンピュータ２にこれらの記憶領域を割り当てる。
【００７９】
運用ホストコンピュータ２には、ＯＳ５５’上でストレージ装置３のＰボリューム２３に対して参照・更新を行う業務アプリケーション５００と、差分スナップショットとボリュームスナップショット（ボリュームコピー）を選択的に切り替えるスナップショット取得制御部５１と、Ｐボリューム２３の複製をＳボリューム２５に作成する指令を発行するボリュームスナップショット要求部５２と、業務アプリケーション５００からのファイルアクセスに基づいてＰボリューム２３のアクセスを行うファイルシステム５３、Ｐボリューム２３の更新差分を差分ボリューム２４に生成する差分スナップショット部５４が実行される。
【００８０】
また、ストレージ装置３には、Ｐボリューム２３の内容をＳボリューム２５へ選択的に複写するボリュームスナップショット部２６が機能している。
【００８１】
上記スナップショット取得制御部５１、ナップショット要求部５２、ファイルシステム５３、差分スナップショット部５４、ボリュームスナップショット部２６は前記第１実施形態と同様に構成され、ストレージ装置３等に格納した要求ログ６０、差分使用ログ６１に基づいて、ユーザとファイルシステム毎に差分スナップショットのメンテナンス状況を取得して、差分スナップショットの使用可否を判定し、差分スナップショットまたはボリュームスナップショットを選択的に切り換えてスナップショットを作成する。
【００８２】
また、バックアップ装置５は、所定のタイミングでボリュームスナップショットを保存したＳボリューム２５の内容を、バックアップする。
【００８３】
上記ＳＡＮに適用した場合も、前記第１実施形態と同様に、差分ボリューム２４の使用率が第２のしきい値未満のときには、ユーザとファイルシステム毎の差分スナップショットのメンテナンス状況に基づいて差分スナップショットの使用を選択的に許可することで、差分ボリューム２４のスナップショットが溢れるのを防ぎながら、ボリュームスナップショットによるスナップショットでデータの複製を保存することができる。
【図面の簡単な説明】
【００８４】
【図１】システムの全体的な構成を示すブロック図。
【図２】ＮＡＳのコントローラで実行されるソフトウェア構成を示すブロック図。
【図３】スナップショット取得制御部のソフトウェア構成を示すブロック図。
【図４】スナップショット要求受付処理部が読み込むデータの一覧を示す説明図。
【図５】要求ログの一例を示す説明図。
【図６】差分使用ログの一例を示す説明図。
【図７】スナップショット要求受付処理部で行われる処理の一例を示すフローチャート。
【図８】差分スナップショット使用状況取得部で行われる差分スナップショットの使用状況取得処理の一例を示すフローチャート。
【図９】差分スナップショット使用状況取得部で作成される集計テーブルの一例を示す説明図。
【図１０】第２の実施形態を示し、ＳＡＮを用いたシステムの全体的な構成を示すブロック図。
【符号の説明】
【００８５】
１  ＮＡＳ
６  ネットワーク
７  ＮＦＳクライアントコンピュータ
８  ＣＩＦＳクライアントコンピュータ
１０  コントローラ
２３  Ｐボリューム
２４  差分ボリューム
３１〜３３  ディスク装置
２５  Ｓボリューム
５０  ＮＦＳ／ＣＩＦＳファイルサーバ
５１  スナップショット取得制御部
５２  ボリュームスナップショット要求部
５４  差分スナップショット部
【図１】
2006065622.tif 000003
【図２】
2006065622.tif 000004
【図３】
2006065622.tif 000005
【図４】
2006065622.tif 000006
【図５】
2006065622.tif 000007
【図６】
2006065622.tif 000008
【図７】
2006065622.tif 000009
【図８】
2006065622.tif 000010
【図９】
2006065622.tif 000011
【図１０】
2006065622.tif 000012