(57)【要約】      （修正有）【課題】スナップ処理の実施によりデータが世代ごとに有効活用でき、かつ無駄な世代管理をなくすることができる。【解決手段】ストレージシステム１００には、スナップショット対象デバイス１１０の差分データを世代管理する為に差分データ格納エリア１２０を持つ。スナップショットコマンド制御部２００はサーバ３００側からのスナップショット制御のコマンド発行要求を受け付けてコマンド処理を行う。スナップショットの更新差分の容量管理や予め指定された更新容量と実際の更新容量との比較判断し、指定された更新容量に従って更新差分の仮世代管理、といった処理を実施する機能を有すスナップショット指定更新容量管理部２１０、更新差分の容量管理や、世代管理に伴い必要に応じてサーバ側に管理状況や処理結果を通知する機能を有するスナップショット指定容量通知部２２０を有する。【選択図】        図３
2005235058.tif 000002
【特許請求の範囲】
【請求項１】
情報処理システムからのデータを受領して複数の記憶デバイスへのデータの書き込みや読み出しを制御するストレージシステムにおけるスナップショットデータの取得方法であって、
前記ストレージシステムは、少なくとも2つ以上の期間において該期間に更新されたデータを該期間開始時点のデータに復元するためのデータを、該期間ごとに区分して保持する更新データ管理領域を有し、
最新の更新期間における前記期間開始時点のデータに復元するためのデータ容量と、前記区分された更新データ管理領域の容量とを比較して、その差分が所定の値になった場合に、前記情報処理装置に対して通知を行うことを特徴とするスナップショットデータの取得方法。
【請求項２】
請求項１において、
スナップショットを取得する更新容量を予め指定しておき、利用者側がシステムに応じて指定した更新容量に対し、スナップショット処理を実行した際にその対象となるデバイスで、その指定した更新容量を満たすデータ更新が行なわれたか否かを判断することを特徴とするスナップショット取得方法。
【請求項３】
請求項２において、
前記更新容量を満たすデータ更新が行なわれた場合は、スナップショットデータを取得することを特徴とするスナップショット取得方法。
【請求項４】
請求項２において、
前記更新容量を満たすデータ更新が行なわれなかった場合は、スナップショットデータの取得しないことを特徴とするスナップショット取得方法。
【請求項５】
請求項２において、
前記更新容量を満たすデータ更新が行なわれなかった場合は、スナップショットデータの取得処理を行なわず1 つ前の期間のスナップショットデータに統合することを特徴とするスナップショット取得方法。
【請求項６】
情報処理システムからのデータを受領して複数の記憶デバイスへのデータの書き込みや読み出しを制御するストレージシステムにおけるスナップショットデータの取得装置であって、
少なくとも2つ以上の期間において該期間に更新されたデータを該期間開始時点のデータに復元するためのデータを、該期間ごとに区分して保持する更新データ管理領域を有し、
前記スナップショットデータの更新容量を指定する手段と、
前記記憶デバイスが実際に更新されたデータの更新容量と、指定した更新容量を比較してスナップショットデータを取得すべきか否かを判断する手段と、
実際の更新容量が指定した更新容量を超過した場合には、該スナップショットデータを前記更新データ管理領域の次の期間の区分に仮保持する手段を備えたことを特徴とするスナップショット取得装置。
【請求項７】
請求項６において、
スナップショットを取得するための更新容量を予め指定する手段と、利用者側がシステムに応じて指定した更新容量に対し、スナップショット処理を実行した際にその対象となるデバイスで、その指定した更新容量を満たすデータ更新が行なわれたか否かを判断する手段を備えたことを特徴とするスナップショット取得装置。
【請求項８】
請求項７において、
前記指定した更新容量を満たすデータ更新が行なわれたか否かを判断する手段が、前記更新容量を満たすデータ更新が行なわれたと判断した場合にスナップショットデータを取得してスナップショット管理の対象とすることを特徴とするスナップショット取得装置。
【請求項９】
請求項７において、
前記指定した更新容量を満たすデータ更新が行なわれたか否かを判断する手段が、前記更新容量を満たすデータ更新が行なわれなかったと判断した場合にスナップショットデータを取得処理しないことを特徴とするスナップショット取得装置。
【請求項１０】
請求項７において、
前記指定した更新容量を満たすデータ更新が行なわれたか否かを判断する手段が、前記更新容量を満たすデータ更新が行なわれなかった場合は、スナップショットデータの取得処理をしないで前記更新データ管理領域の前期間の区分に含めることを特徴とするスナップショット取得装置。
【請求項１１】
サーバに接続されたスナップショット対象デバイスを具備するデータ格納システムを備えたサーバからなるコンピュータシステムであって、
前記サーバにスナップショット操作部を備え、
前記データ格納システムに、差分データ格納領域を有すると共に、スナップショット制御デバイスと、スナップショットコマンド制御部と、スナップショット指定更新容量管理部と、スナップショット指定更新容量通知部とを備えたことを特徴とするスナップショット取得機能を備えたコンピュータシステム。
【請求項１２】
請求項１１において、
前記サーバの複数はネットワークにより接続され、該ネットワークにはジョブ管理マネージャを有して前記複数のサーバのジョブを管理するためのジョブ管理サーバが接続されており、
前記各サーバには、前記ジョブ管理マネージャからの指示で当該サーバのスナップショットを実施するジョブ管理エージェントを有することを特徴とするスナップショット取得機能を備えたコンピュータシステム。
【請求項１３】
請求項１１又は１２において、
前記スナップショット操作部は、スナップショット指定更新容量登録部と、スナップショット指定更新容量監視部と、スナップショットコマンド操作部とを有することを特徴とするスナップショット取得機能を備えたコンピュータシステム。
【請求項１４】
請求項１１または１２において、
前記差分データ格納領域は、複数世代の差分データ格納領域を有することを特徴とするスナップショット取得機能を備えたコンピュータシステム。
【請求項１５】
請求項１１乃至１４の何れかにおいて、
前記サーバと前記データ格納システムとは、ＳＣＳＩ、ファイバチャネル、及びＳＡＮ接続インタフェースを介して接続されていることを特徴とするスナップショット取得機能を備えたコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータシステムに係り、特に情報処理システムからのデータを受領して複数の記憶デバイスへのデータの書き込みや読み出しを制御するストレージシステムにおけるスナップショットデータの取得方法とその装置及びこのスナップショット取得機能を備えたコンピュータシステムに関する。
【背景技術】
【０００２】
コンピュータシステムは、１または複数の情報処理装置（以下、サーバとも称する）やこれらサーバからの要求でデータを書き込み、あるいは読み出しを行うデータ格納システム（以下、ストレージシステムとも称する）、これらの間を接続する各種のネットワーク等で構成される。このようなストレージシステムにおいては、少なくとも２以上の期間において、該期間において更新されたデータを該期間開始時点のデータに復元する目的で、該期間ごとに区分したデータ（世代のデータ）をスナップショット取得することが行われる。すなわち、データ更新が行われた期間の前期間のデータ（前世代のデータ）を復元するため、当該更新命令で更新される期間のデータ（現在世代のデータ）の前期間のデータにスナップショット処理を実施して該期間のデータをスナップショットデータとして取得し、これを保持する。スナップショットで取得したデータは、更新期間と当該更新前期間との変化分（差分データ）として、その取得した期間順すなわち世代順に所定のデータ格納領域に保持される。なお、スナップショットデータの世代管理を開示したものとして、特許文献１を挙げることができる。
【特許文献１】特開２００２−２７８８１９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、通常はディスク装置（ハードディスク、ディスクデバイスとも称する）であるスナップショット取得対象デバイスのデータ更新容量が少ない場合、その期間のスナップショットデータの更新容量が少ないために実際に利用されることが少ない世代のデータ（差分データ）として管理することになる。特に、スナップショットを頻繁に取得する場合や、世代管理数に制限がある場合のシステム運用において、従来の技術では利用される可能性の少ない無駄な世代のデータを管理せざるを得ない。
【課題を解決するための手段】
【０００４】
本発明は、現状では一般的に実施されているスナップショット取得手段に加え、主にはスナップショットデータとして有効にするための更新容量を指定する手段と、スナップショット対象デバイスが実際に更新されたデータの更新容量と指定した更新容量を比較してスナップショットデータを取得すべきか否かを判断する手段と、実際の更新容量が指定した更新容量を超過した場合に仮世代割付けを行い所定世代のデータ復元に有効な世代管理を実施する手段を具備する。
【０００５】
そして、スナップショット処理にて取得した差分データ（更新前後における当該期間のデータの変化分）として管理しているデータがそれぞれ極力活用され、かつ無駄に世代管理を行なわないようにするために、スナップショットを取得する更新容量を予め指定しておく。利用者側がシステムに指定した更新容量に対し、スナップショット処理を実行した際にその対象となるデバイスにおいて、指定した更新容量を満たすデータ更新が行なわれたか否かを判断し、その結果、満たした場合にはスナップショットデータを取得し世代管理の対象とし、満たしていない場合には処理を行なわず世代管理の対象としないか、或いは1 つ前の世代に統合する。
【発明の効果】
【０００６】
本発明によれば、指定した更新容量に応じたスナップショット処理を実施することにより取得したデータが世代ごとに有効活用でき、かつ無駄な世代管理をなくすことが可能となると共に、スナップショット処理によって取得したデータが世代ごとに利用価値が向上し、かつ管理する世代の無駄をなくすことができる。
【発明を実施するための最良の形態】
【０００７】
図１は、本発明を適用するコンピュータシステムの一例の説明図である。図１における参照符号１００はストレージシステム、３００はサーバ（ホストコンピュータ）で、ストレージシステム１００との間でディスクデバイス１１０の書き込みや読み出しを行う情報処理装置（ホストコンピュータ、以下サーバと称する）である。ストレージシステム１００とサーバ３００は、例えばＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などの通信回線４００で接続されている。サーバ３００は、中央処理装置（ＣＰＵあるいはＭＰＵ）３００１、メモリ及びメモリコントローラ３００２、ネットワーク通信インタフェース３００３、周辺機器接続インタフェース３００４、入出力（Ｉ／Ｏ）コントローラとしての拡張バス３００６および拡張スロット３００７、内蔵ディスク３００８、およびシステムバス３００７を有する。
【０００８】
ネットワーク通信インタフェース３００３は、このサーバ３００をリモートコンピュータシステムとの間を接続する専用回線あるいは公衆回線などの通信回線５００に接続する。周辺機器接続インタフェース３００４はユーザインタフェースであるディスプレイ３００９、キーボード３０１０、マウス３０１１などを接続する。また、周辺機器接続インタフェース３００４には内蔵ディスク３００８も接続されている。
【０００９】
ストレージシステム１００は、システム制御部１０１、キャッシュメモリ１０２、ディスクデバイス側制御部及び接続インタフェース１０３、サーバ側制御部及び接続インタフェース１０４、ディスクデバイス（ディスク装置）１１０、これらを接続するデータバス１０５，１０６、制御バス１０７，１０８で構成される。なお、システム制御部１０１は、中央処理装置（ＣＰＵあるいはＭＰＵ）１０１１、メモリ１０１２、制御モジュール（プログラム、制御プログラム格納部）１０１３を備えている。ディスクデバイス１１０は複数のディスク装置１１０Ａ，１１０Ｂ，１１０Ｃ，・・・・１１０Ｎで構成されている。
【００１０】
図２は、本発明を適用するコンピュータシステムの他例の説明図である。このコンピュータシステムは、サーバ２０００Ａ，２０００ＶＢにつながるストレージサブシステム１０００を備える。このストレージサブシステム１０００は、基本筐体１１００と増設筐体１４００で構成されている。基本筐体１１００は増設筐体１４００を制御する２つのシステムコントローラ１２００Ａ，１２００Ｂを有する。このシステムコントローラ１２００Ａ，１２００Ｂは、所謂ＲＡＩＤ（Ｒｅｄｕｂｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）コントローラである。
【００１１】
この例では、基本筺体１１０はＳＡＮ（Ｓｔｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）２１３０で上位装置であるサーバ２０００Ａ，２０００Ｂに接続されている。サーバ２０００Ａ，２０００Ｂはホストアダプター１０２Ａ，１０２Ｂを有している。ホストアダプター１０２Ａ，１０２ＢはＦＣ（ファイバチャネル）／ＳＣＳＩインターフェースボードである。基本筺体１１０と増設筺体１４０はバックエンドＦＣループ２１６０で接続されている。
【００１２】
増設筺体１４００はドライブ筺体も称し、ここでは１個のみを示したが、実際には複数個設置されるのが一般的である。増設筺体１４００はＳＡＴＡ（Ｓｅｒｉａｌ−ＡＴＡ）ドライブであるディスク装置２１７１，２１７３を有する。このディスク装置２１７１，２１７３に対して、第１のドライブコントローラ２１５０Ａと第２のドライブコントローラ２１５０Ｂからなる２重構成のドライブコントローラが設けられている。第１のドライブコントローラ２１５０Ａは増設筺体１４００のコントローラであり、第１のポートバイパス回路２１５１Ａ、第１のインタフェース接続装置２１５２Ａを有している。
【００１３】
ＳＡＴＡドライブはディスク装置２１７１，２１７３およびＤＰＤ（デュアルポートデバイス：２ポート装置）２１７０，２１７２から構成される。デュアルポートデバイスＤＰＤ２１７０，２１７２はディスク装置２１７１，２１７３を第１のドライブコントローラ２１５０Ａの第１のインタフェース接続装置２１５２Ａと第２のドライブコントローラ２１５０Ｂの第２のインタフェース接続装置２１５２Ｂとにアクセスパスを切り分ける機能を有する。すなわち、第１のドライブコントローラ２１５０Ａの第１のインタフェース接続装置２１５２Ａと第２のドライブコントローラ２１５０Ｂの第２のインタフェース接続装置２１５２Ｂからのデータ線のどちらかをディスク装置２１７１，２１７３に繋げる機能を有する。
【００１４】
第１のポートバイパス回路２１５１Ａ、第２のポートバイパス回路２１５１Ｂはパス（データ線）の経路を切り分ける回路で、これら自身がパス切り分けを実行するのではなく、システムコントローラ１２００Ａ，１２００Ｂの指示に従ってパスを切り分ける。
【００１５】
図２におけるシステムコントローラ１２００Ａは、ホストコンピュータ２０００Ａ，２０００Ｂとの通信を司るインタフェースを備えた通信制御装置２１２１Ａ、通信制御装置２１２１Ａとコントローラ部２１２３Ａの間で授受されるデータを一時的に記憶するキャッシュメモリ２１２２Ａを有する。参照符号２１２４Ａはデータバスを示す。コントローラ部２１２３Ａは通信制御装置２１２１Ａからのデータ入出力要求によりドライブ（ディスク装置）へのデータの書込みや読み出しをキャッシュメモリ２１２２Ａを介して実行する。システムコントローラ２１２０Ｂについても、上記の各符号の“Ａ”を“Ｂ”に置き換えることで同様の構成説明となる。
【００１６】
本発明は、上記した種々のコンピュータシステムにおけるストレージシステム（ディスクデバイス、ディスク装置）に適用可能なスナップショット取得方法とその装置であり、以下実施例により詳細に説明する。
【実施例１】
【００１７】
図３は、本発明の実施例１を説明するスナップショット取得装置のシステム構成を示す図である。図３において、ストレージシステム１００はサーバ３００と接続インタフェース４００を介して接続されている。接続インタフェース４００は、ＳＣＳＩ、ファイバチャネル（ＦＣ）、及びＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）といった、様々なサーバとストレージシステム間のデバイス接続形態を採用できる。サーバ３００はストレージシステム１００内の実際の利用領域となるスナップショット対象デバイス１１０（ここでは、ディスク装置）及びスナップショットコマンド制御を可能とするスナップショット制御デバイス１３０が接続されている。更に、図３では、サーバ３００とストレージシステム１００はネットワーク５００を介しても接続されているものとして図示している。
【００１８】
図示したように、本実施例の構成では、サーバ３００とストレージシステム１００のコマンド発行、処理結果通知といった通信経路としてスナップショット制御デバイス１３０とネットワーク５００の双方を備えているが、特に双方が必須ということでは無く、いずれかの通信経路を備えていれば実施可能である。
【００１９】
そして、このストレージシステム１００には、スナップショット対象デバイス１１０あるいはスナップショット制御デバイス１３０としてのディスク装置に、あるいは図示しない別のディスク装置に、スナップショット対象デバイス１１０の差分データを世代管理する為に差分データ格納エリア１２０を持つ。なお、以下では、エリアを領域と称する場合もある。この差分データはスナップショットコマンドが発行された期間のデータ（更新データ）とその期間の前の期間のデータ（更新前データ）との差分（更新差分）、すなわち変化分のデータである。以下では、スナップショットデータを取得する各期間を世代とも称し、各期間で取得した差分データの管理を世代管理と称し、スナップショットで取得した差分データの格納領域を世代管理データを格納する区分とも称する。
【００２０】
また、本発明を実施するための機能として、サーバ側からのスナップショット制御のコマンド発行要求を受け付けてコマンド処理を行う機能を有するスナップショットコマンド制御部２００、スナップショットの更新差分の容量管理や予め指定された更新容量と実際の更新容量との比較判断し、指定された更新容量に従って更新差分の仮世代管理、といった処理を実施する機能を有すスナップショット指定更新容量管理部２１０、更新差分の容量管理や、世代管理に伴い必要に応じてサーバ側に管理状況や処理結果を通知する機能を有するスナップショット指定容量通知部２２０を有する。
【００２１】
図４は、図３におけるスナップショット操作部の詳細を説明する図である。実際のスナップショット処理要求はサーバ３００側に設けるスナップショット操作機能３１０で実施する。スナップショット操作機能３１０は図４に示す様に、どのくらいの更新差分容量をスナップショットの管理対象とするかを設定する機能を有するスナップショット指定更新容量登録部３１１、ストレージシステムの本実施例による管理状況をストレージシステムからの通知として受け付ける機能を有するスナップショット指定更新容量監視部３１２、実際のスナップショット処理要求をストレージシステムに出す機能を有するスナップショットコマンド操作部３１３で構成される。
【００２２】
図５は、本発明の実施例１のスナップショット処理におけるスナップショット操作部の処理の流れを示す図である。スナップショット処理を実行するに際して、まず第１にスナップショット処理を有効と見なす更新差分の容量を登録する。ここで設定した値が以降の説明での指定更新容量になる。まず、サーバ側で利用者がスナップショット更新の容量をどのくらいにしたいかをスナップショット指定更新容量登録部３１０を用いて設定する。スナップショット指定更新容量登録部３１０でスナップショット更新容量を設定すると、スナップショット指定更新容量登録部３１１は設定された値での更新容量の登録をスナップショットコマンド操作部３１３に依頼する（手順Ｓ１）。すなわち、利用者がサーバ側でスナップショット操作部３１０のスナップショット指定更新容量登録部３１１で更新容量を指定すると、このスナップショット指定更新容量登録部３１１はスナップショットコマンド操作部３１３に容量設定コマンド発行を依頼する。
【００２３】
スナップショットコマンド操作部３１３は図３のサーバ３００とストレージシステム１００との間の通信経路を利用してスナップショットコマンド制御部２００に登録処理要求を出す（手順Ｓ２）。すなわち、容量設定コマンド発行の依頼を受けたスナップショットコマンド操作部３１３はストレージシステムのスナップショット制御部２００に容量設定コマンドを発行する。
【００２４】
登録要求を受けたスナップショットコマンド制御部２００はスナップショット指定更新容量管理部２１０に登録要求を通知し登録が完了する（手順Ｓ３）。すなわち、ストレージシステムのスナップショットコマンド制御部２００はスナップショット指定更新容量管理部２１０に対し、受けたコマンドを通知する。スナップショット指定更新容量管理部２１０は、指定された容量を登録し、管理する。
【００２５】
これで、実施例１におけるスナップショット処理の準備が完了となる。
【００２６】
図６は、本発明の実施例１のスナップショット処理におけるスナップショット取得の基本的な処理の流れを示す図である。前記したスナップショット処理の準備が完了すると、図６に示した処理の流れとなる。図６では、例として、ある数ｎ（２以上のｎ期間、すなわちn世代）に対し、（ｎ−１）世代のまでのスナップショットデータ（差分データ）が取得済みの状態で、次のスナップショットコマンド発行でｎ世代目のスナップショットデータが取得される状態と仮定する。このような状態において、スナップショット対象デバイス（ディスク装置）へのアクセスによりデータ更新が行われており、その更新差分はｎ世代目の差分データとして差分データ格納エリア１２０に、スナップショット指定更新容量管理部２１０によって管理されている（手順Ｓ４）。手順Ｓ４の差分データの状況監視では、更新容量がどの位になっているかも管理しており、事前に登録されている指定更新容量との比較も行っている。
【００２７】
利用者はサーバ３００側でスナップショットコマンド操作部３１３にてスナップショット処理実施のコマンドを発行すると、その処理要求がストレージサブシステム１００側のスナップショットコマンド制御機能２００に渡される（手順Ｓ５：スナップショット実施（コマンド発行））。
【００２８】
スナップショットコマンド制御部２００はそのコマンドを受け付け、スナップショット指定更新容量管理部２１０に現状のスナップショットデータの管理状況を確認する（手順Ｓ６：スナップショットコマンド受付け、差分データ状況確認）。
【００２９】
スナップショット指定更新容量管理部２１０は、現状の管理中の当該世代が指定更新容量を、実際に更新されている容量が満たしているか否かを判断し、その判断結果をスナップショット制御コマンドに返す（手順Ｓ７：差分データ確認結果報告）。
【００３０】
スナップショットコマンド制御部２００は、スナップショット指定更新容量管理部２１０からもらった判断結果により、実際の更新容量が指定更新容量以上になり、条件を満たしていれば、ｎ世代目のスナップショットとして処理を実施する（手順Ｓ８：差分データの更新容量が指定容量を満たしていればスナップショット処理実施、満たしていなければ未処理（スキップ））。すなわち、実際の更新容量が指定更新容量に満たないと判断すれば、手順Ｓ８はスキップして処理を行わない（未処理）。実際の処理実施、未実施といった処理結果は発行したコマンドの戻り値としてサーバ３００側のスナップショットコマンド操作部３１３に結果報告する（手順Ｓ９：処理結果を発行コマンドに対するリターン値として報告）。
【００３１】
図７は、スナップショット指定更新容量管理部２１０がスナップショット処理を実施するか否かの判断をするためのより詳しい管理概念の一例を示す図である。また図８は、スナップショット指定更新容量管理部２１０がスナップショット処理を実施するか否かの判断をするためのより詳しい管理概念の他例を示す図である。図７に示すように、例えば、ｎ世代目のスナップショットデータを処理する際、指定更新容量Ｘに対し、実際の更新容量Ｙがあったとき、ＹがＸより小さければユーザが指定したスナップショットとして有効とみなす更新差分容量に達していないのでスナップショット処理を実施しない。
【００３２】
ＹがＸ以上の場合で、まずＹとＸが同じ場合には、ユーザが指定したスナップショットとして有効とみなす更新差分容量に達しているのでスナップショット処理を実施する。そして、ＹがＸを超過する場合には、図８に示すような２つのパターンが考えられる。まず、１つ目のパターンとしては、ＹがＸを容量観点で１世代分超過してかつ次の世代分の更新容量を超過しない場合であり、この場合は、超過した時点で指定更新容量Ｘを更新容量とするスナップショットデータの世代を仮割付けしておき、さらなる超過分は次世代と仮認識させておく。しかし実際のスナップショット処理時は超過分の更新差分も１つの世代に含めてスナップショットを実施する。
【００３３】
図８の例ではｎ世代目のスナップショット管理に対し、実際に更新容量が（ｎ＋１）世代分にまで跨がる更新容量が発生した場合であり、ｎ世代分の更新容量を超過している部分もｎ世代に含めることを示している。
【００３４】
すなわち、図８に矢印Ａで示したように、１世代分を超過して、かつ超過分がＸを越えない更新差分が発生する場合は、超過分を当該世代に含めて処理を実施する。また、指定更新容量Ｘに対し複数世代に跨がって更新差分が発生した場合、超過分がＸを越えない更新差分を１つ前の光威信差分に含めて複数世代分を一度に処理する。
【００３５】
２つ目のパターンとしては、実際の更新容量Ｙが指定更新容量Ｘを容量観点で複数世代分発生した場合であり、この場合は、超過する毎にスナップショットデータの世代を仮割付けしておき、次の世代に進める。スナップショット処理時では、指定更新容量Ｘを超過していない世代分のみ１つ前の世代に含め、その他の世代は指定更新容量Ｘでのスナップショットとして確定し、一度に複数世代のスナップショットデータを取得する。
【００３６】
すなわち、図８に矢印Ｂで示したように、指定した更新容量と同等の更新差分が発生したら、内部処理としてチェックポイントを設け、かつ仮世代として割り付けを実施し次の世代の差分容量管理領域を割り当てる。
【００３７】
図９は、指定した更新差分を超過した際の通知処理を示す図である。図８に示す様な更新差分容量が指定更新容量を超過する様な状態が発生した場合にはスナップショット処理を実施しても有効なスナップショットデータが取得可能な状態であることをサーバ３００側に通知し、スナップショット処理をユーザ側で効果的に実施可能とする。
【００３８】
図９に示すように、スナップショット指定更新容量管理部２１０が手順Ｓ４（差分データの状況監視）にて差分データ格納エリア１２０を監視している状況で、実際の更新容量が指定更新容量を超過したら、スナップショット指定更新容量管理部２１０で仮世代割付け及び次の世代の設定を実施する（手順Ｓ１０）。
【００３９】
すなわち、手順Ｓ１０では、指定更新容量を超過したら仮世代及びチェックポイントの割り付けをスナップショット指定更新容量管理部３１２で実施する。
【００４０】
更に、スナップショット指定更新容量管理部２１０は、スナップショット指定更新容量通知部２２０に対し、実際の更新容量が指定更新容量を満たしたことを通知する処理を依頼する（手順Ｓ１１）。依頼を受けたスナップショット指定更新通知部２２０はサーバ３００側のスナップショット指定更新容量監視部３１２に対し通知を行う（手順Ｓ１２）。これにより、サーバ３００側では、ストレージサブシステム１００側の処理状況を知ることが可能となる。
【００４１】
図１０は、複数のスナップショットの状態管理と自動スナップショットコマンド発行の説明図である。本発明を適用したコンピュータシステムが１または複数存在する場合に、ジョブ管理プログラムを利用して各スナップショットの処理状況を監視しておき、予め決めておいた世代数の通知が行われたところで、自動的にスナップショットコマンドを発行することにより、処理の自動化を図ることができる。
【００４２】
図１０において、複数のサーバ３００A,３００B,・・・３００Nを管理するジョブ管理サーバ６００を設ける。複数のサーバ３００A,３００B,・・・３００Nはストレージシステム１００A,１００B,・・・１００Nを接続している。サーバ３００A,３００B,・・・３００Nとストレージシステム１００A,１００B,・・・１００Nの構成は同一なので、以下ではサーバ３００Aについて説明する。先ず、準備として、ジョブ管理プログラムを有効とするために、ジョブ管理サーバ６００に全体のジョブ管理を統括するジョブ管理マネージャ（プログラム）６１０を用意しておく。スナップショットを実施するサーバ３００Aにはジョブ管理マネージャ６１０からの指示を受けて実際に処理を行うジョブ管理エージェント（プログラム）３１４Aを組み込んでおく。また、ジョブ管理マネージャ６１０に対し、各サーバ毎に世代仮割り付けの通知が何世代になったらスナップショットを実施するかを設定しておく。
【００４３】
ジョブ管理サーバ６００のジョブ管理マネージャ６１０はサーバ３００Aのジョブ管理エージェント３１４Aに対し、仮割り付けの通知が何回実施されたか、つまり世代数がいくつになっているかを監視する要求を出す（手順１）。ジョブ管理エージェント３１４Aはスナップショット指定容量監視部３１２Aに送られてくる通知を監視する（手順２）。監視していた通知回数（仮割り付けが行われている世代数）が予め設定していた世代数を満たしたら、ジョブ管理エージェント３１４Aがスナップショットコマンド操作部３１３Aに対しスナップショットコマンド発行の指示を出す（手順３）。
【００４４】
手順３により指示を受けたスナップショットコマンド操作部３１３Aは実際に当該コマンドを発行する。以下の処理は図９に準じる。これにより、予め決めておいた世代数の通知が行われたところで、自動的にスナップショットコマンドを発行することにより、処理の自動化を図ることができる。
【００４５】
図１１は、スナップショット指定更新容量管理部の管理項目を示す図である。すなわち、図１１は、ここまで説明した内容でスナップショット指定更新容量管理機能２１０で管理を行う管理項目を示している。管理テーブル１では、指定更新容量として設定された値、現在更新処理により発生した実際の更新容量、現在処理中の世代、仮世代として割り付けを行っている世代数、を管理している。 また、管理テーブル２では世代の状況を管理しており、管理下にある世代に対し、スナップショット実施の状況、取得済みのスナップショットの容量を管理している。管理テーブル２におけるステータスの内容は図１１中に示したとおりである。
【００４６】
図１２、及び図１３はこれまで説明した内容のうち、本発明の特徴的な処理を示すフローチャートである。図１２は、スナップショット指定更新容量管理部による実際の更新容量と指定更新容量を比較判断する処理の流れを示す図である。図１２において、スナップショット指定更新容量管理部は、現行世代でのデータ更新容量をチェックし（処理１、以下P―１のように表記）、「実際の更新容量」と「指定更新容量」を比較する（P？２）。この比較結果で「実際の更新容量」が「指定更新容量」に満たない場合（Yes）は（P―１）に戻る。
【００４７】
実際の更新容量」が「指定更新容量」以上である場合（No）は「現行世代を仮割付け」（P―３）し、「現行世代に＋１」して「現行世代」とする（P―４）。そして、「スナップショット実施可能な更新容量有り」を通知（P―５）し、「新たに設定した現行世代での更新容量クリア・設定」を行う（P―６）。その後、スナップショット機能の停止要求の有無を判断（P―７）し、「有り」（Yes）で終了、「無し」（No）の場合は（P―１）に戻る。
【００４８】
図１３は、実際のスナップショット処理実施時の管理状況に応じた処理の流れを示す図である。スナップショットコマンドが発行されると（P―１１）、仮割付け世代の有無を判断する（P―１２）。「仮割付け世代有」の場合（Yes）、仮世代が複数有るか否かを判断する（P―１３）。「有り」の場合（Yes）は「現行世代−２までの仮世代を確定し（P―１４）、「現行世代−１に現行世代の更新内容を統合する」（P―１５）。（P―１３）で「無し」の場合（No）は（P―１５）に行く。（P―１５）の処理後、現行世代をリセット（P―１６）し、処理結果を通知する（P―２０）。
【００４９】
また、（P―１２）で「無し」（No）の場合は、実際の更新容量と指定更新容量とを比較（P―１７）し、実際の更新容量が指定更新容量に満たない場合（Yes）はスナップショット処理を行わず、すなわち未実施としてスキップ（P―１８）し、その結果を通知する（P―２０）。そして、（P―１７）で実際の更新容量が指定更新容量以上であると判断された場合（No）、エラー処理を実施（P―１９）してその結果を通知する（P―２０）。
【図面の簡単な説明】
【００５０】
【図１】本発明を適用するコンピュータシステムの一例の説明図である。
【図２】本発明を適用するコンピュータシステムの他例の説明図である。
【図３】本発明の実施例１を説明するスナップショット取得装置のシステム構成を示す図である。
【図４】図３におけるスナップショット操作部の詳細を説明する図である。
【図５】本発明の実施例１のスナップショット処理におけるスナップシット操作部の処理の流れを示す図である。
【図６】本発明の実施例１のスナップショット処理におけるスナップショットの基本的な処理の流れを示す図である。
【図７】スナップショット指定更新容量管理部がスナップショット処理を実施するか否かの判断をするためのより詳しい管理概念の一例を示す図である。
【図８】スナップショット指定更新容量管理部がスナップショット処理を実施するか否かの判断をするためのより詳しい管理概念の他例を示す図である。
【図９】指定した更新差分を超過した際の通知処理を示す図である。
【図１０】複数のスナップショットの状態管理と自動スナップショットコマンド発行の説明図である。
【図１１】スナップショット指定更新容量管理部の管理項目を示す図である。
【図１２】スナップショット指定更新容量管理部による実際の更新容量と指定更新容量を比較判断する処理の流れを示す図である。
【図１３】実際のスナップショット処理実施時の管理状況に応じた処理の流れを示す図である。
【符号の説明】
【００５１】
１００・・・ ストレージシステム
１１０・・・ スナップショット対象デバイス（利用領域）
１２０・・・ 差分データ格納エリア
１３０・・・ スナップショット制御デバイス
２００・・・ スナップショットコマンド制御機能
２１０・・・ スナップショット指定更新容量管理機能
２２０・・・ スナップショット指定更新容量通知機能
３００・・・ サーバ
３１０・・・ スナップショット操作機能
４００・・・ 接続インタフェース
５００・・・ ネットワーク
６００・・・ 管理テーブル１
７００・・・ 管理テーブル２
【図１】
2005235058.tif 000003
【図２】
2005235058.tif 000004
【図３】
2005235058.tif 000005
【図４】
2005235058.tif 000006
【図５】
2005235058.tif 000007
【図６】
2005235058.tif 000008
【図７】
2005235058.tif 000009
【図８】
2005235058.tif 000010
【図９】
2005235058.tif 000011
【図１０】
2005235058.tif 000012
【図１１】
2005235058.tif 000013
【図１２】
2005235058.tif 000014
【図１３】
2005235058.tif 000015