(57)【要約】【課題】適切な更新履歴のみを記憶装置間で移行する。【解決手段】第１記憶装置と、第２記憶装置と、を備える計算機システムであって、前記第１記憶装置は、第１記憶部と、第１制御部と、を備え、前記第２記憶装置は、第２記憶部と、第２制御部と、を備え、前記第１制御部は、更新履歴を記録し、前記第１記憶部に記憶されるデータが前記第２記憶部に移行される場合、前記記録された更新履歴の中から、前記移行されるデータに関する更新履歴を特定し、前記特定された更新履歴を、新しい更新履歴から順に選択し、前記選択された更新履歴が、現時点から、前記第２記憶装置に設定されている更新履歴保持期間遡るまでの間におけるデータ更新に対応するか否かを判定し、対応すると判定した場合、前記選択された更新履歴を前記ネットワークを介して前記第２制御部に送信し、対応しないと判定した場合、前記更新履歴の選択を終了することを特徴とする。【選択図】図１
2008165624.tif 000002
【特許請求の範囲】
【請求項１】
第１記憶装置と、前記第１記憶装置にネットワークを介して接続される第２記憶装置と、を備える計算機システムであって、
前記第１記憶装置は、ホスト計算機から書き込み要求されるデータを記憶する第１記憶部と、前記第１記憶部に対するデータの入出力を制御する第１制御部と、を備え、
前記第２記憶装置は、前記ホスト計算機から書き込み要求されるデータを記憶する第２記憶部と、前記第２記憶部に対するデータの入出力を制御する第２制御部と、を備え、
前記第１制御部は、
前記第１記憶部に記憶されるデータに関する更新履歴を記録し、
前記第１記憶部に記憶されるデータの一部又は全部が前記第２記憶部に移行される場合、前記記録された更新履歴の中から、前記移行されるデータに関する更新履歴を特定し、
前記特定された更新履歴を、新しい更新履歴から順に選択し、
前記選択された更新履歴が、現時点から、前記第２記憶装置に設定されている更新履歴保持期間遡るまでの間におけるデータ更新に対応するか否かを判定し、
対応すると判定した場合、前記選択された更新履歴を前記ネットワークを介して前記第２制御部に送信し、
対応しないと判定した場合、前記更新履歴の選択を終了することを特徴とする計算機システム。
【請求項２】
前記第２制御部は、前記第１制御部から受信した更新履歴を用いて、前記第２記憶部に移行されたデータをリカバリすることを特徴とする請求項１に記載の計算機システム。
【請求項３】
前記第２制御部は、
リカバリ要求を受信すると、リカバリに必要な更新履歴のすべてを前記第１制御部から受信したか否かを判定し、
前記リカバリに必要な更新履歴のすべての受信を完了していない場合、前記リカバリに必要な更新履歴のすべてを受信した後に、前記第２記憶部に移行されたデータをリカバリすることを特徴とする請求項１に記載の計算機システム。
【請求項４】
前記第１制御部は、
前記更新履歴の選択を終了すると、前記第２制御部に最後に送信した更新履歴に対応するデータ更新の時点において前記第１記憶部に記憶されていたデータの複製を作成し、
前記作成された複製を、前記ネットワークを介して前記第２制御部に送信することを特徴とする請求項１に記載の計算機システム。
【請求項５】
前記第２制御部は、前記第１制御部から受信した複製及び更新履歴を用いて、前記第２記憶部に移行されたデータをリカバリすることを特徴とする請求項４に記載の計算機システム。
【請求項６】
前記第２制御部は、リカバリ要求を受信すると、リカバリに必要な複製を前記第１制御部から受信したか否かを判定し、
前記第２制御部がリカバリに必要な複製を受信していない場合、前記第１制御部は、
前記記録された更新履歴及び前記第１記憶部に記憶されるデータに基づいて、前記リカバリに必要な複製を作成し、
前記作成されたリカバリに必要な複製を、前記ネットワークを介して前記第２制御部に送信し、
前記第２制御部は、前記第１制御部から受信したリカバリに必要な複製及び更新履歴を用いて、前記第２記憶部に移行されたデータをリカバリすることを特徴とする請求項４に記載の計算機システム。
【請求項７】
第１記憶装置と、前記第１記憶装置に接続される第１サーバ装置と、第２記憶装置と、前記第２記憶装置に接続され且つ前記第１サーバ装置にネットワークを介して接続される第２サーバ装置と、を備える計算機システムであって、
前記第１記憶装置は、ホスト計算機から書き込み要求されるデータを記憶する第１記憶部と、前記第１記憶部に対するデータの入出力を制御する第１制御部と、を備え、
前記第２記憶装置は、前記ホスト計算機から書き込み要求されるデータを記憶する第２記憶部と、前記第２記憶部に対するデータの入出力を制御する第２制御部と、を備え、
前記第１サーバ装置は、
前記第１記憶部に記憶されるデータに関する更新履歴を記録し、
前記第１記憶部に記憶されるデータの一部又は全部が前記第２記憶部に移行される場合、前記記録された更新履歴の中から、前記移行されるデータに関する更新履歴を特定し、
前記特定された更新履歴を、新しい更新履歴から順に選択し、
前記選択された更新履歴が、現時点から、前記第２サーバ装置に設定されている更新履歴保持期間遡るまでの間におけるデータ更新に対応するか否かを判定し、
対応すると判定した場合、前記選択された更新履歴を前記ネットワークを介して前記第２サーバ装置に送信し、
対応しないと判定した場合、前記更新履歴の選択を終了することを特徴とする計算機システム。
【請求項８】
前記第２サーバ装置は、前記第１サーバ装置から受信した更新履歴を用いて、前記第２記憶部に移行されたデータをリカバリすることを特徴とする請求項７に記載の計算機システム。
【請求項９】
前記第２サーバ装置は、
リカバリ要求を受信すると、リカバリに必要な更新履歴のすべてを前記第１サーバ装置から受信したか否かを判定し、
前記リカバリに必要な更新履歴のすべての受信を完了していない場合、前記リカバリに必要な更新履歴のすべてを受信した後に、前記第２記憶部に移行されたデータをリカバリすることを特徴とする請求項７に記載の計算機システム。
【請求項１０】
前記第１サーバ装置は、
前記更新履歴の選択を終了すると、前記第２サーバ装置に最後に送信した更新履歴に対応するデータ更新の時点において前記第１記憶部に記憶されていたデータの複製を作成し、
前記作成された複製を、前記ネットワークを介して前記第２サーバ装置に送信することを特徴とする請求項７に記載の計算機システム。
【請求項１１】
前記第２サーバ装置は、前記第１サーバ装置から受信した複製及び更新履歴を用いて、前記第２記憶部に移行されたデータをリカバリすることを特徴とする請求項１０に記載の計算機システム。
【請求項１２】
前記第２サーバ装置は、リカバリ要求を受信すると、リカバリに必要な複製を前記第１サーバ装置から受信したか否かを判定し、
前記第２サーバ装置がリカバリに必要な複製を受信していない場合、前記第１サーバ装置は、
前記記録された更新履歴及び前記第１記憶部に記憶されるデータに基づいて、前記リカバリに必要な複製を作成し、
前記作成されたリカバリに必要な複製を、前記ネットワークを介して前記第２サーバ装置に送信し、
前記第２サーバ装置は、前記第１サーバ装置から受信したリカバリに必要な複製及び更新履歴を用いて、前記第２記憶部に移行されたデータをリカバリすることを特徴とする請求項１０に記載の計算機システム。
【請求項１３】
ネットワークを介して第２記憶装置に接続される第１記憶装置であって、
ホスト計算機から書き込み要求されるデータを記憶する第１記憶部と、前記第１記憶部に対するデータの入出力を制御する第１制御部と、を備え、
前記第１制御部は、
前記第１記憶部に記憶されるデータに関する更新履歴を記録し、
前記第１記憶部に記憶されるデータの一部又は全部が前記第２記憶装置に移行される場合、前記記録された更新履歴の中から、前記移行されるデータに関する更新履歴を特定し、
前記特定された更新履歴を順に選択し、
前記選択された更新履歴が、現時点から、前記第２記憶装置に設定されている更新履歴保持期間遡るまでの間におけるデータ更新に対応するか否かを判定し、
対応すると判定した場合、前記選択された更新履歴を前記ネットワークを介して前記第２記憶装置に送信し、
対応しないと判定した場合、前記更新履歴の選択を終了することを特徴とする第１記憶装置。
【請求項１４】
前記第１制御部は、
前記更新履歴の選択を終了すると、前記第２記憶装置に最後に送信した更新履歴に対応するデータ更新の時点において前記第１記憶部に記憶されていたデータの複製を作成し、
前記作成された複製を、前記ネットワークを介して前記第２記憶装置に送信することを特徴とする請求項１３に記載の第１記憶装置。
【請求項１５】
前記第１制御部は、前記特定された更新履歴を、新しい更新履歴から順に選択することを特徴とする請求項１３に記載の第１記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の記憶装置を含む計算機システムに関し、書込データ及び更新履歴（ジャーナル）を、記憶装置間で移行する技術に関する。
【背景技術】
【０００２】
近年、企業の情報システムで扱われるデータの量は増大する傾向にある。これらのデータは、ディスクアレイ装置のような大規模な記憶装置で管理されている。企業では、情報システムの可用性を高めるために、記憶領域（データボリューム）がバックアップされている。このバックアップを用いることによって、記憶装置の障害によるデータの破壊、ウイルスによるデータ破壊、又はユーザの誤操作などによるデータの損失が発生しても、データをリカバリできる。
【０００３】
例えば、ジャーナリングを用いたバックアップ及びリカバリ技術が特許文献１に開示されている。特許文献１に開示された技術では、記憶装置は、特定時点におけるデータボリュームの複製（スナップショット）に、Ａｆｔｅｒジャーナルデータを書き込むことによって、スナップショット作成時点以降の任意の時点におけるデータをリカバリできる。なお、Ａｆｔｅｒジャーナルデータは、スナップショット作成時点以降にデータボリュームへ書き込まれたデータである。この技術は、一般的には、ＣＤＰ（Ｃｏｎｔｉｎｕｏｕｓ  Ｄａｔａ  Ｐｒｏｔｅｃｔｉｏｎ）と呼ばれている。
【０００４】
更に、特許文献１に開示された技術では、記憶装置は、特定時点におけるデータボリュームのスナップショットに、Ｂｅｆｏｒｅジャーナルデータを書き戻すことによって、スナップショット作成時点以前の任意の時点におけるデータをリカバリできる。なお、Ｂｅｆｏｒｅジャーナルデータは、データボリュームへの書き込みによって更新される前のデータである。
【０００５】
以降、ジャーナルとは、Ａｆｔｅｒジャーナル及びＢｅｆｏｒｅジャーナルを含む。
【０００６】
一方、ジャーナルを記憶する記憶装置と異なる記憶装置においてリカバリを行う技術が、特許文献２に開示されている。これによると、第一記憶装置が、Ｂｅｆｏｒｅジャーナル及びＡｆｔｅｒジャーナルを第二記憶装置に送信する。すると、第二記憶装置は、受信したＢｅｆｏｒｅジャーナル及びＡｆｔｅｒジャーナルを用いて、データをリカバリする。
【０００７】
一方、記憶装置間のデータ移行技術が特許文献３に開示されている。特許文献３に開示されている技術では、移行先の記憶装置がシステムの運用中にデータ移行処理を行うことで、データ移行処理時におけるシステムの停止時間が短縮される。
【０００８】
具体的には、ホスト計算機と移行先の記憶装置とが接続され、移行元の記憶装置と移行先の記憶装置とが接続されている。そして、移行先の記憶装置は、移行元の記憶装置に備わるデータボリュームに記憶されるデータを、当該移行先の記憶装置に備わるデータボリュームにコピーする。なお、移行先の記憶装置は、データのコピー処理中にも、ホスト計算機からアクセス要求を受け付ける。ホスト計算機からのアクセス要求によって要求されたデータが、移行先の記憶装置に備わるデータボリュームに記憶されている場合、当該データへのアクセスが許可される。
【０００９】
一方、アクセス要求によって要求されたデータが、移行先の記憶装置に備わるデータボリュームに記憶されていない場合、移行先の記憶装置は、アクセス要求によって要求されたデータを、移行元の記憶装置に備わるデータボリュームから、当該移行先記憶装置に備わるデータボリュームにコピーする。その後、アクセス要求によって要求されたデータへのアクセスが許可される。
【００１０】
このようにして、特許文献３に開示されている技術では、データ移行中であっても、システムを継続して運用可能である。
【特許文献１】特開２００４−２５２６８６号公報
【特許文献２】特開２００５−２２２１１０号公報
【特許文献３】特表平１０−５０８９６７号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
特許文献１に開示されている技術及び特許文献２に開示されている技術では、ジャーナルは、ホスト計算機からデータの書き込みを要求されるデータボリュームを備える記憶装置で生成される。
【００１２】
特許文献１又は特許文献２に開示されている技術に、特許文献３で開示されている技術が適用されると、データボリュームを記憶装置間で移行できる。しかし、複数の記憶装置にジャーナルが分散してしまう。
【００１３】
そのため、移行先の記憶装置が移行前の任意の時点におけるデータをリカバリするためには、移行元の記憶装置に記憶されるジャーナルを移行先の記憶装置に移行する必要がある。
【００１４】
移行元の記憶装置に記憶されるすべてのジャーナルが移行先の記憶装置へ移行される場合、ジャーナルのデータ量次第では、移行時間が長大化する。そこで、移行先の記憶装置が、ジャーナル保持期間を満たすジャーナルのみを選択して移行しようとしたとする。
【００１５】
しかし、ジャーナルの移行による時間の経過によって、ジャーナルが実際に移行される時点において、移行されるジャーナルが、ジャーナル保持期間を満たさなくなるという問題が発生する。つまり、ジャーナルが実際に移行される時点において、当該ジャーナルが移行先の記憶装置で不要になってしまう。
【００１６】
なお、ジャーナル保持期間は、記憶装置がジャーナルを記憶すべき期間である。つまり、記憶装置は、ジャーナルに対応するデータ更新が行われてからジャーナル保持期間を経過するまでは、当該ジャーナルを記憶する必要がある。また、ジャーナル保持期間を満たすジャーナルとは、現時点からジャーナル保持期間遡った時点以降に行われたデータ更新に対応するジャーナルである。一方、ジャーナル保持期間を満たさないジャーナルとは、現時点からジャーナル保持期間遡った時点より前に行われたデータ更新に対応するジャーナルである。
【００１７】
本発明は、前述した問題点に鑑みてなされたものであって、適切なジャーナルのみを記憶装置間で移行する計算機システムを提供することを目的とする。
【課題を解決するための手段】
【００１８】
第１記憶装置と、前記第１記憶装置にネットワークを介して接続される第２記憶装置と、を備える計算機システムであって、前記第１記憶装置は、ホスト計算機から書き込み要求されるデータを記憶する第１記憶部と、前記第１記憶部に対するデータの入出力を制御する第１制御部と、を備え、前記第２記憶装置は、前記ホスト計算機から書き込み要求されるデータを記憶する第２記憶部と、前記第２記憶部に対するデータの入出力を制御する第２制御部と、を備え、前記第１制御部は、前記第１記憶部に記憶されるデータに関する更新履歴を記録し、前記第１記憶部に記憶されるデータの一部又は全部が前記第２記憶部に移行される場合、前記記録された更新履歴の中から、前記移行されるデータに関する更新履歴を特定し、前記特定された更新履歴を順に選択し、前記選択された更新履歴が、現時点から、前記第２記憶装置に設定されている更新履歴保持期間遡るまでの間におけるデータ更新に対応するか否かを判定し、対応すると判定した場合、前記選択された更新履歴を前記ネットワークを介して前記第２制御部に送信し、対応しないと判定した場合、前記更新履歴の選択を終了することを特徴とする。
【発明の効果】
【００１９】
本発明の代表的な形態によれば、適切なジャーナルのみを記憶装置間で移行できる。
【発明を実施するための最良の形態】
【００２０】
本発明の実施の形態を図面を参照して説明する。
【００２１】
（第１の実施の形態）
図１は、本発明の第１の実施の形態の計算機システムの構成のブロック図である。
【００２２】
計算機システムは、記憶装置１００、記憶装置２００、ホスト計算機３００、管理計算機５００、データネットワーク５０及び管理ネットワーク９０を含む。
【００２３】
データネットワーク５０は、記憶装置１００、記憶装置２００及びホスト計算機３００を相互に接続する。管理ネットワーク９０は、記憶装置１００、記憶装置２００及び管理計算機５００を相互に接続する。
【００２４】
ホスト計算機３００は、ＣＰＵ３１０、メモリ３２０及びデータインタフェース（データＩ／Ｆ）３５０を備える。
【００２５】
ＣＰＵ３１０は、メモリ３２０に記憶されるプログラムを実行することによって、各種処理を行う。メモリ３２０は、ＣＰＵ３１０によって実行されるプログラム及びＣＰＵ３１０によって必要とされる情報などを記憶する。具体的には、メモリ３２０は、アプリケーションプログラム３２１を記憶する。
【００２６】
アプリケーションプログラム３２１は、各種処理を実行する。例えば、アプリケーションプログラム３２１は、データボリューム１３２へのデータの書き込み及びデータボリューム１３２からのデータ読み出しを、記憶装置１００又は２００に要求する。このとき、アプリケーションプログラム３２１は、書込要求又は読出要求を、記憶装置１００又は２００に送信する。
【００２７】
データＩ／Ｆ３５０は、データネットワーク５０を介して、記憶装置１００及び２００に接続されるインタフェースである。
【００２８】
記憶装置１００は、ストレージコントローラ１１０、キャッシュメモリ１１５、メモリ１２０、ハードディスクドライブ１３０、データインタフェース（データＩ／Ｆ）１５０及び管理インタフェース（管理Ｉ／Ｆ）１９０を備える。なお、記憶装置２００は、記憶装置１００と同一の構成を備える。
【００２９】
データＩ／Ｆ１５０は、データネットワーク５０を介して、記憶装置２００及びホスト計算機３００に接続されるインタフェースである。管理Ｉ／Ｆ１９０は、管理ネットワーク９０を介して記憶装置２００及び管理計算機５００に接続されるインタフェースである。
【００３０】
キャッシュメモリ１１５は、ホスト計算機３００から書き込み又は読み出しを要求されたデータを一時的に記憶する。ハードディスクドライブ１３０は、各種情報を記憶する。例えば、ハードディスクドライブ１３０は、ホスト計算機３００から書き込みを要求されたデータを記憶する。
【００３１】
ストレージコントローラ１１０は、メモリ１２０に記憶されるプログラムを実行することによって、各種処理を行う。
【００３２】
例えば、ストレージコントローラ１１０は、ハードディスクドライブ１３０の記憶領域を、一つ以上の論理ボリュームとしてホスト計算機３００に提供する。なお、論理ボリュームは、データボリューム１３２及びジャーナルボリューム１３４を含む。
【００３３】
データボリューム１３２は、ホスト計算機３００から書き込みを要求されたデータを記憶する。ジャーナルボリューム１３４は、データボリューム１３２の更新履歴（ジャーナル）を記憶する。なお、ジャーナルボリューム１３４に記憶されるジャーナルについては、図４で詳細を説明する。
【００３４】
本実施の形態では、データボリューム１３２とジャーナルボリューム１３４とが関連付けられている。なお、一つのデータボリューム１３２と複数のジャーナルボリューム１３４とが関連付けられいてもよいし、複数のデータボリューム１３２と一つのジャーナルボリューム１３４とが関連付けられていてもよい。
【００３５】
また、データボリューム１３２と、当該データボリューム１３２に関連付けられているジャーナルボリューム１３４とを含む集合が、ジャーナルグループ１４０として設定される。なお、一つのジャーナルボリューム１３４は、複数のジャーナルグループ１４０に属していてもよい。
【００３６】
また、ストレージコントローラ１１０は、ホスト計算機３００及び管理計算機５００から要求を受信し、受信した要求を処理する。具体的には、ストレージコントローラ１１０は、ホスト計算機３００から書込要求を受信すると、要求されたデータをデータボリューム１３２に書き込む。一方、ストレージコントローラ１１０は、ホスト計算機３００から読出要求を受信すると、要求されたデータをデータボリューム１３２から読み出す。
【００３７】
また、ストレージコントローラ１１０は、当該ストレージコントローラ１１０を備える記憶装置１００に記憶されるデータを、記憶装置２００などの他の記憶装置へコピーする。また、ストレージコントローラ１１０は、ジャーナルを用いることによって、データボリューム１３２に記憶されるデータのバックアップ及びリカバリを行う。
【００３８】
メモリ１２０は、ストレージコントローラ１１０によって実行されるプログラム及びストレージコントローラ１１０によって必要とされる情報などを記憶する。具体的には、メモリ１２０は、データボリューム移行プログラム１２１、ジャーナル移行プログラム１２３、ＣＤＰ制御プログラム１２５、管理情報入出力プログラム１２９、データボリューム管理テーブル１２２、ジャーナルボリューム管理テーブル１２４及び移行情報管理テーブル１２６を記憶する。
【００３９】
データボリューム移行プログラム１２１は、管理計算機５００からデータボリューム移行要求を受信する。すると、データボリューム移行プログラム１２１は、移行元の記憶装置１００から移行先の記憶装置２００へデータボリューム１３２を移行する。なお、本実施の形態では、移行元として記憶装置１００が指定され、移行先として記憶装置２００が指定された場合を説明する。また、本実施の形態におけるデータボリューム１３２の移行には、データネットワーク５０が使用されているが、管理ネットワーク９０などを含むその他のネットワークが使用されてもよい。
【００４０】
具体的には、移行元の記憶装置１００に備わるデータボリューム移行プログラム１２１は、当該移行元の記憶装置１００に備わるデータボリューム１３２に格納されているデータを、データネットワーク５０を介して移行先の記憶装置２００へ送信する。すると、移行先の記憶装置２００に備わるデータボリューム移行プログラム１２１は、移行元の記憶装置１００からデータを受信する。次に、移行先の記憶装置２００に備わるデータボリューム移行プログラム１２１は、受信したデータを、当該移行元の記憶装置２００に備わるデータボリューム１３２のうち、管理計算機５００によって指定されたデータボリューム１３２へ格納する。
【００４１】
なお、移行元の記憶装置１００のデータボリューム移行プログラム１２１が、データボリューム１３２に格納されているデータを移行先の記憶装置２００に送信する代わりに、移行先の記憶装置２００のデータボリューム移行プログラム１２１が、移行元の記憶装置１００に備わるデータボリューム１３２からデータを読み出してもよい。
【００４２】
ジャーナル移行プログラム１２３は、管理計算機５００からジャーナル移行要求を受信する。すると、ジャーナル移行プログラム１２３は、移行元の記憶装置１００から移行先の記憶装置２００へジャーナルを移行する。なお、本実施の形態におけるジャーナルの移行には、データネットワーク５０が使用されているが、管理ネットワーク９０などを含むその他のネットワークが使用されてもよい。
【００４３】
具体的には、移行元の記憶装置１００に備わるジャーナル移行プログラム１２３は、データボリューム移行プログラム１２１によって移行されたデータボリューム１３２を含むジャーナルグループ１４０を特定する。次に、移行元の記憶装置１００に備わるジャーナル移行プログラム１２３は、特定したジャーナルグループ１４０に含まれるジャーナルボリューム１３４を特定する。
【００４４】
次に、移行元の記憶装置１００に備わるジャーナル移行プログラム１２３は、特定したジャーナルボリューム１３４に格納されているジャーナルを、新しいジャーナルから順に、移行先の記憶装置２００へ送信する。但し、移行元の記憶装置１００に備わるジャーナル移行プログラム１２３は、ジャーナルを移行先の記憶装置２００へ送信する前に、当該ジャーナルが、移行先の記憶装置２００に備わるデータボリューム１３２に設定されているジャーナル保持期間を満たすか否かを判定する。
【００４５】
なお、ジャーナル保持期間は、記憶装置１００又は２００がジャーナルを記憶すべき期間である。つまり、記憶装置１００又は２００は、ジャーナルに対応するデータ更新が行われてからジャーナル保持期間を経過するまでは、当該ジャーナルを記憶する必要がある。すなわち、ジャーナル保持期間は、当該期間に含まれるどの時点におけるデータでも復元可能な期間である。本実施の形態では、ジャーナル保持期間は、記憶装置１００又は２００に備わるデータボリューム１３２ごとに設定されている。しかし、ジャーナル保持期間は、記憶装置１００又は２００ごとに設定されてもよいし、ジャーナルグループ１４０ごとに設定されてもよい。
【００４６】
また、ジャーナル保持期間を満たすジャーナルとは、現時点からジャーナル保持期間遡った時点以降に行われたデータ更新に対応するジャーナルである。一方、ジャーナル保持期間を満たさないジャーナルとは、現時点からジャーナル保持期間遡った時点より前に行われたデータ更新に対応するジャーナルである。
【００４７】
ジャーナルが移行先の記憶装置２００に設定されているジャーナル保持期間を満たす場合のみ、移行元の記憶装置１００に備わるジャーナル移行プログラム１２３は、当該ジャーナルを移行先の記憶装置２００へ送信する。
【００４８】
一方、ジャーナルが移行先の記憶装置２００に設定されているジャーナル保持期間を満たさない場合、移行元の記憶装置１００に備わるジャーナル移行プログラム１２３は、ジャーナルの送信処理を終了する。
【００４９】
移行先の記憶装置２００のジャーナル移行プログラム１２３は、移行元の記憶装置１００からジャーナルを受信する。すると、移行先の記憶装置２００のジャーナル移行プログラム１２３は、受信したジャーナルを、当該移行元の記憶装置２００に備わるジャーナルボリューム１３４に格納する。
【００５０】
ＣＤＰ制御プログラム１２５は、ジャーナルを用いて、データをリカバリする。また、ＣＤＰ制御プログラム１２５は、ホスト計算機３００から書込要求を受信する。すると、ＣＤＰ制御プログラム１２５は、受信した書込要求ごとに、ジャーナルを作成する。そして、ＣＤＰ制御プログラム１２５は、作成したジャーナルに、更新順序番号を付与して、ジャーナルボリューム１３４に格納する。なお、更新順序番号は、データボリューム１３２に当該データが書き込まれた順番を示す。
【００５１】
また、ＣＤＰ制御プログラム１２５は、管理計算機５００からリカバリ要求を受信する。なお、リカバリ要求は、指定時刻におけるデータのリカバリを要求する。すると、ＣＤＰ制御プログラム１２５は、ジャーナルボリューム１３４に格納されたジャーナルを用いて、当該受信したリカバリ要求で指定された時刻におけるデータをリカバリする。
【００５２】
管理情報入出力プログラム１２９は、管理計算機５００に対して管理情報を送受信する。
【００５３】
データボリューム管理テーブル１２２は、データボリューム１３２とジャーナルグループ１４０との関連付けを示す。更に、データボリューム管理テーブル１２２は、データボリューム１３２に設定されるジャーナル保持期間を示す。なお、データボリューム管理テーブル１２２については、図２で詳細を説明する。
【００５４】
ジャーナルボリューム管理テーブル１２４は、ジャーナルグループ１４０とジャーナルボリューム１３４との関連付けを示す。なお、ジャーナルボリューム管理テーブル１２４については、図３で詳細を説明する。
【００５５】
移行情報管理テーブル１２６は、データボリューム１３２及びジャーナルの移行処理を管理する。なお、移行情報管理テーブル１２６については、図５で詳細を説明する。
【００５６】
管理計算機５００は、ＣＰＵ５１０、メモリ５２０、ディスプレイ５６０、キーボード５７０、マウス５８０及び管理インタフェース（管理Ｉ／Ｆ）５９０を備える。
【００５７】
ディスプレイ５６０は、各種情報を表示する。キーボード５７０及びマウス５８０には、管理者から各種情報が入力される。管理Ｉ／Ｆ５９０は、管理ネットワーク９０を介して記憶装置１００及び２００に接続されるインタフェースである。
【００５８】
ＣＰＵ５１０は、メモリ５２０に記憶されるプログラムを実行することによって、各種処理を行う。メモリ５２０は、ＣＰＵ５１０によって実行されるプログラム及びＣＰＵ５１０によって必要とされる情報などを記憶する。具体的には、メモリ５２０は、構成管理プログラム５２１、移行管理プログラム５２５及びリカバリ要求プログラム５２７を記憶する。
【００５９】
構成管理プログラム５２１は、記憶装置１００又は２００に対して、当該記憶装置１００又は２００の構成に関する情報を含む各種情報を送受信する。移行管理プログラム５２５は、記憶装置１００又は２００に、データボリューム移行要求又はジャーナル移行要求を送信する。リカバリ要求プログラム５２７は、記憶装置１００又は２００に、リカバリ要求を送信する。
【００６０】
図２は、本発明の第１の実施の形態の記憶装置１００に記憶されるデータボリューム管理テーブル１２２の構成図である。
【００６１】
データボリューム管理テーブル１２２は、ジャーナルグループ番号１２２１、記憶装置番号１２２４、データボリューム番号１２２２及びジャーナル保持期間１２２３を含む。
【００６２】
記憶装置番号１２２４は、記憶装置１００又は２００の一意な識別子である。なお、本実施の形態では、記憶装置番号１２２４には、当該データボリューム管理テーブル１２２を記憶する記憶装置１００の一意な識別子が格納される。
【００６３】
データボリューム番号１２２２は、当該レコードの記憶装置番号１２２４によって識別される記憶装置１００に備わるデータボリューム１３２の一意な識別子である。
【００６４】
ジャーナルグループ番号１２２１は、当該レコードのデータボリューム番号１２２２によって識別されるデータボリューム１３２を含むジャーナルグループ１４０の一意な識別子である。
【００６５】
ジャーナル保持期間１２２３は、当該レコードのデータボリューム番号１２２２によって識別されるデータボリューム１３２のジャーナルを、記憶装置１００が記憶すべき期間である。なお、ジャーナル保持期間１２２３は、管理者によって予め設定される。
【００６６】
なお、記憶装置２００も、本説明図と同様のデータボリューム管理テーブル１２２を記憶する。
【００６７】
図３は、本発明の第１の実施の形態の記憶装置１００に記憶されるジャーナルボリューム管理テーブル１２４の構成図である。
【００６８】
ジャーナルボリューム管理テーブル１２４は、ジャーナルグループ番号１２４１、記憶装置番号１２４４及びジャーナルボリューム番号１２４２を含む。
【００６９】
記憶装置番号１２４４は、記憶装置１００又は２００の一意な識別子である。なお、本実施の形態では、記憶装置番号１２４４には、当該ジャーナルボリューム管理テーブル１２４を記憶する記憶装置１００の一意な識別子が格納される。
【００７０】
ジャーナルボリューム番号１２４２は、当該レコードの記憶装置番号１２４４によって識別される記憶装置１００に備わるジャーナルボリューム１３４の一意な識別子である。
【００７１】
ジャーナルグループ番号１２４１は、当該レコードのジャーナルボリューム番号１２４２によって識別されるジャーナルボリューム１３４を含むジャーナルグループ１４０の一意な識別子である。
【００７２】
なお、記憶装置２００も、本説明図と同様のジャーナルボリューム管理テーブル１２４を記憶する。
【００７３】
図４は、本発明の第１の実施の形態の記憶装置１００に備わるジャーナルボリューム１３４に格納されるジャーナルの構成図である。
【００７４】
一つのジャーナルは、ホスト計算機３００から送信される一つの書込要求に対応する。つまり、一つのジャーナルは、データボリューム１３２に対する一回のデータ更新に対応する。また、一つのジャーナルは、当該構成図の一つのレコードに対応する。ジャーナルは、記憶装置番号４０１、データボリューム番号４０２、適用先アドレス４０３、生成時刻４０４、更新順序番号４０５、データサイズ４０６、Ｂｅｆｏｒｅジャーナル４０７及びＡｆｔｅｒジャーナル４０８を含む。
【００７５】
記憶装置番号４０１は、当該ジャーナルに対応する書込要求によってデータが書き込まれた記憶装置１００又は２００の一意な識別子である。なお、本実施の形態では、記憶装置番号４０１には、当該ジャーナルを記憶する記憶装置１００の一意な識別子が格納される。
【００７６】
データボリューム番号４０２は、当該ジャーナルに対応する書込要求によってデータが書き込まれたデータボリューム１３２の一意な識別子である。適用先アドレス４０３は、当該データボリューム１３２内における、当該ジャーナルに対応する書込要求によってデータが書き込まれた位置（アドレス情報）を示す。
【００７７】
生成時刻４０４は、当該ジャーナルに対応する書込要求によってデータボリューム１３２にデータが書き込まれた時刻である。なお、生成時刻４０４は、記憶装置１００がホスト計算機３００から書込要求を受信した時刻であってもよいし、記憶装置１００がジャーナルを作成した時刻であってもよいし、記憶装置１００が書込要求に対する応答を送信した時刻であってもよい。
【００７８】
更新順序番号４０５は、当該ジャーナルに対応する書込要求によってデータボリューム１３２にデータが書き込まれた順番を示す。データサイズ４０６は、当該ジャーナルに含まれるジャーナルデータ４０７３又は４０８３の大きさである。
【００７９】
Ｂｅｆｏｒｅジャーナル４０７は、記憶装置番号４０７１、ジャーナルボリューム番号４０７２及びジャーナルデータ４０７３を含む。
【００８０】
ジャーナルデータ４０７３は、当該ジャーナルに対応する書込要求によるデータボリューム１３２への書き込みによって更新される前のデータ（Ｂｅｆｏｒｅジャーナルデータ）である。
【００８１】
記憶装置番号４０７１は、当該ジャーナルデータ４０７３が格納された記憶装置１００又は２００の一意な識別子である。ジャーナルボリューム番号４０７２は、当該ジャーナルデータ４０７３が格納されたジャーナルボリューム１３４の一意な識別子である。
【００８２】
Ａｆｔｅｒジャーナル４０８は、記憶装置番号４０８１、ジャーナルボリューム番号４０８２及びジャーナルデータ４０８３を含む。
【００８３】
ジャーナルデータ４０８３は、当該ジャーナルに対応する書込要求によってデータボリューム１３２へ書き込まれたデータ（Ａｆｔｅｒジャーナルデータ）である。記憶装置番号４０８１は、当該ジャーナルデータ４０８３が格納された記憶装置１００又は２００の一意な識別子である。ジャーナルボリューム番号４０８２は、当該ジャーナルデータ４０８３が格納されたジャーナルボリューム１３４の一意な識別子である。
【００８４】
本説明図のジャーナルは、Ｂｅｆｏｒｅジャーナル４０７及びＡｆｔｅｒジャーナル４０８の双方を含むが、Ｂｅｆｏｒｅジャーナル４０７又はＡｆｔｅｒジャーナル４０８のいずれか一方が省略されてもよい。
【００８５】
なお、記憶装置２００に備わるジャーナルボリューム１３４にも、本説明図と同様のジャーナルが格納される。
【００８６】
図５は、本発明の第１の実施の形態の記憶装置１００に記憶される移行情報管理テーブル１２６の構成図である。
【００８７】
移行情報管理テーブル１２６の一つのレコードは、データボリューム１３２及びジャーナルの移行処理の一つに対応する。
【００８８】
移行元の記憶装置１００及び移行先の記憶装置２００は、管理計算機５００からデータボリューム移行要求を受信すると、データボリューム１３２及びジャーナルの移行処理を開始する。このとき、移行元の記憶装置１００及び移行先の記憶装置２００は、移行情報管理テーブル１２６に新たなレコードを作成する。そして、移行元の記憶装置１００及び移行先の記憶装置２００は、作成した新たなレコードに、実行を開始する移行処理に関する情報を格納する。これによって、移行元の記憶装置１００に記憶される移行情報管理テーブル１２６と移行先の記憶装置２００に記憶される移行情報管理テーブル１２６とは、同一のレコードを含む。
【００８９】
その後、移行元の記憶装置１００及び移行先の記憶装置２００は、データボリューム１３２及びジャーナルの移行処理を終了すると、当該終了した移行処理に対応するレコードを、移行情報管理テーブル１２６から削除する。
【００９０】
移行情報管理テーブル１２６は、移行管理番号１２６１、移行元情報１２６２及び移行先情報１２６３を含む。なお、移行管理番号１２６１は、データボリューム１３２及びジャーナルの移行処理の一意な識別子である。
【００９１】
移行元情報１２６２は、移行元の記憶装置１００に関する情報である。具体的には、移行元情報１２６２は、移行元記憶装置番号１２６２１、移行元データボリューム番号１２６２２、移行元ジャーナルグループ番号１２６２３及び最終更新順序番号１２６２４を含む。
【００９２】
移行元記憶装置番号１２６２１は、移行元の記憶装置１００の一意な識別子である。移行元データボリューム番号１２６２２は、移行元のデータボリューム１３２の一意な識別子である。移行元ジャーナルグループ番号１２６２３は、当該レコードの移行元データボリューム番号１２６２２によって識別されるデータボリューム１３２を含むジャーナルグループ１４０の一意な識別子である。最終更新順序番号１２６２４は、当該レコードの移行元データボリューム番号１２６２２によって識別されるデータボリューム１３２に最後にデータが書き込まれた時に付与された更新順序番号である。
【００９３】
移行先情報１２６３は、移行先記憶装置番号１２６３１、移行先データボリューム番号１２６３２、移行先ジャーナルグループ番号１２６３３及びジャーナル保持期間１２６３６を含む。
【００９４】
移行先記憶装置番号１２６３１は、移行先の記憶装置２００の一意な識別子である。移行先データボリューム番号１２６３２は、移行先のデータボリューム１３２の一意な識別子である。移行先ジャーナルグループ番号１２６３３は、当該レコードの移行先データボリューム番号１２６３２によって識別されるデータボリューム１３２を含むジャーナルグループ１４０の一意な識別子である。
【００９５】
ジャーナル保持期間１２６３６は、当該レコードの移行先データボリューム番号１２６３２によって識別されるデータボリューム１３２に設定されたジャーナル保持期間である。なお、ジャーナル保持期間１２６３６には、管理者によって設定された値が格納される。
【００９６】
図６は、本発明の第１の実施の形態の記憶装置１００におけるＢｅｆｏｒｅジャーナルを用いたリカバリの説明図である。
【００９７】
本説明図は、データボリューム１３２と、時間軸上の各時刻におけるＢｅｆｏｒｅジャーナルとの関係を模式的に示す。時間軸上に配置された黒点は、それぞれの時刻にＢｅｆｏｒｅジャーナル４５１〜４５５が作成されたことを示す。また、Ｂｅｆｏｒｅジャーナル４５１〜４５５には、更新順序番号の「１」〜「５」が付与されている。
【００９８】
ここでは、現時点を２００６年１０月０１日６時とする。よって、データボリューム１３２は、２００６年１０月０１日６時時点のものである。
【００９９】
記憶装置１００は、管理計算機５００からリカバリ要求を受信する。なお、当該リカバリ要求は、リカバリ指定時刻の３時におけるデータのリカバリを要求する。
【０１００】
すると、記憶装置１００は、データボリューム１３２に、３時から６時までの間に作成されたＢｅｆｏｒｅジャーナル４５３〜４５５を、新しいＢｅｆｏｒｅジャーナル４５３〜４５５から順に書き戻す。つまり、記憶装置１００は、Ｂｅｆｏｒｅジャーナル４５３〜４５５に付与された更新順序番号が大きいものから順番に、Ｂｅｆｏｒｅジャーナル４５３〜４５５をデータボリューム１３２に書き戻す。ここでは、記憶装置１００は、Ｂｅｆｏｒｅジャーナル４５５、Ｂｅｆｏｒｅジャーナル４５４、Ｂｅｆｏｒｅジャーナル４５３の順に書き戻す。これによって、記憶装置１００は、リカバリ指定時刻の３時におけるデータをリカバリできる。
【０１０１】
なお、現時点におけるデータボリューム１３２のデータを残したい場合、記憶装置１００は、データボリューム１３２の複製（スナップショット）を作成する。そして、記憶装置１００は、作成したスナップショットに、Ｂｅｆｏｒｅジャーナル４５３〜４５５を書き戻す。
【０１０２】
次に、データボリューム１３２及びジャーナルを、記憶装置１００から記憶装置２００へ移行する処理について説明する。
【０１０３】
図７Ａ及び図７Ｂは、本発明の第１の実施の形態のデータボリューム１３２の移行処理のシーケンス図である。
【０１０４】
まず、管理計算機５００のＣＰＵ５１０は、管理対象のすべての記憶装置１００及び２００から、データボリューム管理テーブル１２２を取得する（Ｓ１０１０）。次に、管理計算機５００のＣＰＵ５１０は、取得したデータボリューム管理テーブル１２２に基づいて、データボリューム選択画面６１０（図８）を作成する。そして、管理計算機５００のＣＰＵ５１０は、作成したデータボリューム選択画面６１０を、ディスプレイ５６０に表示させる。
【０１０５】
図８は、本発明の第１の実施の形態の管理計算機５００に表示されるデータボリューム選択画面６１０の説明図である。
【０１０６】
管理計算機５００は、データボリューム選択画面６１０を表示することによって、移行元のデータボリューム１３２及び移行先のデータボリューム１３２の選択を管理者に要求する。
【０１０７】
データボリューム選択画面６１０は、移行元データボリュームのリスト６１２、移行先データボリュームのリスト６１４及び遷移ボタン６１９を含む。
【０１０８】
移行元データボリュームのリスト６１２は、移行元記憶装置番号６１２１、移行元データボリューム番号６１２２及び選択フィールド６１２３を含む。
【０１０９】
移行元記憶装置番号６１２１は、管理計算機５００の管理対象である記憶装置１００又は２００の一意な識別子である。移行元データボリューム番号６１２２は、当該レコードの移行元記憶装置番号６１２１によって識別される記憶装置１００又は２００に備わるデータボリューム１３２の一意な識別子である。
【０１１０】
選択フィールド６１２３は、当該レコードの移行元データボリューム番号６１２２によって識別されるデータボリューム１３２が移行元として選択されたか否かを示す。
【０１１１】
移行先データボリュームのリスト６１４は、移行先記憶装置番号６１４１、移行先データボリューム番号６１４２及び選択フィールド６１４３を含む。
【０１１２】
移行先記憶装置番号６１４１は、管理計算機５００の管理対象である記憶装置１００又は２００の一意な識別子である。移行先データボリューム番号６１４２は、当該レコードの移行先記憶装置番号６１４１によって識別される記憶装置１００又は２００に備わるデータボリューム１３２の一意な識別子である。
【０１１３】
選択フィールド６１４３は、当該レコードの移行先データボリューム番号６１４２によって識別されるデータボリューム１３２が移行先として選択されたか否かを示す。
【０１１４】
遷移ボタン６１９は、当該データボリューム選択画面６１０からジャーナルグループ選択画面６２０への遷移の要求を、管理者から受け付ける。
【０１１５】
次に、データボリューム選択画面６１０の作成処理について説明する。
【０１１６】
管理計算機５００のＣＰＵ５１０は、ステップＳ１０１０で取得したデータボリューム管理テーブル１２２のすべてのレコードから、記憶装置番号１２２４及びデータボリューム番号１２２２を抽出する。
【０１１７】
次に、管理計算機５００のＣＰＵ５１０は、取得した記憶装置番号１２２４を、移行元データボリュームのリスト６１２に含まれる移行元記憶装置番号６１２１及び移行先データボリュームのリスト６１４に含まれる移行先記憶装置番号６１４１に格納する。次に、管理計算機５００のＣＰＵ５１０は、取得したデータボリューム番号１２２２を、移行元データボリュームのリスト６１２に含まれる移行元データボリューム番号６１２２及び移行先データボリュームのリスト６１４に含まれる移行先データボリューム番号６１４２に格納する。
【０１１８】
以上のようにして、管理計算機５００のＣＰＵ５１０は、データボリューム選択画面６１０を作成する。
【０１１９】
ここで、図７Ａに戻る。
【０１２０】
管理者は、移行元のデータボリューム１３２及び移行先のデータボリューム１３２を選択してから、データボリューム選択画面６１０の遷移ボタン６１９を操作する。すると、管理計算機５００のＣＰＵ５１０は、管理者によって選択された移行元のデータボリューム１３２の識別情報及び移行先のデータボリューム１３２の識別情報を取得する（Ｓ１０２０）。なお、データボリューム１３２の識別情報は、データボリュームを識別するためのデータボリューム番号、及び当該データボリューム１３２を備える記憶装置１００又は２００を識別するための記憶装置番号を含む。
【０１２１】
具体的には、管理計算機５００のＣＰＵ５１０は、データボリューム選択画面６１０の移行元データボリュームのリスト６１２から、選択フィールド６１２３が選択されたことを示すレコードを選択する。次に、管理計算機５００のＣＰＵ５１０は、選択したレコードから、移行元記憶装置番号６１２１及び移行元データボリューム番号６１２２を取得する。
【０１２２】
次に、管理計算機５００のＣＰＵ５１０は、データボリューム選択画面６１０の移行先データボリュームのリスト６１４から、選択フィールド６１４３が選択されたことを示すレコードを選択する。次に、管理計算機５００のＣＰＵ５１０は、選択したレコードから、移行先記憶装置番号６１４１及び移行先データボリューム番号６１４２を取得する。
【０１２３】
なお、管理者は、移行先のデータボリューム１３２として、新たに作成されるデータボリューム１３２を選択してもよい。この場合、管理計算機５００のＣＰＵ５１０は、新たなデータボリューム１３２の作成を、移行先の記憶装置２００に指示する。すると、移行先の記憶装置２００のストレージコントローラ１１０は、新たなデータボリューム１３２を作成する。そして、管理計算機５００のＣＰＵ５１０は、作成された新たなデータボリューム１３２を、移行先とする。
【０１２４】
次に、管理計算機５００のＣＰＵ５１０は、ステップＳ１０１０で取得したデータボリューム管理テーブル１２２に基づいて、ジャーナルグループ選択画面６２０（図９）を作成する。そして、管理計算機５００のＣＰＵ５１０は、作成したジャーナルグループ選択画面６２０をディスプレイ５６０に表示させる（Ｓ１０３０）。
【０１２５】
図９は、本発明の第１の実施の形態の管理計算機５００に表示されるジャーナルグループ選択画面６２０の説明図である。
【０１２６】
管理計算機５００は、ジャーナルグループ選択画面６２０を表示することによって、移行先のデータボリューム１３２に関連付けるジャーナルグループ１４０の選択を管理者に要求する。
【０１２７】
ジャーナルグループ選択画面６２０は、ジャーナルグループのリスト６２２、ジャーナル保持期間の入力フィールド６２４及び遷移ボタン６２９を含む。
【０１２８】
ジャーナルグループのリスト６２２は、記憶装置番号６２２１、ジャーナルグループ番号６２２２、データボリューム番号６２２３及び選択フィールド６２２４を含む。
【０１２９】
記憶装置番号６２２１は、移行先の記憶装置２００の一意な識別子である。データボリューム番号６２２３は、当該レコードの記憶装置番号６２２１によって識別される記憶装置２００に備わるデータボリューム１３２の一意な識別子である。
【０１３０】
ジャーナルグループ番号６２２２は、当該レコードのデータボリューム番号６２２３によって識別されるデータボリューム１３２を含むジャーナルグループ１４０の一意な識別子である。
【０１３１】
選択フィールド６２２４は、当該レコードのジャーナルグループ番号６２２２によって識別されるジャーナルグループ１４０が選択されたか否かを示す。
【０１３２】
ジャーナル保持期間の入力フィールド６２４には、移行先のデータボリューム１３２に設定されるジャーナル保持期間が入力される。
【０１３３】
遷移ボタン６２９は、ジャーナルグループ選択画面６２０からデータボリューム移行画面６３０への遷移の要求を、管理者から受け付ける。
【０１３４】
次に、ジャーナルグループ選択画面６２０の作成処理について説明する。
【０１３５】
管理計算機５００のＣＰＵ５１０は、ステップＳ１０１０で取得したすべてのデータボリューム管理テーブル１２２の中から、ステップＳ１０２０で取得した移行先記憶装置番号６１４１によって識別される記憶装置２００から取得したデータボリューム管理テーブル１２２を選択する。次に、管理計算機５００のＣＰＵ５１０は、選択したデータボリューム管理テーブル１２２から、ジャーナルグループ番号１２２１、記憶装置番号１２２４及びデータボリューム番号１２２２を抽出する。
【０１３６】
次に、管理計算機５００のＣＰＵ５１０は、抽出した記憶装置番号１２２４を、ジャーナルグループのリスト６２２に含まれる記憶装置番号６２２１に格納する。次に、管理計算機５００のＣＰＵ５１０は、抽出したジャーナルグループ番号１２２１を、ジャーナルグループのリスト６２２に含まれるジャーナルグループ番号６２２２に格納する。次に、管理計算機５００のＣＰＵ５１０は、抽出したデータボリューム番号１２２２を、ジャーナルグループのリスト６２２に含まれるデータボリューム番号６２２３に格納する。
【０１３７】
以上のようにして、管理計算機５００のＣＰＵ５１０は、ジャーナルグループ選択画面６２０を作成する。
【０１３８】
ここで、図７Ａに戻る。
【０１３９】
管理者は、移行先のデータボリューム１３２と関連付けるジャーナルグループ１４０を選択する。更に、管理者は、移行先のデータボリューム１３２に設定されるジャーナル保持期間を、ジャーナルグループ選択画面６２０のジャーナル保持期間の入力フィールド６２４に入力する。その後、管理者は、ジャーナルグループ選択画面６２０の遷移ボタン６２９を操作する。
【０１４０】
すると、管理計算機５００のＣＰＵ５１０は、管理者によって選択されたジャーナルグループ１４０の識別情報を取得する（Ｓ１０４０）。なお、ジャーナルグループ１４０の識別情報は、ジャーナルグループ１４０を識別するためのジャーナルグループ番号及び当該ジャーナルグループ１４０に属するデータボリューム１３２を備える記憶装置２００を識別するための記憶装置番号を含む。
【０１４１】
具体的には、管理計算機５００のＣＰＵ５１０は、ジャーナルグループ選択画面６２０のジャーナルグループのリスト６２２から、選択フィールド６２２４が選択されたことを示すレコードを選択する。次に、管理計算機５００のＣＰＵ５１０は、選択したレコードから、ジャーナルグループ番号６２２２を取得する。
【０１４２】
更に、管理計算機５００のＣＰＵ５１０は、ジャーナルグループ選択画面６２０のジャーナル保持期間の入力フィールド６２４から、入力されたジャーナル保持期間を取得する。
【０１４３】
次に、管理計算機５００のＣＰＵ５１０は、ステップＳ１０２０で取得した移行先記憶装置番号６１４１によって識別される記憶装置２００を、移行先として判断する。次に、管理計算機５００のＣＰＵ５１０は、移行先の記憶装置２００に、ジャーナルグループ１４０とデータボリューム１３２との関連付け要求を送信する（Ｓ１０５０）。なお、送信される関連付け要求は、ステップＳ１０２０で取得された移行先記憶装置番号６１４１、ステップＳ１０２０で取得された移行先データボリューム番号６１４２、ステップＳ１０４０で取得されたジャーナルグループ番号６２２２、及びステップＳ１０４０で取得されたジャーナル保持期間を含む。
【０１４４】
移行先の記憶装置２００のストレージコントローラ１１０は、関連付け要求を受信する。すると、移行先の記憶装置２００のストレージコントローラ１１０は、受信した関連付け要求に基づいて、データボリューム管理テーブル１２２を更新する（Ｓ１０６０）。
【０１４５】
具体的には、移行先の記憶装置２００のストレージコントローラ１１０は、受信した関連付け要求に含まれる移行先記憶装置番号６１４１とデータボリューム管理テーブル１２２の記憶装置番号１２２４とが一致するレコードを、データボリューム管理テーブル１２２から選択する。次に、移行先の記憶装置２００のストレージコントローラ１１０は、受信した関連付け要求に含まれる移行先データボリューム番号６１４２とデータボリューム管理テーブル１２２のデータボリューム番号１２２２とが一致するレコードを、選択したレコードの中から選択する。
【０１４６】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、選択したレコードのジャーナルグループ番号１２２１に、受信した関連付け要求に含まれるジャーナルグループ番号６２２２を格納する。更に、移行先の記憶装置２００のストレージコントローラ１１０は、選択したレコードのジャーナル保持期間１２２３に、受信した関連付け要求に含まれるジャーナル保持期間を格納する。
【０１４７】
以上のようにして、移行先の記憶装置２００のストレージコントローラ１１０は、データボリューム管理テーブル１２２を更新する。すると、移行先の記憶装置２００のストレージコントローラ１１０は、関連付け完了通知を管理計算機５００に送信する。
【０１４８】
管理計算機５００のＣＰＵ５１０は、移行先の記憶装置２００から関連付け完了通知を受信する。すると、管理計算機５００のＣＰＵ５１０は、ステップＳ１０２０で取得した識別情報に基づいて、データボリューム移行画面６３０（図１０）を作成する。そして、管理計算機５００のＣＰＵ５１０は、作成したデータボリューム移行画面６３０をディスプレイ５６０に表示させる（Ｓ１０７０）。
【０１４９】
なお、管理者は、移行先のデータボリューム１３２と関連付けるジャーナルグループ１４０として、新たに作成されるジャーナルグループ１４０を選択してもよい。この場合、管理計算機５００のＣＰＵ５１０は、新たなジャーナルグループ１４０の作成を、移行先の記憶装置２００に指示する。すると、移行先の記憶装置２００のストレージコントローラ１１０は、新たなジャーナルグループ１４０を作成する。その後、管理計算機５００のＣＰＵ５１０は、新たに作成されたジャーナルグループ１４０とデータボリューム１３２との関連付け要求を、移行先の記憶装置２００に送信する。
【０１５０】
図１０は、本発明の第１の実施の形態の管理計算機５００に表示されるデータボリューム移行画面６３０の説明図である。
【０１５１】
管理計算機５００は、データボリューム移行画面６３０を表示することによって、データボリューム１３２の移行開始の指示を管理者に要求する。
【０１５２】
データボリューム移行画面６３０は、移行元記憶装置番号６３１、移行元データボリューム番号６３２、移行先記憶装置番号６３３、移行先データボリューム番号６３４及び移行ボタン６３９を含む。
【０１５３】
移行元記憶装置番号６３１は、移行元の記憶装置１００の一意な識別子である。移行元データボリューム番号６３２は、移行元のデータボリューム１３２の一意な識別子である。移行先記憶装置番号６３３は、移行先の記憶装置２００の一意な識別子である。移行先データボリューム番号６３４は、移行先のデータボリューム１３２の一意な識別子である。
【０１５４】
移行ボタン６３９は、データボリューム１３２の移行開始の指示を管理者から受け付ける。
【０１５５】
次に、データボリューム移行画面６３０の作成処理について説明する。
【０１５６】
管理計算機５００のＣＰＵ５１０は、ステップＳ１０１０で取得した移行元記憶装置番号６１２１を、データボリューム移行画面６３０の移行元記憶装置番号６３１に格納する。次に、管理計算機５００のＣＰＵ５１０は、ステップＳ１０１０で取得した移行元データボリューム番号６１２２を、データボリューム移行画面６３０の移行元データボリューム番号６３２に格納する。
【０１５７】
次に、管理計算機５００のＣＰＵ５１０は、ステップＳ１０１０で取得した移行先記憶装置番号６１４１を、データボリューム移行画面６３０の移行先記憶装置番号６３３に格納する。次に、管理計算機５００のＣＰＵ５１０は、ステップＳ１０１０で取得した移行先データボリューム番号６１４２を、データボリューム移行画面６３０の移行先データボリューム番号６３４に格納する。
【０１５８】
以上のようにして、管理計算機５００のＣＰＵ５１０は、データボリューム移行画面６３０を作成する。
【０１５９】
ここで、図７Ａに戻る。
【０１６０】
管理計算機５００のディスプレイ５６０にデータボリューム移行画面６３０が表示されると、管理者は、ホスト計算機３００上で実行されているアプリケーションプログラム３２１のうち、移行元のデータボリューム１３２へアクセスしているアプリケーションプログラム３２１を終了させる。例えば、管理者は、ホスト計算機３００を操作するユーザへ、移行元のデータボリューム１３２へアクセスしているアプリケーションプログラム３２１の終了を指示する。
【０１６１】
その後、管理者又はホスト計算機３００を操作するユーザからの指示の入力によって、ホスト計算機３００と移行元の記憶装置１００とを接続するパスが、ホスト計算機３００と移行先の記憶装置２００とを接続するパスに切り替えられる。
【０１６２】
次に、管理者は、データボリューム移行画面６３０の内容を確認して、移行ボタン６３９を操作する。
【０１６３】
すると、管理計算機５００のＣＰＵ５１０は、ステップＳ１０２０で取得した移行元記憶装置番号６１２１によって識別される記憶装置１００を、移行元として判断する。次に、管理計算機５００のＣＰＵ５１０は、移行元の記憶装置１００に、最新の更新順序番号取得要求を送信する（Ｓ２０１０）。なお、最新の更新順序番号取得要求は、Ｓ１０２０で取得された移行元データボリューム番号６１２２を含む。
【０１６４】
移行元の記憶装置１００のストレージコントローラ１１０は、最新の更新順序番号取得要求を受信する。すると、移行元の記憶装置１００のストレージコントローラ１１０は、受信した最新の更新順序番号取得要求に含まれる移行元データボリューム番号６１２２とデータボリューム管理テーブル１２２のデータボリューム番号１２２２とが一致するレコードを、データボリューム管理テーブル１２２から選択する。次に、移行元の記憶装置１００のストレージコントローラ１１０は、選択したレコードから、ジャーナルグループ番号１２２１を抽出する。
【０１６５】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、抽出したジャーナルグループ番号１２２１とジャーナルボリューム管理テーブル１２４のジャーナルグループ番号１２４１とが一致するレコードを、ジャーナルボリューム管理テーブル１２４から選択する。次に、移行元の記憶装置１００のストレージコントローラ１１０は、選択したレコードからジャーナルボリューム番号１２４２を抽出する。
【０１６６】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、抽出したジャーナルボリューム番号１２４２によって識別されるジャーナルボリューム１３４を特定する。
【０１６７】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、特定したジャーナルボリューム１３４に記憶されるすべてのジャーナル（図４）の中から、受信した最新の更新順序番号取得要求に含まれる移行元データボリューム番号６１２２とデータボリューム番号４０２とが一致するジャーナルをすべて選択する。次に、移行元の記憶装置１００のストレージコントローラ１１０は、選択したすべてのジャーナルの更新順序番号４０５の中から、最大値を抽出する。なお、抽出された最大値は、最新の更新順序番号である。
【０１６８】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、抽出したジャーナルグループ番号１２２１及び抽出した最新の更新順序番号を管理計算機５００に送信する（Ｓ２０４０）。
【０１６９】
管理計算機５００のＣＰＵ５１０は、ジャーナルグループ番号１２２１及び最新の更新順序番号を受信する。次に、管理計算機５００のＣＰＵ５１０は、移行元の記憶装置１００及び移行先の記憶装置２００に、移行情報管理テーブル更新要求を送信する（Ｓ２０５０）。なお、移行情報管理テーブル更新要求は、ステップＳ１０２０で取得された移行元記憶装置番号６１２１、移行元データボリューム番号６１２２、移行先記憶装置番号６１４１、移行先データボリューム番号６１４２、ステップＳ１０４０で取得されたジャーナルグループ番号６２２２、ジャーナル保持期間、ステップＳ２０４０で受信されたジャーナルグループ番号１２２１及び最新の更新順序番号を含む。
【０１７０】
移行元の記憶装置１００のストレージコントローラ１１０及び移行先の記憶装置２００のストレージコントローラ１１０は、移行情報管理テーブル更新要求を管理計算機５００から受信する。すると、移行元の記憶装置１００のストレージコントローラ１１０及び移行先の記憶装置２００のストレージコントローラ１１０は、受信した移行情報管理テーブル更新要求に基づいて、移行情報管理テーブル１２６を更新する（Ｓ２０６０）。
【０１７１】
具体的には、移行元の記憶装置１００のストレージコントローラ１１０及び移行先の記憶装置２００のストレージコントローラ１１０は、移行情報管理テーブル１２６に新たなレコードを作成する。
【０１７２】
次に、移行元の記憶装置１００のストレージコントローラ１１０及び移行先の記憶装置２００のストレージコントローラ１１０は、当該移行処理に対して、同一の移行管理番号を付与する。
【０１７３】
そして、新たなレコードの移行管理番号１２６１には、移行処理に付与された移行管理番号が格納される。また、新たなレコードの移行元記憶装置番号１２６２１には、受信された移行情報管理テーブル更新要求に含まれる移行元記憶装置番号６１２１が格納される。また、新たなレコードの移行元データボリューム番号１２６２２には、受信された移行情報管理テーブル更新要求に含まれる移行元データボリューム番号６１２２が格納される。
【０１７４】
また、新たなレコードの移行元ジャーナルグループ番号１２６２３には、受信された移行情報管理テーブル更新要求に含まれるジャーナルグループ番号１２２１が格納される。また、新たなレコードの最終更新順序番号１２６２４には、受信された移行情報管理テーブル更新要求に含まれる最新の更新順序番号が格納される。
【０１７５】
また、新たなレコードの移行先記憶装置番号１２６３１には、受信された移行情報管理テーブル更新要求に含まれる移行先記憶装置番号６１４１が格納される。また、新たなレコードの移行先データボリューム番号１２６３２には、受信された移行情報管理テーブル更新要求に含まれる移行先データボリューム番号６１４２が格納される。また、新たなレコードの移行先ジャーナルグループ番号１２６３３には、受信された移行情報管理テーブル更新要求に含まれるジャーナルグループ番号６２２２が格納される。また、新たなレコードのジャーナル保持期間１２６３６には、受信された移行情報管理テーブル更新要求に含まれるジャーナル保持期間が格納される。
【０１７６】
以上のように、移行元の記憶装置１００のストレージコントローラ１１０及び移行先の記憶装置２００のストレージコントローラ１１０は、移行情報管理テーブル１２６を更新する。すると、移行元の記憶装置１００のストレージコントローラ１１０及び移行先の記憶装置２００のストレージコントローラ１１０は、更新された移行情報管理テーブル１２６を参照して、データボリューム１３２を、移行元の記憶装置１００から移行先の記憶装置２００へ移行する（Ｓ２０７０）。
【０１７７】
データボリューム１３２の移行が完了すると、移行元の記憶装置１００のストレージコントローラ１１０は、移行元のデータボリューム１３２の識別子と移行情報管理テーブル１２６の移行元データボリューム番号１２６２２とが一致するレコードを、移行情報管理テーブル１２６から選択する。次に、移行元の記憶装置１００のストレージコントローラ１１０は、選択したレコードから、移行管理番号１２６１を抽出する。
【０１７８】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、管理計算機５００にデータボリューム移行完了通知を送信する（Ｓ２０８０）。なお、データボリューム移行完了通知は、抽出された移行管理番号１２６１を含む。
【０１７９】
管理計算機５００のＣＰＵ５１０は、移行元の記憶装置１００から移行完了通知を受信する。すると、管理計算機５００のＣＰＵ５１０は、データボリューム移行完了通知画面６４０（図１１）を作成する。そして、管理計算機５００のＣＰＵ５１０は、作成したデータボリューム移行完了通知画面６４０をディスプレイ５６０に表示させる（Ｓ２０８５）。
【０１８０】
図１１は、本発明の第１の実施の形態の管理計算機５００に表示されるデータボリューム移行完了通知画面６４０の説明図である。
【０１８１】
管理計算機５００は、データボリューム移行完了通知画面６４０を表示することによって、データボリューム１３２の移行完了を管理者に通知する。
【０１８２】
データボリューム移行完了通知画面６４０は、遷移ボタン６４９を含む。遷移ボタン６４９は、データボリューム移行完了通知画面６４０からジャーナル移行画面６５０への遷移の要求を、管理者から受け付ける。
【０１８３】
ここで、図７Ｂに戻る。
【０１８４】
管理者は、データボリューム移行完了通知画面６４０の内容を確認して、データボリューム移行完了通知画面６４０の遷移ボタン６４９を操作する。
【０１８５】
すると、管理計算機５００のＣＰＵ５１０は、ジャーナル移行画面６５０を作成する。
そして、管理計算機のＣＰＵ５１０は、作成したジャーナル移行画面６５０をディスプレイ５６０に表示させる（Ｓ２０９０）。
【０１８６】
図１２は、本発明の第１の実施の形態の管理計算機５００に表示されるジャーナル移行画面６５０の説明図である。
【０１８７】
管理計算機５００は、ジャーナル移行画面６５０を表示することによって、ジャーナルの移行開始の指示を管理者に要求する。
【０１８８】
ジャーナル移行画面６５０は、移行元記憶装置番号６５１、移行元ジャーナルグループ番号６５２、移行先記憶装置番号６５３、移行先ジャーナルグループ番号６５４及び移行ボタン６５９を含む。
【０１８９】
移行元記憶装置番号６５１は、移行元の記憶装置１００の一意な識別子である。移行元ジャーナルグループ番号６５２は、移行元のデータボリューム１３２を含むジャーナルグループ１４０の一意な識別子である。
【０１９０】
移行先記憶装置番号６５３は、移行先の記憶装置２００の一意な識別子である。移行先ジャーナルグループ番号６５４は、移行先のデータボリューム１３２を含むジャーナルグループ１４０の一意な識別子である。
【０１９１】
移行ボタン６５９は、ジャーナルの移行開始の指示を管理者から受け付ける。
【０１９２】
次に、ジャーナル移行画面６５０の作成処理について説明する。
【０１９３】
管理計算機５００のＣＰＵ５１０は、ステップＳ１０２０で取得した移行元記憶装置番号６１２１を、ジャーナル移行画面６５０の移行元記憶装置番号６５１に格納する。次に、管理計算機５００のＣＰＵ５１０は、ステップＳ２０４０で受信したジャーナルグループ番号１２２１を、ジャーナル移行画面６５０の移行元ジャーナルグループ番号６５２に格納する。
【０１９４】
次に、管理計算機５００のＣＰＵ５１０は、ステップＳ１０２０で取得した移行先記憶装置番号６１４１を、ジャーナル移行画面６５０の移行先記憶装置番号６５３に格納する。次に、管理計算機５００のＣＰＵ５１０は、ステップＳ１０４０で取得したジャーナルグループ番号６２２２を、ジャーナル移行画面６５０の移行先ジャーナルグループ番号６５４に格納する。
【０１９５】
以上のようにして、管理計算機５００のＣＰＵ５１０は、ジャーナル移行画面６５０を作成する。
【０１９６】
ここで、図７Ｂに戻る。
【０１９７】
管理計算機５００のディスプレイ５６０にジャーナル移行画面６５０が表示されると、管理者は、ステップＳ１０７０で終了させたアプリケーションプログラム３２１を再開させる。例えば、管理者は、ホスト計算機３００を操作するユーザへ、終了させたアプリケーションプログラム３２１の再開を指示する。アプリケーションプログラム３２１の再開によって、移行先の記憶装置２００は、ホスト計算機３００から記憶装置２００に対する書き込み内容のジャーナリングを開始する。
【０１９８】
なお、本実施形態では、データボリューム１３２の移行が開始される前に、管理者は、ホスト計算機３００上で実行されるアプリケーションプログラム３２１を手動で停止させ、パスを切り替える。データボリューム１３２の移行が完了すると、管理者は、手動でアプリケーションプログラム３２１を再開させている。しかし、管理者が手動で操作する代わりに、本実施の形態に、特許文献３に開示されているデータ移行技術が適用されてもよい。これによって、アプリケーションプログラム３２１の停止時間が短縮される。
【０１９９】
その後、管理者は、ジャーナル移行画面６５０の内容を確認して、ジャーナル移行画面６５０の移行ボタン６５９を操作する。
【０２００】
すると、管理計算機５００のＣＰＵ５１０は、移行元の記憶装置１００に、ジャーナル移行要求を送信する（Ｓ２１００）。なお、ジャーナル移行要求は、ステップＳ２０８０で受信されたデータボリューム移行完了通知に含まれる移行管理番号１２６１を含む。
【０２０１】
移行元の記憶装置１００のストレージコントローラ１１０は、ジャーナル移行要求を管理計算機５００から受信する。すると、移行元の記憶装置１００のストレージコントローラ１１０は、ジャーナル移行処理（図１３）を実行する。
【０２０２】
図１３は、本発明の第１の実施の形態の移行元の記憶装置１００のジャーナル移行処理のフローチャートである。
【０２０３】
なお、本実施の形態では、Ｂｅｆｏｒｅジャーナルが移行される。そして、リカバリには、Ｂｅｆｏｒｅジャーナルが使用される。
【０２０４】
まず、移行元の記憶装置１００のストレージコントローラ１１０は、ジャーナル移行要求を管理計算機５００から受信する（Ｓ３０１０）。
【０２０５】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、受信したジャーナル移行要求に含まれる移行管理番号と移行情報管理テーブル１２６の移行管理番号１２６１とが一致するレコードを、移行情報管理テーブル１２６から選択する。次に、移行元の記憶装置１００のストレージコントローラ１１０は、選択したレコードから、移行元データボリューム番号１２６２２、移行元ジャーナルグループ番号１２６２３、移行先記憶装置番号１２３６１、移行先データボリューム番号１２６３２及びジャーナル保持期間１２６３６を抽出する（Ｓ３０２０）。
【０２０６】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、抽出した移行元ジャーナルグループ番号１２６２３とジャーナルボリューム管理テーブル１２４のジャーナルグループ番号１２４１とが一致するレコードを、ジャーナルボリューム管理テーブル１２４から選択する。次に、移行元の記憶装置１００のストレージコントローラ１１０は、選択したレコードから、ジャーナルボリューム番号１２４２を抽出する。
【０２０７】
移行元の記憶装置１００のストレージコントローラ１１０は、抽出したジャーナルボリューム番号１２４２によって識別されるジャーナルボリューム１３４を、移行元のデータボリューム１３２に関連するジャーナルボリューム１３４として特定する（Ｓ３０３０）。
【０２０８】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、抽出した移行元データボリューム番号１２６２２とジャーナルのデータボリューム番号４０２とが一致するすべてのジャーナルを、特定したジャーナルボリューム１３４に格納されるすべてのジャーナル（図４）の中から特定する。
【０２０９】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、特定したすべてのジャーナルの中から、更新順序番号４０５が大きいものから順番に、ジャーナルを一つずつ選択する（Ｓ３０４０）。
【０２１０】
そして、移行元の記憶装置１００のストレージコントローラ１１０は、選択したジャーナルから、生成時刻４０４を抽出する。次に、移行元の記憶装置１００のストレージコントローラ１１０は、現在の時刻から、ステップＳ３０２０で抽出したジャーナル保持期間１２６３６を減算することによって、ジャーナル保持期限を算出する。次に、移行元の記憶装置１００のストレージコントローラ１１０は、抽出した生成時刻４０４が、算出したジャーナル保持期限以後であるか否かを判定する（Ｓ３０６０）。
【０２１１】
生成時刻４０４がジャーナル保持期限以後の場合、選択されたジャーナルは、移行先の記憶装置２００に設定されたジャーナル保持期間を満たす。よって、移行元の記憶装置１００のストレージコントローラ１１０は、選択したジャーナル及び受信したジャーナル移行要求に含まれる移行管理番号を、ステップＳ３０２０で抽出した移行先記憶装置番号１２３６１によって識別される移行先の記憶装置２００に送信する（Ｓ３０７０）。
【０２１２】
そして、移行元の記憶装置１００のストレージコントローラ１１０は、ステップＳ３０４０に戻り、次のジャーナルを選択する。
【０２１３】
一方、生成時刻４０４がジャーナル保持期限より前の場合、選択されたジャーナルは、移行先の記憶装置２００に設定されたジャーナル保持期間を満たさない。更に、選択されたジャーナルより更新順序番号４０５が小さいジャーナルも、移行先の記憶装置２００に設定されたジャーナル保持期間を満たさない。よって、移行元の記憶装置１００のストレージコントローラ１１０は、ジャーナル移行終了通知を、ステップＳ３０２０で抽出した移行先記憶装置番号１２３６１によって識別される移行先の記憶装置２００に送信する（Ｓ３０８０）。なお、ジャーナル移行終了通知は、受信されたジャーナル移行に含まれる移行管理番号を含む。
【０２１４】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、移行先の記憶装置２００からジャーナル移行完了通知を受信するまで待機する。なお、ジャーナル移行完了通知は、移行管理番号を含む。
【０２１５】
移行元の記憶装置１００のストレージコントローラ１１０は、移行先の記憶装置１００からジャーナル移行完了通知を受信すると（Ｓ３０９０）、受信したジャーナル移行完了通知に含まれる移行管理番号と移行情報管理テーブル１２６の移行管理番号１２６１とが一致するレコードを、移行情報管理テーブル１２６から削除する（Ｓ３１００）。次に、移行元の記憶装置１００のストレージコントローラ１１０は、管理計算機５００にジャーナル移行完了通知を送信する（Ｓ３１１０）。そして、移行元の記憶装置１００のストレージコントローラ１１０は、ジャーナル移行処理を終了する。
【０２１６】
管理計算機５００のＣＰＵ５１０は、ジャーナル移行完了通知を受信する。すると、管理計算機５００のＣＰＵ５１０は、ジャーナル移行完了通知画面６６０（図１４）を作成する。そして、管理計算機５００のＣＰＵ５１０は、作成したジャーナル移行完了通知画面６６０を、ディスプレイ５６０に表示させる。
【０２１７】
図１４は、本発明の第１の実施の形態の管理計算機５００に表示されるジャーナル移行完了通知画面６６０の説明図である。
【０２１８】
管理計算機５００は、ジャーナル移行完了通知画面６６０を表示することによって、ジャーナルの移行完了を管理者に通知する。
【０２１９】
ジャーナル移行完了通知画面６６０は、ＯＫボタン６６９を含む。ＯＫボタン６６９は、ジャーナル移行完了通知画面６６０の表示の終了の要求を管理者から受け付ける。
【０２２０】
図１５は、本発明の第１の実施の形態の移行先の記憶装置２００のジャーナル移行処理のフローチャートである。
【０２２１】
まず、移行先の記憶装置２００のストレージコントローラ１１０は、移行元の記憶装置１００からジャーナル及び移行管理番号を受信する（Ｓ４０１０）。なお、移行元の記憶装置１００のストレージコントローラ１１０は、ジャーナル移行処理（図１３）のステップＳ３０７０において、移行先の記憶装置２００にジャーナル及び移行管理番号を送信する。
【０２２２】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、受信した移行管理番号と移行情報管理テーブル１２６の移行管理番号１２６１とが一致するレコードを、移行情報管理テーブル１２６から選択する。次に、移行先の記憶装置２００のストレージコントローラ１１０は、選択したレコードから、移行先記憶装置番号１２６３１、移行先データボリューム番号１２６３２及び移行先ジャーナルグループ番号１２６３３を抽出する。
【０２２３】
なお、移行先の記憶装置２００のストレージコントローラ１１０は、抽出した移行先データボリューム番号１２６３２によって識別されるデータボリューム１３２を、移行先のデータボリューム１３２として特定する。また、移行先の記憶装置２００のストレージコントローラ１１０は、抽出した移行先ジャーナルグループ番号１２６３３によって識別されるジャーナルグループ１４０を、移行先のデータボリューム１３２を含むジャーナルグループ１４０として特定する（Ｓ４０２０）。
【０２２４】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、抽出した移行先ジャーナルグループ番号１２６３３とジャーナルボリューム管理テーブル１２４のジャーナルグループ番号と１２４１とが一致するレコードを、ジャーナルボリューム管理テーブル１２４から選択する。次に、移行先の記憶装置２００のストレージコントローラ１１０は、選択したレコードから、ジャーナルボリューム番号１２４２を抽出する。
【０２２５】
なお、移行先の記憶装置２００のストレージコントローラ１１０は、抽出したジャーナルボリューム番号１２４２によって識別されるジャーナルボリューム１３４を、移行先のジャーナルボリューム１３４として特定する（Ｓ４０３０）。
【０２２６】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、ステップＳ４０１０で受信したジャーナルを、移行先の記憶装置２００に対応するように変換する。
【０２２７】
具体的には、移行先の記憶装置２００のストレージコントローラ１１０は、受信したジャーナルの記憶装置番号４０１、記憶装置番号４０７１及び記憶装置番号４０８１を、移行先の記憶装置２００の識別子に変換する。また、移行先の記憶装置２００のストレージコントローラ１１０は、受信したジャーナルのデータボリューム番号４０２を、ステップＳ４０２０で抽出した移行先データボリューム番号１２６３２に変換する。
【０２２８】
また、移行先の記憶装置２００のストレージコントローラ１１０は、ジャーナルボリューム番号４０７２及びジャーナルボリューム番号４０８２を、ステップＳ４０３０で抽出したジャーナルボリューム番号１２４２に変換する。
【０２２９】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、変換したジャーナルを、ステップＳ４０３０で特定した移行先のジャーナルボリューム１３４に格納する（Ｓ４０４０）。
【０２３０】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、移行元の記憶装置１００から、ジャーナル又はジャーナル移行終了通知のいずれかを受信するまで待機する。そして、移行先の記憶装置２００のストレージコントローラ１１０は、ジャーナル又はジャーナル移行終了通知のいずれを受信したかを判定する（Ｓ４０５０）。
【０２３１】
ジャーナルを受信した場合、移行先の記憶装置２００のストレージコントローラ１１０は、受信したジャーナルをジャーナルボリューム１３４に格納するために、ステップＳ４０１０に戻る。
【０２３２】
一方、ジャーナル移行終了通知を受信した場合、移行先の記憶装置２００のストレージコントローラ１１０は、当該移行先の記憶装置２００に設定されたジャーナル保持期間を満たすジャーナルの受信を完了したと判断する。そこで、移行先の記憶装置２００のストレージコントローラ１１０は、受信したジャーナル移行終了通知に含まれる移行管理番号と移行情報管理テーブル１２６の移行管理番号１２６１とが一致するレコードを、移行情報管理テーブル１２６から削除する（Ｓ４０６０）。
【０２３３】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、受信したジャーナル移行終了通知に含まれていた移行管理番号を含むジャーナル移行完了通知を、移行元の記憶装置１００に送信する（Ｓ４０７０）。そして、移行先の記憶装置２００のストレージコントローラ１１０は、当該ジャーナル移行処理を終了する。
【０２３４】
本実施の形態では、移行元の記憶装置１００のストレージコントローラ１１０は、ジャーナルごとに、移行先の記憶装置２００に設定されたジャーナル保持期間を満たすか否かを判定する。そして、移行元の記憶装置１００のストレージコントローラ１１０は、移行先の記憶装置２００に設定されたジャーナル保持期間を満たすジャーナルのみを、移行元の記憶装置１００から移行先の記憶装置２００に移行した。しかし、移行元の記憶装置１００のストレージコントローラ１１０は、ジャーナルボリューム１３４ごとに、移行先の記憶装置２００に設定されたジャーナル保持期間を満たすか否かを判定してもよい。そして、移行元の記憶装置１００のストレージコントローラ１１０は、移行先の記憶装置２００に設定されたジャーナル保持期間を満たすジャーナルボリューム１３４のみを移行する。
【０２３５】
この場合、移行元の記憶装置１００のストレージコントローラ１１０は、ジャーナルグループ１４０に含まれる一つ以上のジャーナルボリューム１３４を、更新順序番号４０５が大きいジャーナルを含むジャーナルボリューム１３４から順に、移行先の記憶装置２００に移行する。但し、移行元の記憶装置１００のストレージコントローラ１１０は、ジャーナルボリューム１３４の移行の時に、移行しようとするジャーナルボリューム１３４に含まれる最新のジャーナルの生成時刻４０４が、移行元の記憶装置２００に設定されているジャーナル保持期間を満たすか否かを判定する。最新のジャーナルの生成時刻４０４がジャーナル保持期間を満たさない場合、移行元の記憶装置１００のストレージコントローラ１１０は、当該ジャーナルボリュームを移行する必要がない。よって、移行元の記憶装置１００のストレージコントローラ１１０は、ジャーナルボリューム１３４の移行を終了する。
【０２３６】
これによって、移行元の記憶装置１００のストレージコントローラ１１０は、ジャーナル保持期間を満たすジャーナルが格納されているジャーナルボリューム１３４のみを移行先の記憶装置２００に移行できる。
【０２３７】
図１６は、本発明の第１の実施の形態の移行先の記憶装置２００のジャーナリング処理のフローチャートである。
【０２３８】
移行先の記憶装置２００のストレージコントローラ１１０は、ホスト計算機３００からの書込要求を受信すると、当該ジャーナリング処理を実行する。まず、移行先の記憶装置２００のストレージコントローラ１１０は、受信した書込要求に基づいて、データの書込先となるデータボリューム１３２を特定する（Ｓ５０１０）。
【０２３９】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、特定したデータボリューム１３２の識別子とデータボリューム管理テーブル１２２のデータボリューム番号１２２２とが一致するレコードを、データボリューム管理テーブル１２２から選択する。次に、移行先の記憶装置２００のストレージコントローラ１１０は、選択したレコードから、ジャーナルグループ番号１２２１を抽出する。
【０２４０】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、抽出したジャーナルグループ番号１２２１とジャーナルボリューム管理テーブル１２４のジャーナルグループ番号１２４１とが一致するレコードを、ジャーナルボリューム管理テーブル１２４から選択する。次に、移行先の記憶装置２００のストレージコントローラ１１０は、選択したレコードから、ジャーナルボリューム番号１２４２を抽出する。
【０２４１】
そして、移行先の記憶装置２００のストレージコントローラ１１０は、抽出したジャーナルボリューム番号１２４２によって識別されるジャーナルボリューム１３４を、ステップＳ５０１０で特定したデータボリューム１３２と同じジャーナルグループ１４０に属すジャーナルボリューム１３４として特定する（Ｓ５０１５）。
【０２４２】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、特定したジャーナルボリューム１３４に対してジャーナル移行処理を実行している最中であるか否かを判定する（Ｓ５０２０）。
【０２４３】
具体的には、移行先の記憶装置２００のストレージコントローラ１１０は、ステップＳ５０１０で特定したデータボリューム１３２の識別子と移行情報管理テーブル１２６の移行先データボリューム番号１２６３２とが一致するレコードを、移行情報管理テーブル１２６から選択する。そして、移行先の記憶装置２００のストレージコントローラ１１０は、当該レコードを、移行情報管理テーブル１２６から選択できたか否かを判定する。
【０２４４】
当該レコードを移行情報管理テーブル１２６から選択できなかった場合、移行先の記憶装置２００のストレージコントローラ１１０は、特定したジャーナルボリューム１３４に対してジャーナル移行処理を実行していないと判定する。この場合、移行先の記憶装置２００のストレージコントローラ１１０は、ステップＳ５０６０に進む。
【０２４５】
一方、当該レコードを移行情報管理テーブル１２６から選択できた場合、移行先の記憶装置２００のストレージコントローラ１１０は、特定したジャーナルボリューム１３４に対してジャーナル移行処理を実行している最中と判定する。この場合、移行先の記憶装置２００のストレージコントローラ１１０は、移行情報管理テーブル１２６から選択したレコードの最終更新順序番号１２６２４を抽出する（Ｓ５０３０）。
【０２４６】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、ステップＳ５０１５で特定したジャーナルボリューム１３４に対するジャーナリングを開始しているか否かを判定する（Ｓ５０４０）。
【０２４７】
具体的には、移行先の記憶装置２００のストレージコントローラ１１０は、ステップＳ５０３０で抽出した最終更新順序番号１２６２４より大きい更新順序番号４０５を持つジャーナルが、ステップＳ５０１５で特定したジャーナルボリューム１３４に格納されているか否かを判定する。
【０２４８】
最終更新順序番号１２６２４より大きい更新順序番号４０５を持つジャーナルがジャーナルボリューム１３４に格納されている場合、当該ジャーナルボリューム１３４に対するジャーナリングが開始されている。そこで、移行先の記憶装置２００のストレージコントローラ１１０は、ステップＳ５０１５で特定したジャーナルボリューム１３４に含まれるすべてのジャーナルの更新順序番号４０５から、最大値を抽出する。
【０２４９】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、抽出した最大値に「１」を加算する（Ｓ５０６０）。
【０２５０】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、当該加算結果を、ステップＳ５０１０で受信した書込要求に対応するジャーナルの更新順序番号として付与する。そして、移行先の記憶装置２００のストレージコントローラ１１０は、ステップＳ５０１０で受信した書込要求に対応するジャーナルを、ステップＳ５０１５で特定したジャーナルボリューム１３４に格納する（Ｓ５０７０）。
【０２５１】
そして、移行先の記憶装置２００のストレージコントローラ１１０は、当該ジャーナリング処理を終了する。
【０２５２】
一方、最終更新順序番号１２６２４より大きい更新順序番号４０５を持つジャーナルがジャーナルボリューム１３４に格納されていない場合、当該ジャーナルボリューム１３４に対するジャーナリングが開始されてない。この場合、移行先の記憶装置２００のストレージコントローラ１１０は、ステップＳ５０３０で抽出した最終更新順序番号１２６２４に「１」を加算する。
【０２５３】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、当該加算結果を、ステップＳ５０１０で受信した書込要求に対応するジャーナルの更新順序番号として付与する。そして、移行先の記憶装置２００のストレージコントローラ１１０は、ステップＳ５０１０で受信した書込要求に対応するジャーナルを、ステップＳ５０１５で特定したジャーナルボリューム１３４に格納する（Ｓ５０７０）。
【０２５４】
そして、移行先の記憶装置２００のストレージコントローラ１１０は、当該ジャーナリング処理を終了する。
【０２５５】
図１７は、本発明の第１の実施の形態の計算機システムのリカバリ処理のシーケンス図である。
【０２５６】
なお、本シーケンス図のリカバリ処理では、Ｂｅｆｏｒｅジャーナルが使用される。
【０２５７】
管理者は、管理計算機５００に備わるキーボード５７０又はマウス５８０を操作することによって、リカバリの指示を管理計算機５００に入力する。このとき、管理者は、リカバリの対象となるデータボリューム１３２、当該データボリューム１３２を備える記憶装置２００及びリカバリ指定時刻を指定する。
【０２５８】
すると、管理計算機５００のＣＰＵ５１０は、管理者によって指定された移行先の記憶装置２００に、リカバリ要求を送信する（Ｓ６０１０）。なお、リカバリ要求は、管理者によって指定されたデータボリューム１３２の識別子及び管理者によって指定されたリカバリ指定時刻を含む。
【０２５９】
移行先の記憶装置２００のストレージコントローラ１１０は、管理計算機５００からリカバリ要求を受信する。すると、移行先の記憶装置２００のストレージコントローラ１１０は、リカバリ要求から、リカバリ対象のデータボリューム１３２の識別子及びリカバリ指定時刻を抽出する。次に、移行先の記憶装置２００のストレージコントローラ１１０は、抽出したデータボリューム１３２の識別子によって識別されるデータボリューム１３２のジャーナルが移行中であるか否かを判定する（Ｓ６０２０）。
【０２６０】
具体的には、移行先の記憶装置２００のストレージコントローラ１１０は、当該移行先の記憶装置２００の識別子と移行情報管理テーブル１２６の移行先記憶装置番号１２６３１とが一致するすべてのレコードを、移行情報管理テーブル１２６から選択する。次に、移行先の記憶装置２００のストレージコントローラ１１０は、抽出したデータボリューム１３２の識別子と移行情報管理テーブル１２６の移行先データボリューム番号１２６３２とが一致するレコードを、選択したレコードの中から選択する。そして、移行先の記憶装置２００のストレージコントローラ１１０は、当該レコードを選択できたか否かを判定する。
【０２６１】
当該レコードを選択できなかった場合、抽出されたデータボリューム１３２の識別子によって識別されるデータボリューム１３２のジャーナルは、移行中でない。この場合、移行先の記憶装置２００のストレージコントローラ１１０は、抽出したデータボリューム１３２の識別子とデータボリューム管理テーブル１２２のデータボリューム番号１２２２とが一致するレコードを、データボリューム管理テーブル１２２から選択する。次に、移行先の記憶装置２００のストレージコントローラ１１０は、選択したレコードから、ジャーナルグループ番号１２２１を抽出する。
【０２６２】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、抽出したジャーナルグループ番号１２２１とジャーナルボリューム管理テーブル１２４のジャーナルグループ番号１２４１とが一致するレコードを、ジャーナルボリューム管理テーブル１２４から選択する。次に、移行先の記憶装置２００のストレージコントローラ１１０は、選択したレコードからジャーナルボリューム番号１２４２を抽出する。
【０２６３】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、抽出したジャーナルボリューム番号１２４２によって識別されるジャーナルボリューム１３４に格納されているジャーナルのジャーナルデータ４０７３を、抽出されたデータボリューム１３２の識別子によって識別されるデータボリューム１３２に書き戻すことによって、データボリューム１３２をリカバリする（Ｓ６０３０）。
【０２６４】
具体的には、移行先の記憶装置２００のストレージコントローラ１１０は、抽出したリカバリ指定時刻と同一又は直後の生成時刻４０４を持つジャーナルを、抽出したジャーナルボリューム番号１２４２によって識別されるジャーナルボリューム１３４に記憶されるジャーナルの中から特定する。
【０２６５】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、更新順序番号４０５が大きい順に、ジャーナルを選択する。次に、移行先の記憶装置２００のストレージコントローラ１１０は、選択したジャーナルのジャーナルデータ４０７３を、データボリューム１３２に書き戻す。
【０２６６】
なお、移行先の記憶装置２００のストレージコントローラ１１０は、特定したジャーナルを選択するまで、ジャーナルの選択を繰り返す。次に、移行先の記憶装置２００のストレージコントローラ１１０は、特定したジャーナルを選択し、当該特定したジャーナルのジャーナルデータ４０７３を、データボリューム１３２に書き戻す。そして、当該リカバリ処理が終了する。これによって、移行先の記憶装置２００のストレージコントローラ１１０は、リカバリ指定時刻におけるデータボリュームのデータをリカバリできる。
【０２６７】
一方、ステップＳ６０２０でレコードを選択できなかった場合、抽出されたデータボリューム１３２の識別子によって識別されるデータボリューム１３２のジャーナルが移行中である。この場合、移行先の記憶装置２００のストレージコントローラ１１０は、リカバリ対象のデータボリューム１３２のジャーナルが移行中であることを、管理計算機５００に通知する（Ｓ６０４０）。
【０２６８】
管理計算機５００のＣＰＵ５１０は、移行先の記憶装置２００からジャーナルの移行中の通知を受ける。すると、管理計算機５００のＣＰＵ５１０は、移行元の記憶装置１００に、リカバリに必要な最古のジャーナルの生成時刻の問い合わせを送信する（Ｓ６０５０）。なお、当該問い合わせは、管理者によって指定されたデータボリューム１３２の識別子及び管理者によって指定されたリカバリ指定時刻を含む。
【０２６９】
移行元の記憶装置１００のストレージコントローラ１１０は、リカバリに必要な最古のジャーナルの生成時刻の問い合わせを管理計算機から受信する。すると、移行元の記憶装置１００のストレージコントローラ１１０は、受信した問い合わせから、データボリューム１３２の識別子及びリカバリ指定時刻を抽出する。
【０２７０】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、抽出したデータボリューム１３２の識別子と移行情報管理テーブル１２６の移行先データボリューム番号１２６３２とが一致するレコードを、移行情報管理テーブル１２６から選択する。
【０２７１】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、選択したレコードから、移行元ジャーナルグループ番号１２６２３を抽出する。次に、移行元の記憶装置１００のストレージコントローラ１１０は、抽出した移行元ジャーナルグループ番号１２６２３とジャーナルボリューム管理テーブル１２４のジャーナルグループ番号１２４１とが一致するレコードを、ジャーナルボリューム管理テーブル１２４から選択する。次に、移行元の記憶装置１００のストレージコントローラ１１０は、選択したレコードから、ジャーナルボリューム番号１２４２を抽出する。
【０２７２】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、抽出したリカバリ指定時刻と同一又は直後の生成時刻４０４を持つジャーナルを、抽出したジャーナルボリューム番号１２４２によって識別されるジャーナルボリューム１３４に記憶されるジャーナルの中から特定する（Ｓ６０６０）。次に、移行元の記憶装置１００のストレージコントローラ１１０は、特定したジャーナルの生成時刻４０４を、リカバリに必要な最古のジャーナルの生成時刻として、管理計算機５００に送信する（Ｓ６０７０）。
【０２７３】
管理計算機５００のＣＰＵ５１０は、リカバリに必要な最古のジャーナルの生成時刻を移行元の記憶装置１００から受信する。すると、管理計算機５００のＣＰＵ５１０は、当該リカバリに必要な最古のジャーナルの生成時刻を移行先の記憶装置２００に送信する（Ｓ６０８０）。
【０２７４】
移行先の記憶装置２００のストレージコントローラ１１０は、リカバリに必要な最古のジャーナルの生成時刻を管理計算機５００から受信する。すると、移行先の記憶装置２００のストレージコントローラ１１０は、受信したリカバリに必要な最古のジャーナルの生成時刻と一致する生成時刻４０４を持つジャーナルが、当該移行先の記憶装置２００に備わるジャーナルボリューム１３４に格納されているか否かを判定する。
【０２７５】
これによって、移行先の記憶装置２００のストレージコントローラ１１０は、リカバリに必要なジャーナルのすべてが、当該移行先の記憶装置２００に備わるジャーナルボリューム１３４にすでに格納されているか否かを判定する（Ｓ６０９０）。
【０２７６】
リカバリに必要なジャーナルのいずれかがジャーナルボリューム１３４に格納されていない場合、移行先の記憶装置２００のストレージコントローラ１１０は、リカバリに必要なジャーナルのすべてがジャーナルボリューム１３４に格納されるまで待機する。
【０２７７】
一方、リカバリに必要なジャーナルのすべてがジャーナルボリューム１３４に格納されている場合、移行先の記憶装置２００のストレージコントローラ１１０は、データボリューム１３２をリカバリする（Ｓ６０３０）。そして、当該リカバリ処理が終了する。
【０２７８】
以上のように、本実施の形態では、データボリュームだけでなく、当該データボリュームに関連付けられたＢｅｆｏｒｅジャーナルも移行される。このため、移行先の記憶装置２００は、移行前の任意の時点におけるデータボリューム１３２をリカバリできる。
【０２７９】
なお、移行元の記憶装置１００は、最新のＢｅｆｏｒｅジャーナルから順に、移行先の記憶装置２００に送信する。更に、移行元の記憶装置１００は、移行先の記憶装置２００に設定されているジャーナル保持期間を満たすＢｅｆｏｒｅジャーナルのみを、移行先の記憶装置２００に送信する。これによって、Ｂｅｆｏｒｅジャーナルの移行に要する時間を短縮できる。
【０２８０】
（第２の実施の形態）
本発明の第１の実施の形態では、Ｂｅｆｏｒｅジャーナルを用いてリカバリが実行された。しかし、本発明の第２の実施の形態では、Ａｆｔｅｒジャーナルを用いてリカバリが実行される。
【０２８１】
図１８に、本発明の第２の実施の形態の計算機システムの構成のブロック図である。
【０２８２】
第２の実施の形態の計算機システムの構成は、記憶装置１００及び２００を除き、第１の実施の形態の計算機システム（図１）と同一である。
【０２８３】
記憶装置１００及び２００は、メモリ１２０に記憶されるプログラムを除き、第１の実施の形態の計算機システムに備わるものと同一である。
【０２８４】
なお、第２の実施の形態では、ストレージコントローラ１１０は、ハードディスクドライブ１３０の記憶領域を、一つ以上の論理ボリュームとしてホスト計算機３００に提供する。なお、論理ボリュームは、データボリューム１３２、ジャーナルボリューム１３４及びスナップショットボリューム１３６を含む。スナップショットボリューム１３６は、データボリューム１３２のスナップショットを記憶する。なお、スナップショットボリューム１３６は、一つ以上のジャーナルグループ１４０に属す。
【０２８５】
メモリ１２０は、データボリューム移行プログラム１２１、ジャーナル移行プログラム１２３、ＣＤＰ制御プログラム１２５、管理情報入出力プログラム１２９、データボリューム管理テーブル１２２、ジャーナルボリューム管理テーブル１２４、移行情報管理テーブル１２６、スナップショット移行プログラム１２７及びスナップショット管理テーブル１２８を記憶する。なお、データボリューム移行プログラム１２１、ジャーナル移行プログラム１２３、ＣＤＰ制御プログラム１２５、管理情報入出力プログラム１２９、データボリューム管理テーブル１２２、ジャーナルボリューム管理テーブル１２４及び移行情報管理テーブル１２６は、第１の実施の形態の記憶装置１００に備わるメモリ１２０に記憶されるものと同一なので説明を省略する。
【０２８６】
スナップショット移行プログラム１２７は、データボリューム１３２のスナップショットを、移行元の記憶装置１００から移行先の記憶装置２００へ移行する。
【０２８７】
スナップショット管理テーブル１２８は、データボリューム１３２のスナップショットに関する情報を示す。なお、スナップショット管理テーブル１２８については、図１９で詳細を説明する。
【０２８８】
図１９は、本発明の第２の実施の形態の記憶装置１００に記憶されるスナップショット管理テーブル１２８の構成図である。
【０２８９】
スナップショット管理テーブル１２８は、ジャーナルグループ番号１２８１、記憶装置番号１２８２、スナップショットボリューム番号１２８３、データボリューム番号１２８４及びスナップショット作成時刻１２８５を含む。
【０２９０】
記憶装置番号１２８２は、記憶装置１００又は２００の一意な識別子である。なお、本実施の形態では、記憶装置番号１２８２には、当該スナップショット管理テーブル１２８を記憶する記憶装置１００の一意な識別子が格納される。
【０２９１】
データボリューム番号１２８４は、当該レコードの記憶装置番号１２８２によって識別される記憶装置１００に備わるデータボリューム１３２の一意な識別子である。スナップショットボリューム番号１２８３は、当該レコードのデータボリューム番号１２８４によって識別されるデータボリューム１３２のスナップショットを記憶するスナップショットボリューム１３６の一意な識別子である。
【０２９２】
スナップショット作成時刻１２８５は、当該レコードのスナップショットボリューム番号１２８３によって識別されるスナップショットボリューム１３６に記憶されるスナップショットが作成された時刻である。
【０２９３】
ジャーナルグループ番号１２８１は、当該レコードのデータボリューム番号１２８４によって識別されるデータボリューム１３２及び当該レコードのスナップショットボリューム番号１２８３によって識別されるスナップショットボリューム１３６を含むジャーナルグループ１４０の一意な識別子である。
【０２９４】
なお、記憶装置２００も、本説明図と同様のスナップショット管理テーブル１２８を記憶する。
【０２９５】
図２０は、本発明の第２の実施の形態の記憶装置１００におけるＡｆｔｅｒジャーナルを用いたリカバリの説明図である。
【０２９６】
本説明図は、スナップショットボリューム１３６と、時間軸上の各時刻におけるＡｆｔｅｒジャーナルとの関係を模式的に示す。時間軸上に配置された黒点は、それぞれの時刻にＡｆｔｅｒジャーナル４６１〜４６５が作成されたことを示す。Ａｆｔｅｒジャーナル４６１〜４６５には、更新順序番号の「１」〜「５」が付与されている。
【０２９７】
なお、スナップショットボリューム１３６は、２００６年１０月０１日００：００時点におけるデータボリューム１３２のスナップショットを記憶する。また、現時点を６時とする。
【０２９８】
記憶装置１００は、管理計算機５００からリカバリ要求を受信する。例えば、当該リカバリ要求は、リカバリ指定時刻の３時におけるデータのリカバリを要求したとする。
【０２９９】
すると、記憶装置１００は、スナップショットボリューム１３６が作成された０時から、リカバリ指定時刻の３時までの間に作成されたＡｆｔｅｒジャーナル４６１及び４６２を、スナップショットボリューム１３６に書き込む。このとき、記憶装置１００は、古いＡｆｔｅｒジャーナルから順に、スナップショットボリューム１３６に書き込む。
【０３００】
つまり、記憶装置１００は、Ａｆｔｅｒジャーナル４６１及び４６２に付与された更新順序番号が小さいものから順番に、Ａｆｔｅｒジャーナル４６１及び４６２を、スナップショットボリューム１３６に書き込む。ここでは、記憶装置１００は、Ａｆｔｅｒジャーナル４６１、Ａｆｔｅｒジャーナル４６２の順に、スナップショットボリューム１３６に書き込む。これによって、記憶装置１００は、指定時刻の３時におけるデータをリカバリできる。
【０３０１】
以上のように、Ａｆｔｅｒジャーナルを用いたリカバリでは、リカバリの基点となるスナップショットが必要になる。
【０３０２】
次に、第２の実施の形態の計算機システムの処理について説明する。なお、第２の実施の形態のデータボリューム１３２の移行処理は、第１の実施の形態のデータボリューム１３２の移行処理（図７Ａ及び図７Ｂ）と同一である。よって、説明は省略する。
【０３０３】
図２１は、本発明の第２の実施の形態の移行元の記憶装置１００のジャーナル移行処理のフローチャートである。
【０３０４】
なお、本実施の形態では、Ａｆｔｅｒジャーナルが移行される。そして、リカバリには、Ａｆｔｅｒジャーナルが使用される。
【０３０５】
まず、移行元の記憶装置１００のストレージコントローラ１１０は、ステップＳ３０１０〜Ｓ３０７０を実行する。なお、ステップＳ３０１０〜Ｓ３０７０は、第１の実施の形態のジャーナル移行処理（図１３）に含まれるステップと同一である。同一のステップには同一の番号を付し、説明を省略する。
【０３０６】
移行元の記憶装置１００のストレージコントローラ１１０は、ステップＳ３０７０でジャーナルの送信を完了すると、ステップＳ３０７０で最後に送信したジャーナルから、生成時刻４０４を抽出する。次に、移行元の記憶装置１００のストレージコントローラ１１０は、ステップＳ３０２０で抽出した移行元ジャーナルグループ番号１２６２３とスナップショット管理テーブル１２８のジャーナルグループ番号１２８１とが一致するレコードを、スナップショット管理テーブル１２８から選択する。次に、移行元の記憶装置１００のストレージコントローラ１１０は、抽出した生成時刻４０４と同一又は直前のスナップショット作成時刻１２８５のレコードを、選択したレコードの中から選択する。
【０３０７】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、選択したレコードからスナップショットボリューム番号１２８３及びスナップショット作成時刻１２８５を抽出する。なお、移行元の記憶装置１００のストレージコントローラ１１０は、抽出したスナップショットボリューム番号１２８３によって識別されるスナップショットボリューム１３６を、抽出した生成時刻４０４と同一時刻又は直前に生成されたスナップショットボリューム１３６として特定する（Ｓ７０１０）。
【０３０８】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、最後に送信したジャーナルから抽出した生成時刻４０４と抽出したスナップショット作成時刻１２８５とが同一であるか否かを判定する（Ｓ７０２０）。
【０３０９】
生成時刻４０４とスナップショット作成時刻１２８５とが同一の場合、移行元の記憶装置１００のストレージコントローラ１１０は、そのままステップＳ７０７０に進む。そして、移行元の記憶装置１００のストレージコントローラ１１０は、抽出したスナップショットボリューム番号１２８３によって識別されるスナップショットボリューム１３６を、移行先の記憶装置２００に送信する（Ｓ７０７０）。
【０３１０】
一方、生成時刻４０４とスナップショット作成時刻１２８５とが異なる場合、移行元の記憶装置１００のストレージコントローラ１１０は、抽出したスナップショット作成時刻１２８５の直後の生成時刻４０４を持つジャーナルを、ジャーナルボリューム１３４から選択する。次に、移行元の記憶装置１００のストレージコントローラ１１０は、選択したジャーナルから、ステップＳ３０７０で最後に送信したジャーナルまでを、抽出したスナップショットボリューム番号１２８３によって識別されるスナップショットボリューム１３６に書き込む。このとき、移行元の記憶装置１００のストレージコントローラ１１０は、更新順序番号４０５が小さいジャーナルから順に、スナップショットボリューム１３６に書き込む。
【０３１１】
これによって、移行元の記憶装置１００のストレージコントローラ１１０は、最後に送信したジャーナルから抽出した生成時刻４０４におけるデータボリューム１３２のスナップショットを作成する（Ｓ７０３０）。このとき、移行元の記憶装置１００のストレージコントローラ１１０は、スナップショット管理テーブル１２８を更新する。
【０３１２】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、ステップＳ７０１０で特定したスナップショット又はステップＳ７０３０で作成したスナップショットを、移行先の記憶装置２００に送信する。このとき、移行元の記憶装置１００のストレージコントローラ１１０は、スナップショットと共に、当該スナップショットの作成時刻及びステップＳ３０１０で受信したジャーナル移行要求に含まれる移行管理番号を併せて、移行先の記憶装置２００に送信する。
【０３１３】
その後、移行元の記憶装置１００のストレージコントローラ１１０は、ステップＳ３０９０〜Ｓ３１２０を実行する。なお、ステップＳ３０９０〜Ｓ３１２０は、第１の実施の形態のジャーナル移行処理（図１３）に含まれるステップと同一である。同一のステップには同一の番号を付し、説明を省略する。
【０３１４】
そして、移行元の記憶装置１００のストレージコントローラ１１０は、当該ジャーナル移行処理を終了する。
【０３１５】
図２２は、本発明の第２の実施の形態の移行先の記憶装置２００のジャーナル移行処理のフローチャートである。
【０３１６】
まず、移行先の記憶装置２００のストレージコントローラ１１０は、ステップＳ４０１０〜Ｓ４０５０を実行する。なお、ステップＳ４０１０〜Ｓ４０５０は、第１の実施の形態のジャーナル移行処理（図１５）に含まれるステップと同一である。同一のステップには同一の番号を付し、説明を省略する。
【０３１７】
但し、移行先の記憶装置２００のストレージコントローラ１１０は、ステップＳ４０５０において、ジャーナル又はスナップショットのいずれかを受信するまで待機する。そして、移行先の記憶装置２００のストレージコントローラ１１０は、ジャーナル又はスナップショットのいずれを受信したかを判定する。ジャーナルを受信した場合、移行先の記憶装置２００のストレージコントローラ１１０は、ステップＳ４０１０に戻る。
【０３１８】
一方、移行先の記憶装置２００のストレージコントローラ１１０は、スナップショット、スナップショット作成時刻及び移行管理番号を受信した場合（Ｓ８０１０）、受信した移行管理番号と移行情報管理テーブル１２６の移行管理番号１２６１とが一致するレコードを、移行情報管理テーブル１２６から選択する。
【０３１９】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、選択したレコードから、移行先データボリューム番号１２６３２及び移行先ジャーナルグループ番号１２６３３を抽出する（Ｓ８０２０）。
【０３２０】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、受信したスナップショットを、スナップショットボリューム１３６に格納する（Ｓ８０３０）。なお、受信したスナップショットが格納されるスナップショットボリューム１３６は、移行先の記憶装置２００に予め備わる論理ボリュームであってもよいし、新たに作成された論理ボリュームであってもよい。
【０３２１】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、スナップショット管理テーブル１２８を更新する。
【０３２２】
具体的には、移行先の記憶装置２００のストレージコントローラ１１０は、スナップショット管理テーブル１２８に新たなレコードを追加する。次に、移行先の記憶装置２００のストレージコントローラ１１０は、抽出した移行先ジャーナルグループ番号１２６３３を、新たなレコードのジャーナルグループ番号１２８１に格納する。次に、移行先の記憶装置２００のストレージコントローラ１１０は、当該移行先の記憶装置２００の識別子を、新たなレコードの記憶装置番号１２８２に格納する。
【０３２３】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、スナップショットを格納したスナップショットボリューム１３６の識別子を、新たなレコードのスナップショットボリューム番号１２８３に格納する。次に、移行先の記憶装置２００のストレージコントローラ１１０は、抽出した移行先データボリューム番号１２６３２を、新たなレコードのデータボリューム番号１２８４に格納する。次に、移行先の記憶装置２００のストレージコントローラ１１０は、受信したスナップショット作成時刻を、新たなレコードのスナップショット作成時刻１２８５に格納する。
【０３２４】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、ステップＳ８０２０で移行情報管理テーブル１２６から選択したレコードを削除する（Ｓ８０４０）。
【０３２５】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、ステップＳ８０１０で受信した移行管理番号を含むジャーナル移行完了通知を、移行元の記憶装置１００に送信する（Ｓ８０５０）。そして、移行先の記憶装置２００のストレージコントローラ１１０は、当該ジャーナル移行処理を終了する。
【０３２６】
図２３は、本発明の第２の実施の形態の計算機システムのリカバリ処理のシーケンス図である。
【０３２７】
なお、本シーケンス図のリカバリ処理では、Ａｆｔｅｒジャーナルが使用される。
【０３２８】
管理者は、管理計算機５００に備わるキーボード５７０又はマウス５８０を操作することによって、リカバリの指示を管理計算機５００に入力する。このとき、管理者は、リカバリの対象となるデータボリューム１３２、当該データボリューム１３２を備える記憶装置２００及びリカバリ指定時刻を指定する。
【０３２９】
すると、管理計算機５００のＣＰＵ５１０は、管理者によって指定された移行先の記憶装置２００に、リカバリ要求を送信する（Ｓ９０１０）。なお、リカバリ要求は、管理者によって指定されたデータボリューム１３２の識別子及び管理者によって指定されたリカバリ指定時刻を含む。
【０３３０】
移行先の記憶装置２００のストレージコントローラ１１０は、管理計算機５００からリカバリ要求を受信する。すると、移行先の記憶装置２００のストレージコントローラ１１０は、受信したリカバリ要求から、リカバリ対象のデータボリューム１３２の識別子及びリカバリ指定時刻を抽出する。
【０３３１】
次に、移行先の記憶装置２００のストレージコントローラ１１０は、抽出したリカバリ指定時刻以前に作成されたスナップショットが存在するか否かを判定する（Ｓ９０２０）。なお、リカバリ指定時刻以前に作成されたスナップショットは、リカバリに必要なスナップショットである。
【０３３２】
具体的には、移行先の記憶装置２００のストレージコントローラ１１０は、抽出したデータボリューム１３２の識別子とスナップショット管理テーブル１２８のデータボリューム番号１２８４とが一致するレコードを、スナップショット管理テーブル１２８から選択する。次に、移行先の記憶装置２００のストレージコントローラ１１０は、スナップショット作成時刻１２８５が、抽出したリカバリ指定時刻以前であるレコードを、選択したレコードの中から選択する。
【０３３３】
当該レコードを選択できた場合、移行先の記憶装置２００のストレージコントローラ１１０は、抽出したリカバリ指定時刻以前に作成されたスナップショットが存在すると判定する。
【０３３４】
この場合、移行先の記憶装置２００のストレージコントローラ１１０は、選択したレコードから、スナップショットボリューム番号１２８３を抽出する。次に、移行先の記憶装置２００のストレージコントローラ１１０は、抽出したスナップショットボリューム番号１２８３によって識別されるスナップショットボリューム１３６に、Ａｆｔｅｒジャーナルを書き込む。これによって、移行先の記憶装置２００のストレージコントローラ１１０は、リカバリ指定時刻におけるデータをリカバリする（Ｓ９０２５）。そして、当該リカバリ処理が終了する。
【０３３５】
一方、当該レコードを選択できなかった場合、移行先の記憶装置２００のストレージコントローラ１１０は、抽出したリカバリ指定時刻以前に作成されたスナップショットが存在しないと判定する。
【０３３６】
この場合、移行先の記憶装置２００のストレージコントローラ１１０は、リカバリに必要なスナップショットの不存在を管理計算機５００に通知する（Ｓ９０３０）。管理計算機５００のＣＰＵ５１０は、移行先の記憶装置２００から、リカバリに必要なスナップショットの不存在の通知を受信する。すると、管理計算機５００のＣＰＵ５１０は、スナップショットの移行要求を、移行元の記憶装置１００に送信する（Ｓ９０４０）。なお、スナップショットの移行要求は、管理者によって指定されたデータボリューム１３２の識別子及び管理者によって指定されたリカバリ指定時刻を含む。
【０３３７】
移行元の記憶装置１００のストレージコントローラ１１０は、スナップショットの移行要求を管理計算機５００から受信する。すると、移行元の記憶装置１００のストレージコントローラ１１０は、受信したスナップショットの移行要求から、データボリューム１３２の識別子及びリカバリ指定時刻を抽出する。
【０３３８】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、抽出したデータボリューム１３２の識別子と移行情報管理テーブル１２６の移行先データボリューム番号１２６３２とが一致するレコードを、移行情報管理テーブル１２６から選択する。
【０３３９】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、選択したレコードから、移行管理番号１２６１及び移行元ジャーナルグループ番号１２６２３を抽出する。次に、移行元の記憶装置１００のストレージコントローラ１１０は、抽出した移行元ジャーナルグループ番号１２６２３とジャーナルボリューム管理テーブル１２４のジャーナルグループ番号１２４１とが一致するレコードを、ジャーナルボリューム管理テーブル１２４から選択する。次に、移行元の記憶装置１００のストレージコントローラ１１０は、選択したレコードから、ジャーナルボリューム番号１２４２を抽出する。
【０３４０】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、抽出したリカバリ指定時刻の直後の生成時刻４０４を持つジャーナルを移行先の記憶装置２００に送信済みであるか否かを判定する（Ｓ９０５０）。
【０３４１】
当該ジャーナルを送信していない場合、移行元の記憶装置１００のストレージコントローラ１１０は、抽出したリカバリ指定時刻の直後の生成時刻４０４を持つジャーナルを移行先の記憶装置２００に送信するまで待機する。
【０３４２】
一方、当該ジャーナルの送信を完了した場合、移行元の記憶装置１００のストレージコントローラ１１０は、抽出した移行元ジャーナルグループ番号１２６２３とスナップショット管理テーブル１２８のジャーナルグループ番号１２８１とが一致するレコードを、スナップショット管理テーブル１２８から選択する。次に、移行元の記憶装置１００のストレージコントローラ１１０は、抽出したリカバリ指定時刻と同一又は直前のスナップショット作成時刻１２８５のレコードを、選択したレコードの中から選択する。
【０３４３】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、選択したレコードからスナップショットボリューム番号１２８３及びスナップショット作成時刻１２８５を抽出する。なお、移行元の記憶装置１００のストレージコントローラ１１０は、抽出したスナップショットボリューム番号１２８３によって識別されるスナップショットボリューム１３６を、抽出したリカバリ指定時刻と同一時刻又は直前に生成されたスナップショットボリューム１３６（基底のスナップショットボリューム１３６）として特定する（Ｓ９０６０）。
【０３４４】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、抽出したリカバリ指定時刻と抽出したスナップショット作成時刻１２８５とが同一であるか否かを判定する。
【０３４５】
リカバリ指定時刻とスナップショット作成時刻１２８５とが同一の場合、移行元の記憶装置１００のストレージコントローラ１１０は、当該ステップＳ９０７０を省略する。
【０３４６】
一方、リカバリ指定時刻とスナップショット作成時刻１２８５とが異なる場合、移行元の記憶装置１００のストレージコントローラ１１０は、抽出したスナップショット作成時刻１２８５の直後の生成時刻４０４を持つジャーナルを、ジャーナルボリューム１３４から選択する。次に、移行元の記憶装置１００のストレージコントローラ１１０は、選択したジャーナルから、リカバリ指定時刻の直前に作成されたジャーナルまでを、抽出したスナップショットボリューム番号１２８３によって識別されるスナップショットボリューム１３６に書き込む。このとき、移行元の記憶装置１００のストレージコントローラ１１０は、更新順序番号４０５が小さいジャーナルから順に、ジャーナルをスナップショットボリューム１３６に書き込む。
【０３４７】
これによって、移行元の記憶装置１００のストレージコントローラ１１０は、抽出したスナップショット作成時刻１２８５におけるデータボリューム１３２のスナップショットを作成する（Ｓ９０７０）。このとき、移行元の記憶装置１００のストレージコントローラ１１０は、スナップショット管理テーブル１２８を更新する。
【０３４８】
次に、移行元の記憶装置１００のストレージコントローラ１１０は、作成したスナップショット及び抽出した移行管理番号１２６１を、移行先の記憶装置２００へ送信する（Ｓ９０８０）。
【０３４９】
移行先の記憶装置２００のストレージコントローラ１１０は、スナップショットを移行元の記憶装置１００から受信する（９０９０）。次に、移行先の記憶装置２００のストレージコントローラ１１０は、受信したスナップショットを用いて、リカバリ指定時刻におけるデータをリカバリする（Ｓ９０２５）。そして、当該リカバリ処理が終了する。
【０３５０】
以上のように、本実施の形態では、データボリュームだけでなく、当該データボリュームに関連付けられたＡｆｔｅｒジャーナル及びＡｆｔｅｒジャーナルが書き込まれるスナップショットも移行される。このため、移行先の記憶装置２００は、移行前の任意の時点におけるデータボリューム１３２をリカバリできる。
【０３５１】
なお、移行元の記憶装置１００は、最新のＡｆｔｅｒジャーナルから順に、移行先の記憶装置２００に送信する。更に、移行元の記憶装置１００は、移行先の記憶装置２００に設定されているジャーナル保持期間を満たすＡｆｔｅｒジャーナルのみを、移行先の記憶装置２００に送信する。これによって、Ａｆｔｅｒジャーナルの移行に要する時間を短縮できる。
【０３５２】
次に、第２の実施の形態の変形例について説明する。なお、第１の実施の形態についても、第２の実施の形態と同様の変形例が存在する。
【０３５３】
図２４は、本発明の第２の実施の形態の変形例の計算機システムの構成のブロック図である。
【０３５４】
第２の実施の形態の変形例の計算機システムは、記憶装置１００、２００、ホスト計算機３００、管理計算機５００、ジャーナル管理計算機７００、８００、データネットワーク５０及び管理ネットワーク９０を含む。
【０３５５】
ホスト計算機３００は、データネットワーク５０を介して、記憶装置１００、記憶装置２００、ジャーナル管理計算機７００及びジャーナル管理計算機８００に接続される。また、ジャーナル管理計算機７００は、データネットワーク５０を介して、記憶装置１００に接続される。なお、本説明図では、ジャーナル管理計算機７００は、一つの記憶装置１００に接続されているが、複数の記憶装置１００に接続されてもよい。
【０３５６】
また、ジャーナル管理計算機８００は、データネットワーク５０を介して、記憶装置２００に接続される。なお、本説明図では、ジャーナル管理計算機８００は、一つの記憶装置２００に接続されているが、複数の記憶装置２００に接続されてもよい。
【０３５７】
また、管理計算機５００は、管理ネットワーク９０を介して、ジャーナル管理計算機７００及びジャーナル管理計算機８００と接続される。
【０３５８】
ホスト計算機３００は、メモリ３２０に記憶されるアプリケーションプログラム３２３を除き、第２の実施の形態の計算機システム（図１８）に備わるものと同一である。よって、詳細な説明は省略する。
【０３５９】
ホスト計算機３００のメモリ３２０には、アプリケーションプログラム３２３を記憶する。アプリケーションプログラム３２３は、記憶装置１００に備わる論理ボリューム１３８へのデータの書き込みを要求する時に、記憶装置１００だけでなく、ジャーナル管理計算機７００にも書込要求を送信する。同様に、アプリケーションプログラム３２３は、記憶装置２００に備わる論理ボリューム１３８へのデータの書き込みを要求する時に、記憶装置２００だけでなく、ジャーナル管理計算機８００にも書込要求を送信する。
【０３６０】
記憶装置１００及び２００は、メモリ１２０に記憶されるプログラムを除き、第２の実施の形態の計算機システム（図１８）に備わるものと同一である。よって、詳細な説明は省略する。
【０３６１】
本実施の形態では、メモリ１２０は、データボリューム移行プログラム１２１、ジャーナル移行プログラム１２３、ＣＤＰ制御プログラム１２５、管理情報入出力プログラム１２９、データボリューム管理テーブル１２２、ジャーナルボリューム管理テーブル１２４、移行情報管理テーブル１２６、スナップショット移行プログラム１２７及びスナップショット管理テーブル１２８を記憶しない。
【０３６２】
また、記憶装置１００に備わるストレージコントローラ１１０は、ハードディスクドライブ１３０の記憶領域を、一つ以上の論理ボリューム１３８としてホスト計算機３００及びジャーナル管理計算機７００に提供する。同様に、記憶装置２００に備わるストレージコントローラ１１０は、ハードディスクドライブ１３０の記憶領域を、一つ以上の論理ボリューム１３８としてホスト計算機３００及びジャーナル管理計算機８００に提供する。
【０３６３】
なお、論理ボリューム１３８は、データボリューム１３２、ジャーナルボリューム１３４及びスナップショットボリューム１３６を含む。
【０３６４】
管理計算機５００は、第２の実施の形態の計算機システム（図１８）に備わるものと同一である。よって、詳細な説明は省略する。なお、第２の実施の形態の変形例では、管理計算機５００は、記憶装置１００でなく、ジャーナル管理計算機７００に対して情報及び要求を送受信する。同様に、管理計算機５００は、記憶装置２００でなく、ジャーナル管理計算機８００に対して情報及び要求を送受信する。
【０３６５】
ジャーナル管理計算機７００は、ＣＰＵ７１０、メモリ７２０、管理Ｉ／Ｆ７９０及びデータＩ／Ｆ７５０を備える。なお、ジャーナル管理計算機８００は、ジャーナル管理計算機７００と同一の構成を備える。
【０３６６】
ＣＰＵ７１０は、メモリ７２０に記憶されるプログラムを実行することによって、各種処理を行う。メモリ７２０は、ＣＰＵ７１０によって実行されるプログラム及びＣＰＵ７１０によって必要とされる情報などを記憶する。具体的には、メモリ７２０は、データボリューム移行プログラム１２１、ジャーナル移行プログラム１２３、ＣＤＰ制御プログラム１２５、管理情報入出力プログラム１２９、データボリューム管理テーブル１２２、ジャーナルボリューム管理テーブル１２４、移行情報管理テーブル１２６、スナップショット移行プログラム１２７及びスナップショット管理テーブル１２８を記憶する。
【０３６７】
データボリューム移行プログラム１２１、ジャーナル移行プログラム１２３、ＣＤＰ制御プログラム１２５、管理情報入出力プログラム１２９、データボリューム管理テーブル１２２、ジャーナルボリューム管理テーブル１２４、移行情報管理テーブル１２６、スナップショット移行プログラム１２７及びスナップショット管理テーブル１２８は、第２の実施の形態の記憶装置１００に備わるメモリ１２０に記憶されるものと同一である。
【０３６８】
よって、第２の実施の形態の変形例では、ジャーナル管理計算機７００は、記憶装置１００に代わって、ジャーナリングよるバックアップ処理、リカバリ処理、及びジャーナルの移行処理を実行する。ただし、ジャーナル管理計算機７００は、記憶装置１００に備わる論理ボリューム１３８を用いて、これらの処理を実行する。つまり、記憶装置１００に備わる論理ボリューム１３８には、書込データ、ジャーナル又はスナップショットなどが格納される。
【０３６９】
同様に、ジャーナル管理計算機８００は、記憶装置２００に代わって、ジャーナリングよるバックアップ処理、リカバリ処理、及びジャーナルの移行処理を実行する。ただし、ジャーナル管理計算機８００は、記憶装置２００に備わる論理ボリューム１３８を用いて、これらの処理を実行する。つまり、記憶装置２００に備わる論理ボリューム１３８には、書込データ、ジャーナル、スナップショットなどが格納される。
【０３７０】
次に、第２の実施の形態の変形例におけるジャーナリング処理について説明する。
【０３７１】
ホスト計算機３００のＣＰＵ３１０は、記憶装置１００に備わる論理ボリューム１３８へのデータの書き込みを要求する時に、記憶装置１００及びジャーナル管理計算機７００に、同一の書込要求を同時に送信する。
【０３７２】
記憶装置１００のストレージコントローラ１１０は、ホスト計算機３００から書込要求を受信する。すると、記憶装置１００のストレージコントローラ１１０は、書き込みを要求されたデータを、当該記憶装置１００に備わる論理ボリューム１３８に書き込む。
【０３７３】
一方、ジャーナル管理計算機７００のＣＰＵ７１０は、ホスト計算機３００から書込要求を受信する。
【０３７４】
すると、ジャーナル管理計算機７００のＣＰＵ７１０は、受信した書込要求によってデータが格納される記憶装置１００の識別子とデータボリューム管理テーブル１２２の記憶装置番号１２２４とが一致するレコードを、データボリューム管理テーブル１２２から選択する。次に、ジャーナル管理計算機７００のＣＰＵ７１０は、受信した書込要求によってデータが格納される論理ボリューム１３８の識別子とデータボリューム管理テーブル１２２のデータボリューム番号１２２２とが一致するレコードを、選択したレコードの中から選択する。
【０３７５】
次に、ジャーナル管理計算機７００のＣＰＵ７１０は、選択したレコードから、ジャーナルグループ番号１２２１を抽出する。次に、ジャーナル管理計算機７００のＣＰＵ７１０は、抽出したジャーナルグループ番号１２２１とジャーナルボリューム管理テーブル１２４のジャーナルグループ番号１２４１とが一致するレコードを、ジャーナルボリューム管理テーブル１２４から選択する。次に、ジャーナル管理計算機７００のＣＰＵ７１０は、選択したレコードから、記憶装置番号１２４４及びジャーナルボリューム番号１２４２を抽出する。
【０３７６】
次に、ジャーナル管理計算機７００のＣＰＵ７１０は、ジャーナルを作成する。そして、ジャーナル管理計算機７００のＣＰＵ７１０は、作成したジャーナルを、抽出した記憶装置番号１２４４によって識別される記憶装置１００に備わる、抽出したジャーナルボリューム番号１２４２によって識別される論理ボリューム１３８へ格納する。
【０３７７】
以上のように、ジャーナル管理計算機７００は、記憶装置１００に代わって、ジャーナリングを行う。
【０３７８】
次に、本実施の形態におけるリカバリ処理について説明する。
【０３７９】
管理計算機５００のＣＰＵ５１０は、リカバリ要求を、ジャーナル管理計算機７００に送信する。すると、ジャーナル管理計算機７００のＣＰＵ７１０は、データボリューム管理テーブル１２２、ジャーナルボリューム管理テーブル１２４及びスナップショット管理テーブル１２８を参照して、リカバリ対象のデータボリューム１３２、リカバリに必要なジャーナル、及びスナップショットの格納先となる論理ボリューム１３８を特定する。そして、ジャーナル管理計算機７００のＣＰＵ７１０は、記憶装置１００に記憶されるデータをリカバリする。
【０３８０】
第２の実施の形態では、データボリューム、ジャーナル及びスナップショットの移行処理は、記憶装置１００及び記憶装置２００によって実行された。一方、第２の実施の形態の変形例では、データボリューム、ジャーナル及びスナップショットの移行処理は、ジャーナル管理計算機７００及びジャーナル管理計算機８００によって実行される。
【０３８１】
但し、移行元のジャーナル管理計算機７００は、移行対象のデータを、データネットワーク５０を介して記憶装置１００に備わる論理ボリューム１３８から取得する。なお、移行対象のデータは、書込データ、ジャーナル及びスナップショットを含む。
【０３８２】
そして、移行元のジャーナル管理計算機７００は、取得した移行対象のデータを、移行先のジャーナル管理計算機８００へ送信する。移行先のジャーナル管理計算機８００は、受信した移行対象のデータを、データネットワーク５０を介して記憶装置２００に備わる論理ボリューム１３８に格納する。
【図面の簡単な説明】
【０３８３】
【図１】本発明の第１の実施の形態の計算機システムの構成のブロック図である。
【図２】本発明の第１の実施の形態の記憶装置に記憶されるデータボリューム管理テーブルの構成図である。
【図３】本発明の第１の実施の形態の記憶装置に記憶されるジャーナルボリューム管理テーブルの構成図である。
【図４】本発明の第１の実施の形態の記憶装置に備わるジャーナルボリュームに格納されるジャーナルの構成図である。
【図５】本発明の第１の実施の形態の記憶装置に記憶される移行情報管理テーブルの構成図である。
【図６】本発明の第１の実施の形態の記憶装置におけるＢｅｆｏｒｅジャーナルを用いたリカバリの説明図である。
【図７Ａ】本発明の第１の実施の形態のデータボリュームの移行処理のシーケンス図である。
【図７Ｂ】本発明の第１の実施の形態のデータボリュームの移行処理のシーケンス図である。
【図８】本発明の第１の実施の形態の管理計算機に表示されるデータボリューム選択画面の説明図である。
【図９】本発明の第１の実施の形態の管理計算機に表示されるジャーナルグループ選択画面の説明図である。
【図１０】本発明の第１の実施の形態の管理計算機に表示されるデータボリューム移行画面の説明図である。
【図１１】本発明の第１の実施の形態の管理計算機に表示されるデータボリューム移行完了通知画面の説明図である。
【図１２】本発明の第１の実施の形態の管理計算機に表示されるジャーナル移行画面の説明図である。
【図１３】本発明の第１の実施の形態の移行元の記憶装置のジャーナル移行処理のフローチャートである。
【図１４】本発明の第１の実施の形態の管理計算機に表示されるジャーナル移行完了通知画面の説明図である。
【図１５】本発明の第１の実施の形態の移行先の記憶装置のジャーナル移行処理のフローチャートである。
【図１６】本発明の第１の実施の形態の移行先の記憶装置のジャーナリング処理のフローチャートである。
【図１７】本発明の第１の実施の形態の計算機システムのリカバリ処理のシーケンス図である。
【図１８】本発明の第２の実施の形態の計算機システムの構成のブロック図である。
【図１９】本発明の第２の実施の形態の記憶装置に記憶されるスナップショット管理テーブルの構成図である。
【図２０】本発明の第２の実施の形態の記憶装置におけるＡｆｔｅｒジャーナルを用いたリカバリの説明図である。
【図２１】本発明の第２の実施の形態の移行元の記憶装置のジャーナル移行処理のフローチャートである。
【図２２】本発明の第２の実施の形態の移行先の記憶装置のジャーナル移行処理のフローチャートである。
【図２３】本発明の第２の実施の形態の計算機システムのリカバリ処理のシーケンス図である。
【図２４】本発明の第２の実施の形態の変形例の計算機システムの構成のブロック図である。
【符号の説明】
【０３８４】
１０    記憶装置
５０    データネットワーク
９０    管理ネットワーク
１００    記憶装置
１１０    ストレージコントローラ
１１５    キャッシュメモリ
１２０    メモリ
１２１    データボリューム移行プログラム
１２２    データボリューム管理テーブル
１２３    ジャーナル移行プログラム
１２４    ジャーナルボリューム管理テーブル
１２５    ＣＤＰ制御プログラム
１２６    移行情報管理テーブル
１２７    スナップショット移行プログラム
１２８    スナップショット管理テーブル
１２９    管理情報入出力プログラム
１３０    ハードディスクドライブ
１３２    データボリューム
１３４    ジャーナルボリューム
１３６    スナップショットボリューム
１３８    論理ボリューム
１４０    ジャーナルグループ
１５０    データインタフェース（データＩ／Ｆ）
１９０    管理インタフェース
２００    記憶装置
３００    ホスト計算機
３１０    ＣＰＵ
３２０    メモリ
３２１    アプリケーションプログラム
３２３    アプリケーションプログラム
３５０    データインタフェース
５００    管理計算機
５１０    ＣＰＵ
５２０    メモリ
５２１    構成管理プログラム
５２５    移行管理プログラム
５２７    リカバリ要求プログラム
５６０    ディスプレイ
５７０    キーボード
５８０    マウス
５９０    管理インタフェース
７００    ジャーナル管理計算機
７１０    ＣＰＵ
７２０    メモリ
７５０    データＩ／Ｆ
７９０    管理Ｉ／Ｆ
８００    ジャーナル管理計算機
【図１】
2008165624.tif 000003
【図２】
2008165624.tif 000004
【図３】
2008165624.tif 000005
【図４】
2008165624.tif 000006
【図５】
2008165624.tif 000007
【図６】
2008165624.tif 000008
【図７Ａ】
2008165624.tif 000009
【図７Ｂ】
2008165624.tif 000010
【図８】
2008165624.tif 000011
【図９】
2008165624.tif 000012
【図１０】
2008165624.tif 000013
【図１１】
2008165624.tif 000014
【図１２】
2008165624.tif 000015
【図１３】
2008165624.tif 000016
【図１４】
2008165624.tif 000017
【図１５】
2008165624.tif 000018
【図１６】
2008165624.tif 000019
【図１７】
2008165624.tif 000020
【図１８】
2008165624.tif 000021
【図１９】
2008165624.tif 000022
【図２０】
2008165624.tif 000023
【図２１】
2008165624.tif 000024
【図２２】
2008165624.tif 000025
【図２３】
2008165624.tif 000026
【図２４】
2008165624.tif 000027