(57)【要約】【課題】保存できるバックアップデータの量及び世代の数を増やす。【解決手段】第１ストレージシステムは、第１論理ボリューム及び第２論理ボリュームを含み、前記第２論理ボリュームには、第１時刻において前記第１論理ボリュームに格納されていたデータと、前記第１時刻より後の第２時刻において前記第１論理ボリュームに格納されていたデータとの差分である第１差分データが格納され、第２ストレージシステムは、第３論理ボリュームを含み、前記第１ストレージシステムは、前記第１差分データを前記第２ストレージシステムに送信し、前記第２ストレージシステムは、前記第１差分データを前記第３論理ボリュームに格納し、前記第１ストレージシステムは、前記第２論理ボリュームから前記第１差分データを削除し、前記計算機システムは、前記第１論理ボリュームと、前記第１差分データを格納する前記第３論理ボリュームと、を対応付ける管理情報を保持する。【選択図】図１
2010079526.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続される第１ストレージシステムと、前記第１ストレージシステムに接続される第２ストレージシステムと、を備える計算機システムであって、
前記第１ストレージシステムは、
データを格納する物理記憶装置と、前記ネットワークに接続され、前記物理記憶装置へのデータの書き込み及び読み出しを制御する第１コントローラと、を備え、
前記第１ストレージシステム内の前記物理記憶装置の記憶領域を、複数の論理ボリュームとして管理し、
前記第１ストレージシステム内の前記複数の論理ボリュームは、第１論理ボリューム及び第２論理ボリュームを含み、
前記第２論理ボリュームには、前記第１論理ボリュームに関するジャーナルデータが格納され、
前記第１論理ボリュームに関するジャーナルデータは、第１時刻において前記第１論理ボリュームに格納されていたデータと、前記第１時刻より後の第２時刻において前記第１論理ボリュームに格納されていたデータとの差分である第１差分データを含み、
前記第２ストレージシステムは、
データを格納する物理記憶装置と、前記第１ストレージシステムに接続され、前記物理記憶装置へのデータの書き込み及び読み出しを制御する第２コントローラと、を備え、
前記第２ストレージシステム内の前記物理記憶装置の記憶領域を、複数の論理ボリュームとして管理し、
前記第２ストレージシステム内の前記複数の論理ボリュームは、第３論理ボリュームを含み、
前記第１ストレージシステムは、前記第１差分データを含むジャーナルデータを前記第２ストレージシステムに送信し、
前記第２ストレージシステムは、前記第１ストレージシステムから受信した前記ジャーナルデータを前記第３論理ボリュームに格納し、
前記第１ストレージシステムは、前記第２論理ボリュームから少なくとも前記第１差分データを削除し、
前記計算機システムは、前記第１論理ボリュームと、前記第１論理ボリュームに関する前記第１差分データを含む前記ジャーナルデータを格納する前記第３論理ボリュームと、を対応付ける第１管理情報を保持することを特徴とする計算機システム。
【請求項２】
前記第１ストレージシステムは、
前記第１時刻において前記第１論理ボリュームに格納されていたデータを読み出す要求を受信すると、前記第１管理情報に基づいて、前記第１論理ボリュームに関する前記第１差分データを含む前記ジャーナルデータを格納する前記第３論理ボリュームを特定し、
前記第３論理ボリュームから少なくとも前記第１差分データを読み出す要求を前記第２ストレージシステムに送信し、
前記第２ストレージシステムは、前記第３論理ボリュームから少なくとも前記第１差分データを読み出して前記第１ストレージシステムに送信し、
前記第１ストレージシステムは、現在の前記第１論理ボリュームに格納されたデータに、少なくとも前記第１差分データを反映させることによって、前記第１時刻において前記第１論理ボリュームに格納されていたデータを復元し、
前記復元されたデータを送信することを特徴とする請求項１に記載の計算機システム。
【請求項３】
前記第１論理ボリュームに関するジャーナルデータは、さらに、前記第２時刻において前記第１論理ボリュームに格納されていたデータと、前記第２時刻より後の第３時刻において前記第１論理ボリュームに格納されていたデータとの差分である第２差分データを含み、
前記第１ストレージシステムは、
現在の前記第１論理ボリュームに格納されたデータに、少なくとも前記第２差分データを反映させることによって、前記第２時刻における前記第１論理ボリュームを復元し、
前記ジャーナルデータに加えて、前記復元された前記第２時刻における第１論理ボリュームに格納されたデータを前記第２ストレージシステムに送信し、
前記第２ストレージシステム内の前記複数の論理ボリュームは、さらに第４論理ボリュームを含み、
前記第２ストレージシステムは、前記第１ストレージシステムから受信した、前記復元された前記第２時刻における第１論理ボリュームに格納されたデータを、前記第４論理ボリュームに格納し、
前記第１管理情報は、さらに、前記第１論理ボリュームと、前記復元された前記第２時刻における第１論理ボリュームに格納されたデータを格納する前記第４論理ボリュームと、前記第１論理ボリュームに関する前記第１差分データを含む前記ジャーナルデータを格納する前記第３論理ボリュームと、を対応付ける情報を含むことを特徴とする請求項１に記載の計算機システム。
【請求項４】
前記計算機システムは、前記第１論理ボリュームに関する前記第１差分データを含む前記ジャーナルデータを格納する前記第３論理ボリュームと、前記復元された前記第２時刻における第１論理ボリュームのデータを格納する前記第４論理ボリュームと、の組を識別する情報を含む第２管理情報を保持することを特徴とする請求項３に記載の計算機システム。
【請求項５】
前記第１ストレージシステムは、
前記第１論理ボリュームに関する前記第１差分データを含む前記ジャーナルデータを前記第３論理ボリュームに移動する指示を受信すると、前記第４論理ボリュームに、前記復元された前記第２時刻における第１論理ボリュームに格納されたデータが格納されているか否かを判定し、
前記第４論理ボリュームに、前記復元された前記第２時刻における第１論理ボリュームに格納されたデータが格納されている場合、前記第２時刻における前記第１論理ボリュームを復元せずに、前記第１差分データを含む前記ジャーナルデータを前記第２ストレージシステムに送信し、
前記第４論理ボリュームに、前記復元された前記第２時刻における第１論理ボリュームに格納されたデータが格納されていない場合、現在の前記第１論理ボリュームに格納されたデータに、少なくとも前記第２差分データを反映させることによって、前記第２時刻における前記第１論理ボリュームを復元し、前記ジャーナルデータに加えて、前記復元された前記第２時刻における第１論理ボリュームに格納されたデータを前記第２ストレージシステムに送信することを特徴とする請求項３に記載の計算機システム。
【請求項６】
前記第２ストレージシステムは、
前記第１管理情報を保持し、
前記第２ストレージシステムと前記第１ストレージシステムとの接続が切断された後、前記第１時刻において前記第１論理ボリュームに格納されていたデータを読み出す要求を受信すると、前記第１管理情報に基づいて、前記第１論理ボリュームに関する前記第１差分データを含む前記ジャーナルデータを格納する前記第３論理ボリューム、及び、そのジャーナルデータに対応する、前記復元された前記第２時刻における第１論理ボリュームのデータを格納する前記第４論理ボリュームを特定し、
前記第４論理ボリュームから読み出されたデータに前記第１差分データを反映させることによって、前記第１時刻において前記第１論理ボリュームに格納されていたデータを復元し、
前記復元されたデータを送信することを特徴とする請求項３に記載の計算機システム。
【請求項７】
前記第２ストレージシステムは、前記第１論理ボリュームと、前記復元された前記第２時刻における第１論理ボリュームに格納されたデータを格納する前記第４論理ボリュームと、前記第１論理ボリュームに関する前記第１差分データを含む前記ジャーナルデータを格納する前記第３論理ボリュームと、を対応付ける情報を入力されると、前記入力された情報を前記第１管理情報として保持することを特徴とする請求項６に記載の計算機システム。
【請求項８】
前記計算機システムは、さらに、前記ネットワークに接続されるホスト計算機を備え、
前記ホスト計算機は、
前記ホスト計算機は、前記ネットワークに接続される第１インタフェースと、前記第１インタフェースに接続される第１プロセッサと、前記第１プロセッサに接続される第１メモリと、を備え、
前記第１管理情報を保持し、
前記第２ストレージシステムは、前記ホスト計算機と接続され、
前記ホスト計算機は、
前記第２ストレージシステムと前記第１ストレージシステムとの接続が切断された後、前記第１時刻において前記第１論理ボリュームに格納されていたデータを読み出す要求を受信すると、前記第１管理情報に基づいて、前記第１論理ボリュームに関する前記第１差分データを含む前記ジャーナルデータを格納する前記第３論理ボリューム、及び、そのジャーナルデータに対応する、前記復元された前記第２時刻における第１論理ボリュームのデータを格納する前記第４論理ボリュームを特定し、
前記第１時刻において前記第１論理ボリュームに格納されていたデータを読み出す要求を前記第２ストレージシステムに送信し、
前記ホスト計算機から送信された要求は、前記特定された第４論理ボリュームの指定、及び、前記特定された第３論理ボリュームの指定を含み、
前記第２ストレージシステムは、前記ホスト計算機からの要求に従って、前記第４論理ボリュームから読み出されたデータに前記第３論理ボリュームから読み出された前記第１差分データを反映させることによって、前記第１時刻において前記第１論理ボリュームに格納されていたデータを復元し、
前記復元されたデータを送信することを特徴とする請求項３に記載の計算機システム。
【請求項９】
前記計算機システムは、さらに、前記ホスト計算機及び前記第２ストレージシステムに接続される第３ストレージシステムを備え、
前記第３ストレージシステムは、
データを格納する物理記憶装置と、前記ネットワークに接続され、前記物理記憶装置へのデータの書き込み及び読み出しを制御する第３コントローラと、を備え、
前記第３ストレージシステム内の前記物理記憶装置の記憶領域を、複数の論理ボリュームとして管理し、
前記第１管理情報を保持し、
前記第２ストレージシステムと前記第１ストレージシステムとの接続が切断された後、前記第１時刻において前記第１論理ボリュームに格納されていたデータを読み出す要求を受信すると、前記第１管理情報に基づいて、前記第１論理ボリュームに関する前記第１差分データを含む前記ジャーナルデータを格納する前記第３論理ボリューム、及び、そのジャーナルデータに対応する、前記復元された前記第２時刻における第１論理ボリュームのデータを格納する前記第４論理ボリュームを特定し、
前記第３論理ボリュームから少なくとも前記第１差分データを読み出す要求、及び、前記第４論理ボリュームに格納されたデータを読み出す要求を前記第２ストレージシステムに送信し、
前記第２ストレージシステムは、前記第３論理ボリュームから少なくとも前記第１差分データ、及び、前記第４論理ボリュームに格納されたデータを読み出して前記第３ストレージシステムに送信し、
前記第３ストレージシステムは、
前記第４論理ボリュームから読み出されたデータに、前記第１差分データを反映させることによって、前記第１時刻において前記第１論理ボリュームに格納されていたデータを復元し、
前記復元されたデータを送信することを特徴とする請求項３に記載の計算機システム。
【請求項１０】
前記計算機システムは、さらに、前記ホスト計算機及び前記第２ストレージシステムに接続される第３ストレージシステムを備え、
前記第３ストレージシステムは、
データを格納する物理記憶装置と、前記ネットワークに接続され、前記物理記憶装置へのデータの書き込み及び読み出しを制御する第３コントローラと、を備え、
前記第３ストレージシステム内の前記物理記憶装置の記憶領域を、複数の論理ボリュームとして管理し、
前記第１管理情報を保持し、
前記第２ストレージシステムと前記第１ストレージシステムとの接続が切断された後、前記第１時刻において前記第１論理ボリュームに格納されていたデータを読み出す要求を受信すると、前記第１管理情報に基づいて、前記第１論理ボリュームに関する前記第１差分データを含む前記ジャーナルデータを格納する前記第３論理ボリューム、及び、そのジャーナルデータに対応する、前記復元された前記第２時刻における第１論理ボリュームのデータを格納する前記第４論理ボリュームを特定し、
前記第１時刻において前記第１論理ボリュームに格納されていたデータを読み出す要求を前記第２ストレージシステムに送信し、
前記ホスト計算機から送信された要求は、前記特定された第４論理ボリュームの指定、及び、前記特定された第３論理ボリュームの指定を含み、
前記第２ストレージシステムは、
前記ホスト計算機からの要求に従って、前記第４論理ボリュームから読み出されたデータに前記第３論理ボリュームから読み出された前記第１差分データを反映させることによって、前記第１時刻において前記第１論理ボリュームに格納されていたデータを復元し、
前記復元されたデータを前記第３ストレージシステムに送信し、
前記第３ストレージシステムは、前記第２ストレージシステムから受信した前記復元されたデータを送信することを特徴とする請求項３に記載の計算機システム。
【請求項１１】
前記第１論理ボリュームに関するジャーナルデータは、さらに、前記第２時刻において前記第１論理ボリュームに格納されていたデータと、前記第２時刻より後の第３時刻において前記第１論理ボリュームに格納されていたデータとの差分である第２差分データを含み、
前記第１ストレージシステムは、
前記第１差分データ及び前記第２差分データに基づいて、前記第１時刻において前記第１論理ボリュームに格納されていたデータと、前記第３時刻において前記第１論理ボリュームに格納されていたデータとの差分である第３差分データを作成し、
前記作成された第３差分データを含む前記ジャーナルデータを前記第２ストレージシステムに送信することを特徴とする請求項１に記載の計算機システム。
【請求項１２】
ネットワークに接続される第１ストレージシステムと、前記第１ストレージシステムに接続される第２ストレージシステムと、を備える計算機システムを制御する方法であって、
前記ホスト計算機は、前記ネットワークに接続される第１インタフェースと、前記第１インタフェースに接続されるプロセッサと、前記プロセッサに接続されるメモリと、を備え、
前記第１ストレージシステムは、
データを格納する物理記憶装置と、前記ネットワークに接続され、前記物理記憶装置へのデータの書き込み及び読み出しを制御する第１コントローラと、を備え、
前記第１ストレージシステム内の前記物理記憶装置の記憶領域を、複数の論理ボリュームとして管理し、
前記第１ストレージシステム内の前記複数の論理ボリュームは、第１論理ボリューム及び第２論理ボリュームを含み、
前記第２論理ボリュームには、前記第１論理ボリュームに関するジャーナルデータが格納され、
前記第１論理ボリュームに関するジャーナルデータは、第１時刻において前記第１論理ボリュームに格納されていたデータと、前記第１時刻より後の第２時刻において前記第１論理ボリュームに格納されていたデータとの差分である第１差分データを含み、
前記第２ストレージシステムは、
データを格納する物理記憶装置と、前記第１ストレージシステムに接続され、前記物理記憶装置へのデータの書き込み及び読み出しを制御する第２コントローラと、を備え、
前記第２ストレージシステム内の前記物理記憶装置の記憶領域を、複数の論理ボリュームとして管理し、
前記第２ストレージシステム内の前記複数の論理ボリュームは、第３論理ボリュームを含み、
前記方法は、
前記第１ストレージシステムが、前記第１差分データを含むジャーナルデータを前記第２ストレージシステムに送信する手順と、
前記第２ストレージシステムが、前記第１ストレージシステムから受信した前記ジャーナルデータを前記第３論理ボリュームに格納する手順と、
前記第１ストレージシステムが、前記第２論理ボリュームから少なくとも前記第１差分データを削除する手順と、
前記計算機システムが、前記第１論理ボリュームと、前記第１論理ボリュームに関する前記第１差分データを含む前記ジャーナルデータを格納する前記第３論理ボリュームと、を対応付ける第１管理情報を保持する手順と、を含むことを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本願明細書に開示される技術は、ストレージシステムに格納されるデータの管理に関し、特に、スナップショット機能を備えるストレージシステムにおけるジャーナルの管理に関する。
【背景技術】
【０００２】
ストレージシステムが備える機能として、スナップショット機能及びジャーナル機能が知られている。
【０００３】
スナップショット機能とは、或る時点（例えばホストからスナップショット取得要求を受けた時点）の或る論理ボリュームのイメージを保持する機能である。定期的にスナップショット機能を実行することによって、論理ボリューム内のデータのレプリケーション（すなわちバックアップ）を間欠的に取得することができる。さらに、スナップショット機能によって、スナップショット取得時点の論理ボリュームをリストアすることができる。
【０００４】
ジャーナル機能とは、ホスト計算機からのライトコマンドで指定されている論理ボリュームにライトデータを書き込む場合に、そのライトデータ及びその書込みに関する制御情報を含むデータ（ジャーナル）を作成し、作成したジャーナルを保存する機能である。
【０００５】
特許文献１には、スナップショット機能によって取得したスナップショットに、ジャーナル内のライトデータを書き込むことによって、スナップショットを作成したポイント以外のポイントにおいて実行されるリカバリ処理について開示されている。
【０００６】
特許文献２には、スナップショットとジャーナルの切り替えについての開示がある。
【０００７】
特許文献３には、スナップショットのリストアボリュームの運用についての開示がある。
【特許文献１】特開２００５−１８７３８号公報
【特許文献２】特開２００７−８０１３１号公報
【特許文献２】特開２００７−１３３４７１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
スナップショット機能によって保存するバックアップの世代が増えるほど、格納されるべきデータ量が増大するため、ストレージシステムのディスク容量が不足する。
【０００９】
本発明は、上記の問題点に鑑みてなされたものであり、ストレージシステムに接続された別のストレージシステムにジャーナルデータを格納することによって、ジャーナルデータを階層管理し、これによって、保存できるバックアップデータの量及び世代の数を増やすことを目的とする。
【課題を解決するための手段】
【００１０】
本願で開示する代表的な発明は、ネットワークに接続される第１ストレージシステムと、前記第１ストレージシステムに接続される第２ストレージシステムと、を備える計算機システムであって、前記第１ストレージシステムは、データを格納する物理記憶装置と、前記ネットワークに接続され、前記物理記憶装置へのデータの書き込み及び読み出しを制御する第１コントローラと、を備え、前記第１ストレージシステム内の前記物理記憶装置の記憶領域を、複数の論理ボリュームとして管理し、前記第１ストレージシステム内の前記複数の論理ボリュームは、第１論理ボリューム及び第２論理ボリュームを含み、前記第２論理ボリュームには、前記第１論理ボリュームに関するジャーナルデータが格納され、前記第１論理ボリュームに関するジャーナルデータは、第１時刻において前記第１論理ボリュームに格納されていたデータと、前記第１時刻より後の第２時刻において前記第１論理ボリュームに格納されていたデータとの差分である第１差分データを含み、前記第２ストレージシステムは、データを格納する物理記憶装置と、前記第１ストレージシステムに接続され、前記物理記憶装置へのデータの書き込み及び読み出しを制御する第２コントローラと、を備え、前記第２ストレージシステム内の前記物理記憶装置の記憶領域を、複数の論理ボリュームとして管理し、前記第２ストレージシステム内の前記複数の論理ボリュームは、第３論理ボリュームを含み、前記第１ストレージシステムは、前記第１差分データを含むジャーナルデータを前記第２ストレージシステムに送信し、前記第２ストレージシステムは、前記第１ストレージシステムから受信した前記ジャーナルデータを前記第３論理ボリュームに格納し、前記第１ストレージシステムは、前記第２論理ボリュームから少なくとも前記第１差分データを削除し、前記計算機システムは、前記第１論理ボリュームと、前記第１論理ボリュームに関する前記第１差分データを含む前記ジャーナルデータを格納する前記第３論理ボリュームと、を対応付ける第１管理情報を保持することを特徴とする。
【発明の効果】
【００１１】
本発明の一実施形態によれば、保存できるバックアップデータの量及び世代の数を増やすことができる。
【発明を実施するための最良の形態】
【００１２】
最初に、本発明の第１の実施形態を、図面を用いて詳細に説明する。
【００１３】
図１は、本発明の第１の実施形態の計算機システムの構成を示すブロック図である。
【００１４】
本実施形態の計算機システムは、一つ以上のホスト計算機１０１、管理サーバ１１１、第１のストレージシステム１２５及び第２のストレージシステム１６１を備える。第１のストレージシステム１２５は、第１のネットワーク１２１を介してホスト計算機１０１に接続される。第２のストレージシステム１６１は、第２のネットワーク１２３を介して第１のストレージシステム１２５に接続される。一つ以上のホスト計算機１０１、管理サーバ１１１、第１のストレージシステム１２５及び第２のストレージシステム１６１は、第３のネットワーク１０８を介して相互に接続される。
【００１５】
第１のネットワーク１２１、第２のネットワーク１２３及び第３のネットワーク１０８は、いかなる種類のネットワークであってもよい。例えば、第１のネットワーク１２１及び第２のネットワーク１２３は、いわゆるＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）であってもよい。第３のネットワーク１０８は、いわゆるＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）であってもよい。
【００１６】
ホスト計算機１０１は、ストレージシステム１２５によって提供される論理ボリュームにアクセスする計算機である。ホスト計算機１０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０３、メモリ１０６、補助記憶デバイス１０４、入力装置（例えばキーボード及びポインティングデバイス）１０２、出力装置（例えば表示装置）１０５、第１のネットワーク１２１に接続されるストレージアダプタ（例えばホストバスアダプタ）１０９、及び、第３のネットワーク１０８に接続されるネットワークアダプタ１０７を備える。
【００１７】
メモリ１０６には、ＣＰＵ１０３によって実行されるプログラムが格納される。本実施形態のメモリ１０６には、少なくとも、アプリケーションプログラム（ＡＰ）６０１及びストレージシステムエージェントプログラム６０２が格納される（図６参照）。
【００１８】
メモリ１０６に格納されたプログラムを実行するＣＰＵ１０３は、必要に応じて、ストレージアダプタ１０９を介して、アドレスを指定したＩ／Ｏコマンド（ライトコマンド又はリードコマンド）を送信する。
【００１９】
管理サーバ１１１は、第３のネットワーク１０８に接続されているホスト計算機１０１、第１のストレージシステム１２５及び第２のストレージシステム１６１を管理する計算機である。管理サーバ１１１は、ＣＰＵ１１３、メモリ１１６、補助記憶デバイス１１４、入力装置（例えばキーボード及びポインティングデバイス）１１２、出力装置（例えば表示装置）１１５、及び、第３のネットワーク１０８に接続されるネットワークアダプタ１１７を備える。
【００２０】
ＣＰＵ１１３は、ネットワークアダプタ１１７を介して、コマンドを、第３のネットワーク１０８に接続されているホスト計算機１０１、第１のストレージシステム１２５又は第２のストレージシステム１６１に送信する。メモリ１１６は、図３に示すコンピュータプログラム及び情報を記憶するメモリである。
【００２１】
第１のストレージシステム１２５は、コントローラと記憶デバイス群とを備える。コントローラは、例えば、複数のフロントエンドインタフェース１２７と、複数のバックエンドインタフェース１３７と、第１の内部ネットワーク１５６と、一以上のキャッシュメモリ１４７と、一以上の制御メモリ１４５と、一以上の制御プロセッサ１４３とを備える。
【００２２】
記憶デバイス群は、複数の物理記憶デバイス（以下、「ＰＤＥＶ」と記載する）１５１で構成される。
【００２３】
フロントエンドインタフェース１２７は、ストレージシステム１２５にネットワークを介して接続されたホスト計算機１０１又は第２のストレージシステム１６１と通信するためのインタフェース回路である。従って、ストレージシステム１２５は、少なくとも二つのフロントエンドインタフェース１２７を備え、それらのうち一つは第１のネットワーク１２１に接続され、別の一つは第２のネットワーク１２３に接続される。
【００２４】
フロントエンドインタフェース１２７は、例えば、第１のネットワーク１２１又は第２のネットワーク１２３に接続されるポート１２９と、メモリ１３１と、ローカルルータ（以下、「ＬＲ」と略記する）１３３とを備える。ＬＲ１３３に、ポート１２９及びメモリ１３１が接続される。
【００２５】
ＬＲ１３３は、ポート１２９を介して受けたデータを任意の制御プロセッサ１４３で処理するために振り分ける。具体的には、例えば、制御プロセッサ１４３が、或るアドレスを指定するＩ／Ｏコマンドをその制御プロセッサ１４３に実行させるようにＬＲ１３３を設定する。その設定に従って、ＬＲ１３３が、Ｉ／Ｏコマンド及びデータを振り分ける。
【００２６】
バックエンドインタフェース１３７は、ＰＤＥＶ１５１と通信するためのインタフェース回路である。バックエンドインタフェース１３７は、例えば、ＰＤＥＶ１５１に接続されるディスクインタフェース１４１と、メモリ１３５と、ＬＲ１３９と、を備える。ＬＲ１３９に、ディスクインタフェース１４１及びメモリ１３５が接続される。
【００２７】
第１の内部ネットワーク１５６は、例えば、スイッチ（例えばクロスバスイッチ）或いはバスで構成される。第１の内部ネットワーク１５６に、複数のフロントエンドインタフェース１２７、複数のバックエンドインタフェース１３７、一以上のキャッシュメモリ１４７、一以上の制御メモリ１４５及び一以上の制御プロセッサ１４３が接続されている。これらの要素間の通信は、第１の内部ネットワーク１５６を介して行われる。
【００２８】
キャッシュメモリ１４７は、ホスト計算機１０１からのＩ／Ｏコマンドに従って読み出される又は書き込まれるデータを一時記憶するメモリである。
【００２９】
制御メモリ１４５は、種々のコンピュータプログラム及び情報を記憶するメモリである。制御メモリ１４５に格納されるコンピュータプログラム及び情報の内容については後述する（図２等参照）。
【００３０】
制御プロセッサ１４３は、コントローラによる制御を実現するプロセッサである。具体的には、制御プロセッサ１４３は、制御メモリ１４５に記憶されている種々のコンピュータプログラムを実行することで、後述する処理を実行する。
【００３１】
ＰＤＥＶ１５１は、不揮発性の記憶デバイスであり、例えば、ハードディスクドライブ（ＨＤＤ）或いはフラッシュメモリデバイスである。二以上のＰＤＥＶ１５１によって、ＲＡＩＤの規則に従うＰＤＥＶグループであるＲＡＩＤ（Redundant Array of Independent Disks）グループが構成されてもよい。
【００３２】
コントローラの構成要素であるフロントエンドインタフェース１２７、バックエンドインタフェース１３７、キャッシュメモリ１４７、制御メモリ１４５及び制御プロセッサ１４３に、第２の内部ネットワーク（例えばＬＡＮ）１５５が接続され、その第２の内部ネットワーク１５５に、保守管理端末１５３が接続される。保守管理端末１５３は、第３のネットワーク１０８にも接続されており、ストレージシステム１２５を保守又は管理する計算機である。ストレージシステム１２５の保守員は、例えば、保守管理端末１５３（又は、その保守管理端末１５３と通信可能な管理サーバ１１１）を操作して、制御メモリ１４５に記憶される種々の情報を定義することができる。
【００３３】
第２のストレージシステム１６１は、コントローラ１６５及びＰＤＥＶ１６３を備える。コントローラ１６５は、例えば、ネットワークアダプタ１６２と、ホストアダプタ１６４と、キャッシュメモリ１７２と、制御メモリ１７１と、プロセッサ１６７と、ストレージアダプタ１６９と、を備える。
【００３４】
ネットワークアダプタ１６２は、第３のネットワーク１０８に接続され、管理サーバ１１１と通信するインタフェースである。
【００３５】
ホストアダプタ１６４は、第２のネットワーク１２３に接続され、第１のストレージシステム１２５と通信するインタフェースである。ホストアダプタ１６４は、例えば、第１のストレージシステム１２５のフロントエンドインタフェース１２７と同様のものであってもよい。
【００３６】
制御メモリ１７１は、種々のコンピュータプログラム及び情報を記憶するメモリである。
【００３７】
キャッシュメモリ１７２は、第１のストレージシステム１２５からのＩ／Ｏコマンドに従って読み出される又は書き込まれるデータを一時記憶するメモリである。
【００３８】
プロセッサ１６７は、制御メモリ１７１に記憶されている種々のコンピュータプログラムを実行する。少なくとも、プロセッサ１６７は、第１のストレージシステム１２５からのＩ／Ｏコマンドに従って、キャッシュメモリ１７２及びＰＤＥＶ１６３に対するデータの書き込み及び読み出しを制御する。
【００３９】
ＰＤＥＶ１６３は、物理記憶デバイスであり、例えば、第１のストレージシステムのＰＤＥＶ１５１と同様のものであってもよい。あるいは、ＰＤＥＶは、テープ記憶媒体であってもよい。
【００４０】
本実施形態の第１のストレージシステム１２５は、いわゆる外部接続機能を備える。第２のストレージシステム１６１は、この機能によって第１のストレージシステム１２５に外部接続されている。ここで、外部接続について説明する。
【００４１】
既に説明したように、第１のストレージシステム１２５は、一つ又は複数の論理ボリュームをホスト計算機１０１に提供する。各論理ボリュームは、ホスト計算機１０１によって一つの記憶デバイスと認識される。例えば、第１のストレージシステム１２５が提供する論理ボリュームが、第１のストレージシステム１２５内のＰＤＥＶ１５１に対応付けられてもよい。その場合、第１のストレージシステム１２５は、論理ボリュームへのライトコマンドを受信すると、その論理ボリュームに対応付けられたＰＤＥＶ１５１にデータを格納する。このような論理ボリュームは、以下の説明において通常ボリュームとも記載される。
【００４２】
あるいは、第１のストレージシステム１２５が提供する論理ボリュームは、第２のストレージシステム１６１内のＰＤＥＶ１６３に対応付けられてもよい。この場合、第１のストレージシステム１２５は、論理ボリュームへのライトコマンドを受信すると、その論理ボリュームに対応付けられたＰＤＥＶ１６３にデータを書き込むためのライトコマンドを生成し、生成したライトコマンドを第２のストレージシステム１６１に送信する。第２のストレージシステム１６１は、第１のストレージシステム１２５から受信したライトコマンドに従って、データをＰＤＥＶ１６３に格納する。このような論理ボリュームは、以下の説明において仮想ボリュームとも記載される。
【００４３】
このように、第１のストレージシステム１２５が提供する論理ボリュームに格納されるデータを、実際には第１のストレージシステム１２５の外部に接続された第２のストレージシステム１６１に格納する機能が、外部接続機能と呼ばれる。
【００４４】
なお、以下の説明において、上記のような外部接続機能を利用して外部接続されたストレージシステムを、外部ストレージシステムとも記載する。第１の実施形態において、第２のストレージシステム１６１が、外部ストレージシステムである。
【００４５】
図２は、本発明の第１の実施形態の第１のストレージシステム１２５の制御メモリ１４５に記憶されているコンピュータプログラム及び情報を示す説明図である。
【００４６】
以下の説明において、プログラムが実行する処理は、実際には、そのプログラムを実行する制御プロセッサ１４３が行う処理である。
【００４７】
制御メモリ１４５には、Ｒ／Ｗプログラム２０１、ＣｏＷ（Ｃｏｐｙ  ｏｎ  Ｗｒｉｔｅ）プログラム２０２、移動可否判定プログラム２０３、移動対象決定プログラム２０４、ジャーナル（ＪＮＬ）管理プログラム２０５、ＪＮＬバックアッププログラム２０６、ＪＮＬリストアプログラム２０７、ＪＮＬマージプログラム２０８、Ｐ−ＶＯＬ作成プログラム２０９、複製Ｐ−ＶＯＬ／ＪＮＬコピープログラム２１０、Ｐ−ＶＯＬ／ＪＮＬペア管理プログラム２１１、デバイス構成管理テーブル２２１、ＬＵ管理テーブル２２２、Ｐ−ＶＯＬ構成管理テーブル２２３、ＪＮＬ管理テーブル２２４及びＰ−ＶＯＬ／ＪＮＬペア管理テーブル２２５が記憶される。
【００４８】
Ｒ／Ｗプログラム２０１は、ホスト計算機１０１からのＩ／Ｏコマンドに従うＩ／Ｏを制御する。ＪＮＬマージプログラム２０８は、複数の世代の世代間差分データをマージする。ＪＮＬバックアッププログラム２０６は、ジャーナルデータを第２のストレージシステム１６１へバックアップするために環境を作る。ＪＮＬリストアプログラム２０７は、第２のストレージシステム１６１にバックアップしたジャーナルデータをストレージシステム１２５内で指定された世代のボリュームとして復元する。制御メモリ１４５に記憶されている各種プログラム及び情報の詳細は、後に説明する。
【００４９】
図３は、本発明の第１の実施形態の管理サーバ１１１のメモリ１１６に記憶されているコンピュータプログラム及び情報を示す説明図である。
【００５０】
メモリ１１６には、移動可否判定プログラム３０１、移動対象決定プログラム３０２、カタログ管理プログラム３０３及びカタログ管理情報テーブル３１１が記憶される。これらのプログラム及び情報の詳細は、後に説明する。
【００５１】
次に、本実施形態のジャーナル（ＪＮＬ）データのフォーマットについて、図４Ａから図４Ｅを参照して説明する。
【００５２】
本実施形態において、ジャーナルデータとは、所望の時点におけるＰ−ＶＯＬのイメージを保存するために、第１のストレージシステム１２５のスナップショット機能によって作成されるデータである。なお、Ｐ−ＶＯＬ（Ｐｒｉｍａｒｙ  Ｖｏｌｕｍｅ）とは、ホスト計算機１０１によるデータＩ／Ｏの対象として指定される論理ボリュームである。後述するように、例えば現在のＰ−ＶＯＬのデータにジャーナルデータを反映させることによって、指定された世代のＰ−ＶＯＬ（言い換えると、過去の指定された時刻におけるＰ−ＶＯＬ）に格納されたデータを復元することができる。
【００５３】
具体的には、図４Ａから図４Ｅは、図２に示したデバイス構成管理テーブル２２１、ＬＵ管理テーブル２２２、Ｐ−ＶＯＬ構成管理テーブル２２３、ＪＮＬ管理テーブル２２４、及びＰ−ＶＯＬ／ＪＮＬペア管理テーブル２２５の例を示す。なお、図４Ｃには、図２に示されていないＪＮＬ情報テーブル２３１、ＪＮＬ制御情報テーブル２３２及びＪＮＬデータ２３３も示されているが、これらは、制御メモリ１４５には記憶されず、ＰＤＥＶ１５１に記憶される。
【００５４】
図４Ａは、本発明の第１の実施形態のデバイス構成管理テーブル２２１の説明図である。
【００５５】
デバイス構成管理テーブル２２１は、Ｐ−ＶＯＬ毎に用意されるテーブルである。デバイス構成管理テーブル２２１には、各Ｐ−ＶＯＬについて、デバイス＃４０１、状態４０２、パスの有無４０３、接続ホスト情報４０４、容量４０５及び属性４０６が記録される。
【００５６】
デバイス＃４０１は、各Ｐ−ＶＯＬの識別子である。
【００５７】
状態４０２は、各Ｐ−ＶＯＬの状態を示す情報である。各Ｐ−ＶＯＬの状態を示す情報とは、例えば、各Ｐ−ＶＯＬに設定されたアクセス制限（具体的には、書き込み及び読み出しの禁止、又は、読み出しのみ許可、など）を示す情報である。
【００５８】
パスの有無４０３は、各Ｐ−ＶＯＬとホスト計算機１０１との間にアクセスパスが定義されているか否かを示す情報である。
【００５９】
接続ホスト情報４０４は、各Ｐ−ＶＯＬにアクセスするホスト計算機１０１の種類を示す情報、例えば、ホスト計算機１０１で稼動しているオペレーティングシステムの種類などを示す情報である。
【００６０】
容量４０５は、各Ｐ−ＶＯＬの容量を示す情報である。
【００６１】
属性４０６は、各Ｐ−ＶＯＬが通常ボリュームであるか仮想ボリュームであるかを示す情報である。
【００６２】
図４Ｂは、本発明の第１の実施形態のＬＵ管理テーブル２２２の説明図である。
【００６３】
ＬＵ管理テーブル２２２は、オープンホストが入出力するためのＬＵに用意されるテーブルである。ＬＵ管理テーブル２２２には、各ＬＵについて、ＬＵ＃４１１、ポート＃４１２、デバイス＃４１３及びＬＵＮ＃４１４が記録される。
【００６４】
ＬＵ＃４１１は、各ＬＵの識別子である。
【００６５】
ポート＃４１２は、デバイス＃４１３によって識別されるＰ−ＶＯＬに対応するターゲットデバイスに割り当てられているポート１２９の番号である。
【００６６】
デバイス＃４１３は、各ＬＵに対応するＰ−ＶＯＬの識別子である。
【００６７】
ＬＵＮ＃４１４は、論理ユニット番号（ＬＵＮ：Ｌｏｇｉｃａｌ  Ｕｎｉｔ  Ｎｕｍｂｅｒ）であり、各ＬＵを識別するための識別子である。
【００６８】
なお、ＬＵ＃４１１は、ポート＃４１２に対して一意である。言い換えると、同一のポート１２９に割り当てられた複数のＬＵには、それぞれ異なるＬＵ＃４１１が付与されるが、二つのＬＵがそれぞれ異なるポート１２９に割り当てられている場合、それらのＬＵに同一のＬＵ＃４１１が付与される場合がある。一方、ＬＵＮ＃４１４は、第１のストレージシステム１２５内で一意である。
【００６９】
図４Ｃは、本発明の第１の実施形態のＰ−ＶＯＬ構成管理テーブル２２３及びそれに関連するテーブルの説明図である。
【００７０】
Ｐ−ＶＯＬ構成管理テーブル２２３は、デバイス構成管理テーブル２２１の属性４０６が「通常ボリューム」であるＰ−ＶＯＬについて用意されるテーブルである。Ｐ−ＶＯＬ構成管理テーブル２２３には、デバイス＃４２１、ＪＮＬＧ＃４２２及びＪＮＬ情報テーブル先頭アドレス４２３が記録される。
【００７１】
デバイス＃４２１は、各Ｐ−ＶＯＬの識別子である。
【００７２】
ＪＮＬＧ＃４２２は、各Ｐ−ＶＯＬに対応するジャーナルが属するジャーナルグループ（ＪＮＬＧ）の番号である。同一のジャーナルグループに属する複数のジャーナルデータ（又はボリューム）の世代は、同一のタイミングで切り替えられる。
【００７３】
ＪＮＬ情報テーブル先頭アドレス４２３は、各Ｐ−ＶＯＬに対応するジャーナルに関するＪＮＬ情報テーブル２３１が格納された領域の先頭アドレスを示す。
【００７４】
ＪＮＬ情報テーブル２３１は、Ｐ−ＶＯＬ毎に用意され、Ｐ−ＶＯＬに対応する世代間差分データ（すなわちジャーナルデータ）を管理するためのテーブルである。ＪＮＬ情報テーブル２３１には、世代間差分データについて、世代毎に、先頭アドレス４３２、長さ４３３及び作成時刻４３４が記録される。
【００７５】
先頭アドレス４３２は、各世代に対応するＪＮＬ制御情報テーブル２３２が格納された領域の先頭アドレスを示す。
【００７６】
長さ４３３は、世代間差分データの、各世代に対応するデータサイズ及び要素数を示す。
【００７７】
作成時刻４３４は、各世代の差分を記憶することになった時刻、例えば、最新世代を確定する原因となったマーカの受領時刻を示す。マーカとは、ホスト計算機１０１がＰ−ＶＯＬのイメージをバックアップデータの世代として確定するために第１のストレージシステム１２５に送信するコマンドである。マーカを受信したストレージシステム１２５は、スナップショット機能を用いて、マーカの受信時点における、マーカによって指定されたＰ−ＶＯＬのイメージを最新世代として確定する。
【００７８】
さらに、ＪＮＬ情報テーブル２３１は、複数の世代間差分データをマージすることによって作成されたマージ差分データも管理する。ＪＮＬ情報テーブル２３１には、マージ差分データについても、世代毎に、先頭アドレス４３２、長さ４３３及び作成時刻４３４が記録される。なお、マージ差分データにおける「世代」は、マージ差分データに対応する複数世代のうちの或る世代（例えば、最新又は最古の世代）であり、作成時刻４３４は、対応するマージ差分データがＪＮＬエリアに格納された時刻である。
【００７９】
世代間差分データ及びマージ差分データに対応した先頭アドレス４３２を参照することで、その世代間差分データ又はマージ差分データに対応したＪＮＬ制御情報テーブル２３２を参照することができる。
【００８０】
ＪＮＬ制御情報テーブル２３２は、世代間差分データ及びマージ差分データのそれぞれについて、世代毎に存在する。ＪＮＬ制御情報テーブル２３２は、世代に対応した差分ビットマップ（ＢＭ）と、データ要素の在り処とを管理するためのテーブルである。
【００８１】
具体的には、例えば、ＪＮＬ制御情報テーブル２３２には、デバイス＃４４１、長さ４４２、差分ＢＭ４４３、及び、対応するＪＮＬデータ２３３を構成する各ＪＮＬデータ要素４５１に対応したデータ格納アドレス４４４が記録される。
【００８２】
デバイス＃４４１は、ＪＮＬ制御情報テーブル２３２が示すジャーナルに対応するＰ−ＶＯＬの識別子を示す。
【００８３】
長さ４４２は、各世代に対応するジャーナルデータ（すなわち世代間差分データ又はマージ差分データ）の長さを示す。
【００８４】
差分ＢＭ４４３は、各世代に対応する差分ＢＭである。
【００８５】
データ格納アドレス４４４は、各世代に対応するＪＮＬデータ２３３を構成する各ＪＮＬデータ要素４５１が格納された領域のアドレスを示す。各世代に対応するＪＮＬデータ２３３が複数のＪＮＬデータ要素４５１（例えばＪＮＬデータ要素４５１Ａ及びＪＮＬデータ要素４５１Ｂ）を含む場合、データ格納アドレス４４４は、それらの複数のＪＮＬデータ要素４５１に対応する複数のアドレス（例えばデータ格納アドレス４４４Ａ及びデータ格納アドレス４４４Ｂ）を含む。
【００８６】
図４Ｄは、本発明の第１の実施形態のＪＮＬ管理テーブル２２４の説明図である。
【００８７】
ＪＮＬ管理テーブル２２４は、Ｐ−ＶＯＬ毎に用意され、Ｐ−ＶＯＬに関するバックアップデータを管理するためのテーブルである。ＪＮＬ管理テーブル２２４には、例えば、Ｐ−ＶＯＬ＃４６１、スナップショット取得時刻４６２及びバックアップ取得時刻４６３が記録される。
【００８８】
Ｐ−ＶＯＬ＃４６１は、Ｐ−ＶＯＬの番号（識別子）である。Ｐ−ＶＯＬ＃４６１として、デバイス＃４０１と同様の識別子が用いられてもよい。
【００８９】
スナップショット取得時刻４６２は、Ｐ−ＶＯＬとペアを構成するＳ−ＶＯＬ（Ｓｅｃｏｎｄａｒｙ  Ｖｏｌｕｍｅ）を作成した時刻を示す。例えば、マーカを受信した第１のストレージシステム１２５は、その要求に従って作成されるスナップショットの世代に対応するＳ−ＶＯＬを作成し、その世代に対応するＪＮＬデータ２３３を、作成されたＳ−ＶＯＬに格納してもよい。
【００９０】
バックアップ取得時刻４６３は、バックアップが取得された時刻、言い換えると、スナップショット取得時刻４６２が示すスナップショットの世代が確定される原因となったマーカを受信した時刻を示す。
【００９１】
さらに、ＪＮＬ管理テーブル２２４には、図４Ｄには記載されていないが、取得世代数、バックアップ期間及びマージ世代数などが記録されてもよい。取得世代数は、Ｐ−ＶＯＬについて取得されたバックアップの世代の数を示す。マージ世代数は、何世代分の世代間差分データが蓄積されたときにマージ処理を実行するかを示す、世代数の閾値である。
【００９２】
図４Ｅは、本発明の第１の実施形態のＰ−ＶＯＬ／ＪＮＬペア管理テーブル２２５の説明図である。
【００９３】
Ｐ−ＶＯＬ／ＪＮＬペア管理テーブル２２５は、各Ｐ−ＶＯＬと、そのＰ−ＶＯＬに対応するジャーナルとの組（ペア）を管理するための情報を含む。具体的には、Ｐ−ＶＯＬ／ＪＮＬペア管理テーブル２２５には、Ｐ−ＶＯＬ＃４７１、Ｐ−ＶＯＬ格納装置番号４７２、複製Ｐ−ＶＯＬ＃４７３、複製Ｐ−ＶＯＬ作成時刻４７４、ＪＮＬ−ＶＯＬ＃４７５及び複製Ｐ−ＶＯＬ／ＪＮＬペア番号４７６が記録される。
【００９４】
Ｐ−ＶＯＬ＃４７１は、Ｐ−ＶＯＬの番号（識別子）である。Ｐ−ＶＯＬ＃４７１として、デバイス＃４０１と同様の識別子が用いられてもよい。
【００９５】
Ｐ−ＶＯＬ格納装置番号４７２は、Ｐ−ＶＯＬを格納する（すなわちそのＰ−ＶＯＬをホスト計算機１０１に提供する）ストレージシステムの装置識別子である。
【００９６】
複製Ｐ−ＶＯＬ＃４７３は、Ｐ−ＶＯＬ＃４７１によって識別されるＰ−ＶＯＬの複製の識別子である。後述するように、任意のＰ−ＶＯＬの複製を作成し、その複製（以下、複製Ｐ−ＶＯＬとも記載する）を、元のＰ−ＶＯＬを格納するストレージシステムに外部接続された別のストレージシステムに格納することができる。複製Ｐ−ＶＯＬ＃４７３は、このように複製され、外部のストレージシステムに格納された複製Ｐ−ＶＯＬの識別子である。
【００９７】
複製Ｐ−ＶＯＬ作成時刻４７４は、複製Ｐ−ＶＯＬが作成された時刻（又は作成された期間）を示す。
【００９８】
ＪＮＬ−ＶＯＬ＃４７５は、複製Ｐ−ＶＯＬ＃４７３によって識別される複製Ｐ−ＶＯＬに対応するジャーナルデータが格納された論理ボリュームの識別子を示す。
【００９９】
複製Ｐ−ＶＯＬ／ＪＮＬペア番号は、複製Ｐ−ＶＯＬと、それに対応するジャーナルデータとのペアを識別する番号である。
【０１００】
図５は、本発明の第１の実施形態におけるカタログ管理情報テーブル３１１のフォーマットの説明図である。
【０１０１】
カタログ管理情報テーブル３１１は、各Ｐ−ＶＯＬの各世代のジャーナルデータがどの装置に格納されているかを示す情報である。具体的には、カタログ管理情報テーブル３１１には、Ｐ−ＶＯＬ＃５０１、Ｐ−ＶＯＬ格納装置番号５０２、世代番号５０３、ジャーナル格納外部装置番号５０４、外部世代番号５０５、複製Ｐ−ＶＯＬ＃５０６、外部ＪＮＬ−ＶＯＬ番号５０７及びバックアップ取得時刻５０８が記録される。
【０１０２】
Ｐ−ＶＯＬ＃５０１は、管理サーバ１１１の管理下にあるストレージシステムに格納された各Ｐ−ＶＯＬの番号（識別子）である。Ｐ−ＶＯＬ＃５０１として、デバイス＃４０１と同様の識別子が用いられてもよい。
【０１０３】
Ｐ−ＶＯＬ格納装置番号５０２は、各Ｐ−ＶＯＬを格納する（すなわちそのＰ−ＶＯＬをホスト計算機１０１に提供する）ストレージシステムの装置識別子である。
【０１０４】
世代番号５０３は、各Ｐ−ＶＯＬに対応して作成されたスナップショットの世代の番号である。各Ｐ−ＶＯＬに対応する複数の世代のスナップショットが作成された（言い換えると、一つのＰ−ＶＯＬの複数の時点におけるイメージを復元するためのジャーナルデータが記録された）場合、一つのＰ−ＶＯＬ＃５０１に対応する世代番号５０３に複数の値（すなわち作成された複数の世代の番号）が記録される。
【０１０５】
ジャーナル格納外部装置番号５０４は、作成された世代のジャーナルデータの複製を格納するストレージシステムの装置識別子である。後述するように、ジャーナルデータの複製が、Ｐ−ＶＯＬを格納するストレージシステムに外部接続されたストレージシステム（すなわち外部ストレージシステム）に格納され、もとのジャーナルデータが削除されてもよい。この場合、ジャーナルデータの複製を格納するストレージシステムの識別子がジャーナル格納外部装置番号５０４として記録される。
【０１０６】
外部世代番号５０５は、上記のようにジャーナルデータの複製が外部ストレージシステムに格納された場合、外部ストレージシステムがそのジャーナルデータの複製を管理するために付与した世代番号である。
【０１０７】
複製Ｐ−ＶＯＬ＃５０６は、Ｐ−ＶＯＬの複製の識別子である。上記のように、ジャーナルデータの複製が外部ストレージシステムに格納される場合、さらに、Ｐ−ＶＯＬの複製が作成され、それが外部ストレージシステムに格納されてもよい。複製Ｐ−ＶＯＬ＃５０６は、そのようにして作成された複製の識別子である。
【０１０８】
外部ＪＮＬ−ＶＯＬ番号５０７は、ジャーナルデータの複製を格納する外部ストレージシステム内の論理ボリュームの識別子である。
【０１０９】
バックアップ取得時刻５０８は、ジャーナルデータの複製が外部ストレージシステムに格納された時刻を示す。
【０１１０】
ここで、カタログ管理情報テーブル３１１の具体例を説明する。
【０１１１】
例えば、第１のストレージシステム１２５の装置識別子が「ＳＴ１」、第２のストレージシステム１６１の装置識別子が「ＳＴ２」、第１のストレージシステム１２５に格納されたＰ−ＶＯＬ（以下、図５の説明において「当該Ｐ−ＶＯＬ」と記載する。ただし、このＰ−ＶＯＬは通常ボリュームである）の識別子が「Ｐ−ＶＯＬ０１」である場合について説明する。この場合、Ｐ−ＶＯＬ＃５０１として「Ｐ−ＶＯＬ０１」、それに対応するＰ−ＶＯＬ格納装置番号５０２として「ＳＴ１」が記録される。
【０１１２】
この例において、当該Ｐ−ＶＯＬのスナップショットが過去に２回作成された場合、１回目の（すなわち古い）スナップショットの世代番号「１」、及び、２回目の（すなわち新しい）スナップショットの世代番号「２」が、「Ｐ−ＶＯＬ０１」に対応する世代番号５０３として記録される。
【０１１３】
各世代のスナップショットのジャーナルデータ（少なくとも、それらの世代のＪＮＬデータ２３３）は、通常、第１のストレージシステム１２５（すなわち、当該Ｐ−ＶＯＬを格納するストレージシステム）内のいずれかの論理ボリュームに格納される。しかし、それらのうち少なくとも一つの複製が第２のストレージシステム１６１内の論理ボリュームに格納されてもよい。複製が第２のストレージシステム１６１内の論理ボリュームに格納されたあと、その複製元のジャーナルデータは、第１のストレージシステム１２５から削除されてもよい。
【０１１４】
例えば、２回目のスナップショットの世代のジャーナルデータが第１のストレージシステム１２５から削除され、その複製が第２のストレージシステム１６１の識別子「ＪＮＬ−ＶＯＬ１１」によって識別される論理ボリュームに格納された場合、世代番号５０３の値「２」に対応するジャーナル格納外部装置番号５０４及び外部ＪＮＬ−ＶＯＬ番号５０７として、それぞれ、「ＳＴ２」及び「ＪＮＬ−ＶＯＬ１１」が記録される。さらに、そのジャーナルデータが、第２のストレージシステム１６１内で第１世代として管理される場合、世代番号５０３の値「２」に対応する外部世代番号５０５として「１」が記録される。
【０１１５】
この場合、第２世代のジャーナルデータの複製が第２のストレージシステム１６１に格納された時刻が、世代番号５０３の値「２」に対応するバックアップ取得時刻５０８として記録される。
【０１１６】
さらに、当該Ｐ−ＶＯＬの複製が作成され、第２のストレージシステム１６１に格納されてもよい。例えば、当該Ｐ−ＶＯＬの複製が第２のストレージシステム１６１の識別子「Ｐ−ＶＯＬ１１」によって識別される論理ボリュームとして格納される場合、「Ｐ−ＶＯＬ０１」に対応する複製Ｐ−ＶＯＬ＃５０６として「Ｐ−ＶＯＬ１１」が記録される。
【０１１７】
なお、図２の例では、管理サーバ１１１のメモリ１１６のみにカタログ管理情報テーブル３１１が格納されているが、カタログ管理情報テーブル３１１と同等の情報がホスト計算機１０１のメモリ１０６に格納されてもよいし、第１のストレージシステム１２５の制御メモリ１４５内に格納されてもよいし、さらに第２のストレージシステム１６１の制御メモリ１７１に格納されてもよい。
【０１１８】
ここで、ジャーナルデータを格納する処理の概要を説明する。
【０１１９】
図１９は、本発明の第１の実施形態においてＪＮＬデータ要素を格納する処理の概要を示す説明図である。
【０１２０】
図１９の例において、第１のストレージシステム１２５に、Ｐ−ＶＯＬ１８７Ｐが格納されている。Ｐ−ＶＯＬ１８７Ｐは、プライマリの論理ボリューム（すなわちオンラインの論理ボリューム）である。ホスト計算機１０１からライトデータが書き込まれることで、Ｐ−ＶＯＬ１８７Ｐは更新される。
【０１２１】
ＪＮＬ関連エリア１８８は、第１のストレージシステム１２５のいずれかの論理ボリュームに確保された記憶領域であり、ＪＮＬ制御情報格納エリア２５０１及びＪＮＬデータ格納エリア２５０３を含む。ＪＮＬ制御情報格納エリア２５０１には、図１９に示すように、確定した各世代に対応する差分ＢＭ４４３（ＢＭは“ビットマップ”の略語である）を含むＪＮＬ制御情報テーブル２３２が格納される。ＪＮＬデータ格納エリア２５０３には、確定した各世代に対応するＪＮＬデータ２３３が格納される。
【０１２２】
図１９の例では、世代（Ｎ−２）に対応する差分ＢＭ４４３Ａ及びＪＮＬデータ２３３Ａ、世代（Ｎ−１）に対応する差分ＢＭ４４３Ｂ及びＪＮＬデータ２３３Ｂ、世代（Ｎ）に対応する差分ＢＭ４４３Ｃ及びＪＮＬデータ２３３Ｃ、及び、世代（Ｎ＋１）に対応する差分ＢＭ４４３Ｄ及びＪＮＬデータ２３３Ｄが格納される。図１９の説明において、差分ＢＭ４４３Ａ〜４４３Ｄに共通する説明をする場合、これらを総称して差分ＢＭ４４３とも記載する。ＪＮＬデータ２３３Ａ〜２３３Ｄに共通する説明をする場合、これらを総称してＪＮＬデータ２３３とも記載する。
【０１２３】
なお、図１９にはジャーナルデータの代表的な要素として差分ＢＭ４４３及びＪＮＬデータ２３３を図示したが、実際には、図４Ｃに示すように、種々の必要な情報が格納される。
【０１２４】
ここで、「世代」とは、Ｐ−ＶＯＬ１８７Ｐについての或る時点のことである。例えば、世代（Ｎ）とは、世代（Ｎ−１）の時点を過ぎた後、Ｐ−ＶＯＬ１８７Ｐについて所定の世代確定イベントが発生した時（本実施形態では、ホスト計算機１０１から後述のマーカを受領した時）のことである。
【０１２５】
なお、図１９の例では、確定している最新の世代が世代（Ｎ）であるため、未確定世代は、世代（Ｎ＋１）である。次回にマーカを受領すると、世代（Ｎ＋１）が確定する。これによって、世代（Ｎ＋１）が、確定している最新の世代となり、未確定世代は世代（Ｎ＋２）である。
【０１２６】
上記のように世代が更新された場合、ＪＮＬ情報テーブル２３１に、新たに確定した世代に関するエントリが追加される。
【０１２７】
図４Ｃにおいて説明したように、ＪＮＬデータ２３３は、一つ以上のＪＮＬデータ要素４５１の集合である。ＪＮＬデータ要素４５１は、Ｐ−ＶＯＬ１８７Ｐにデータ要素が書き込まれることに起因してＰ−ＶＯＬ１８７Ｐから退避されたデータ要素である。
【０１２８】
具体的には、例えば、未確定世代が世代（Ｎ）である場合、ストレージシステム１２５がホスト計算機１０１からマーカを受信した時に、世代（Ｎ）が確定し、未確定世代が世代（Ｎ＋１）となる。その場合、ＪＮＬデータ格納エリア２５０３に蓄積されているＪＮＬデータ２３３Ｂ（つまり、世代（Ｎ）のＰ−ＶＯＬ１８７Ｐと世代（Ｎ−１）のＰ−ＶＯＬ１８７Ｐとの差分に相当するデータ）が、一つ前の世代（この例では世代（Ｎ−１））のＰ−ＶＯＬを復元するためのＪＮＬデータ要素４５１としてＪＮＬデータ格納エリア２５０３に退避される。
【０１２９】
これによって、ＪＮＬデータ格納エリア２５０３には、世代（Ｎ）に対応したＪＮＬデータ２３３（すなわち、世代（Ｎ）と世代（Ｎ−１）との差分に相当するデータ）が蓄積される。
【０１３０】
差分ＢＭ４４３は、論理ボリュームの世代間の差分を表すビットマップである。具体的には、例えば、図１９の例において、世代（Ｎ）に対応した差分ＢＭ４４３は、世代（Ｎ）のＰ−ＶＯＬ１８７Ｐと世代（Ｎ−１）のＰ−ＶＯＬ１８７Ｐとの差分を表すビットマップである。
【０１３１】
より具体的には、Ｐ−ＶＯＬ１８７Ｐ内の或るブロックに、世代（Ｎ−１）より後の或る時点で初めてライトデータ要素が書き込まれた場合、その或るブロックに対応したビット（世代（Ｎ）に対応した差分ＢＭ４４３内のビット）が、オンにされ（すなわち、ライト発生を表す値（例えば“１”）に更新され）、そのライトデータ要素に対応するＪＮＬデータ要素４５１が、ＪＮＬデータ格納エリア２５０３に格納される。なお、差分ＢＭ４４３を構成する各ビットは、Ｐ−ＶＯＬ１８７Ｐの各ブロックに対応している。
【０１３２】
図１９の例では、月曜日に書き込まれたライトデータ要素に対応する差分ＢＭ４４３及びそれに対応するＪＮＬデータ２３３が「月曜日のジャーナル」、火曜日に書き込まれたライトデータ要素に対応する差分ＢＭ４４３及びそれに対応するＪＮＬデータ２３３が「火曜日のジャーナル」として扱われる。
【０１３３】
次に、ＪＮＬデータを取得する方法について説明する。
【０１３４】
ＪＮＬを取得する方法は二つ存在する。図２０に示す方法によれば、ライトデータ要素はＰ−ＶＯＬへ格納され、その格納によって更新される前のＰ−ＶＯＬのデータがＪＮＬデータ２３３として格納される。このようにして作成されたジャーナルは、Ｂｅｆｏｒｅジャーナルとも呼ばれる。一方、図２２に示す方法によれば、ライトデータ要素はＰ−ＶＯＬへ格納され、マーカ受信時に、更新データがＪＮＬデータ２３３として格納される。このようにして作成されたジャーナルは、Ａｆｔｅｒジャーナルとも呼ばれる。
【０１３５】
図２０は、本発明の第１の実施形態において、Ｂｅｆｏｒｅジャーナルが作成される場合に、Ｐ−ＶＯＬにライトデータ要素を書き込むライト処理の説明図である。
【０１３６】
図２０の説明において、ライトコマンドによってライト先として指定されているＰ−ＶＯＬを、「対象Ｐ−ＶＯＬ」と記載する。
【０１３７】
Ｒ／Ｗプログラム２０１は、ホスト計算機１０１から（例えばＰ−ＶＯＬ１８７Ｐをライト先として指定した）ライトコマンドを受信すると（Ｓ１６００１）、ライトデータ要素を格納するためのスロットを確保する（Ｓ１６００２）。「スロット」とは、キャッシュメモリ１４７の単位管理領域である。
【０１３８】
さらに、Ｒ／Ｗプログラム２０１は、差分ＢＭ４４３内の、ライトコマンドで指定されているライト先ブロックに対応したビットを参照する（Ｓ１６００３）。
【０１３９】
Ｓ１６００３の結果、参照先がオンビットである場合、ライトコマンドで指定されているライト先ブロックに格納されたデータは、前回のマーカ受信時から現在までの間に少なくとも１回更新されている。この場合、Ｒ／Ｗプログラム２０１は、Ｓ１６００８以降の処理を実行する。すなわち、ライト先ブロックに格納されているデータ要素を退避させずに、Ｓ１６００７へ進む。
【０１４０】
一方、Ｓ１６００３の結果、参照先がオフビットである場合、ライトコマンドで指定されているライト先ブロックに格納されたデータは、前回のマーカ受信時から現在までの間に一度も更新されていない。言い換えると、ライトコマンドで指定されているライト先ブロックに格納されたデータは、前回のマーカ受信時にそのブロックに格納されていたデータである。前回のマーカ受信時の対象Ｐ−ＶＯＬ１８７Ｐを復元するためには、そのデータを保存しておく必要がある。このため、Ｒ／Ｗプログラム２０１は、ライト先ブロックに記憶されているデータ要素を、ＪＮＬデータ格納エリア２５０３にＪＮＬデータ要素４５１として格納（すなわち退避）する（Ｓ１６００６）。
【０１４１】
そして、Ｒ／Ｗプログラム２０１は、Ｓ１６００６の格納が反映されるように、ＪＮＬ制御情報テーブル２３２を更新する（Ｓ１６００７）。具体的には、Ｒ／Ｗプログラム２０１は、ライト先ブロックに対応する差分ＢＭ４４３のビットをオンにし、そのライト先ブロックに対応するデータ格納アドレスとして、Ｓ１６００６においてＪＮＬデータ要素４５１が格納された領域のアドレスを追加する。
【０１４２】
その後、Ｒ／Ｗプログラム２０１が、フロントエンドインタフェース１２７内のメモリ１３１に記憶されているライトデータ要素を、Ｓ１６００２で確保されたスロットに書き込む（Ｓ１６００８）。
【０１４３】
Ｒ／Ｗプログラム２０１は、そのスロットに書き込まれているライトデータ要素を、Ｐ−ＶＯＬ内のライト先ブロックに書き込む（Ｓ１６００９）。
【０１４４】
図２１は、本発明の第１の実施形態において、Ｂｅｆｏｒｅジャーナルが作成される場合の、作成されたジャーナルデータの例の説明図である。
【０１４５】
具体的には、図２１は、Ｐ−ＶＯＬ１８７Ｐに格納されたデータの推移を例示するものである。
【０１４６】
図２１に示す最も古い時点において、Ｐ−ＶＯＬ１８７Ｐは、データ２７０１Ａ、データ２７０１Ｂ及びデータ２７０１Ｃを格納している（世代Ｎ）。説明を簡単にするため、データ２７０１Ａ、データ２７０１Ｂ及びデータ２７０１Ｃは、それぞれ、Ｐ−ＶＯＬ１８７Ｐの三つのブロックの各々に格納されるものと仮定する。
【０１４７】
その後、第１のストレージシステム１２５は、マーカ２７０３Ａをホスト計算機１０１から受信する。この時点で、世代Ｎが確定する。
【０１４８】
その後、ホスト計算機１０１からのライトコマンドに従って、データ２７０１Ａがデータ２７０１Ｄに更新される。この場合、第１のストレージシステム１２５は、データ２７０１Ａの複製をＪＮＬデータ要素２７０２ＡとしてＪＮＬデータ格納エリア２５０３に格納する。なお、ＪＮＬデータ要素２７０２Ａは、図４Ｃにおいて説明したＪＮＬデータ要素４５１（ＪＮＬデータ要素４５１Ａ、４５１Ｂ等）のいずれかに相当する。後述するＪＮＬデータ要素２７０２Ｂ等についても同様である。
【０１４９】
同様に、データ２７０１Ｂがデータ２７０１Ｆに更新されると、データ２７０１Ｂの複製がＪＮＬデータ要素２７０２ＢとしてＪＮＬデータ格納エリア２５０３に格納される。
【０１５０】
さらに、図２１では省略されているが、データ２７０１Ａが格納されていたブロック及びデータ２７０１Ｂが格納されていたブロックの各々に対応する差分ＢＭ４４３のビットがＯＮに更新される。
【０１５１】
その後、データ２７０１Ｄはさらにデータ２７０１Ｅに更新される。しかし、この場合、既にデータ２７０１Ａ（すなわち、マーカ２７０３Ａ受信時点に格納されていたデータ）の複製がＪＮＬデータ要素２７０２Ａとして格納されているため、データ２７０１Ｄの複製は格納されない。
【０１５２】
その後、第１のストレージシステム１２５は、マーカ２７０３Ｂをホスト計算機１０１から受信する。この時点で、世代Ｎ＋１が確定する。この時点の差分ＢＭ４４３、ＪＮＬデータ要素２７０２Ａ及び２７０２Ｂは、世代ＮのＰ−ＶＯＬ１８７Ｐを復元するために必要であるため、世代Ｎが破棄又はマージされるまで、変更されることなく保持される。
【０１５３】
その後、データ２７０１Ｅがデータ２７０１Ｇに更新され、データ２７０１Ｃがデータ２７０１Ｈに更新される。この場合、データ２７０１Ｅの複製がＪＮＬデータ要素２７０２Ｅとして、データ２７０１Ｃの複製がＪＮＬデータ要素２７０２Ｃとして、ＪＮＬデータ格納エリア２５０３内の新たに用意された領域に格納される。
【０１５４】
さらに、新たに差分ＢＭ４４３が用意され、データ２７０１Ｅが格納されていたブロック及びデータ２７０１Ｃが格納されていたブロックの各々に対応するビットがＯＮに更新される。
【０１５５】
現在時刻におけるＰ−ＶＯＬ１８７Ｐは、上記の更新の結果、データ２７０１Ｇ、データ２７０１Ｆ及びデータ２７０１Ｈを格納していると仮定する。現在時刻のＰ−ＶＯＬ１８７Ｐは、世代Ｎ＋２に相当するが、次回のマーカ（図示省略）を受信するまで確定しない。
【０１５６】
現在時刻のＰ−ＶＯＬ１８７Ｐのデータ２７０１Ｇ及びデータ２７０１Ｈを、それぞれ、ＪＮＬデータ要素２７０２Ｅ及びＪＮＬデータ要素２７０２Ｃによって置き換えることによって、確定した世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐを復元することができる。さらに、その復元された世代Ｎ＋１のＰ−ＶＯＬ１８７ＰのＪＮＬデータ要素２７０２Ｅ及びデータ２７０１Ｆを、それぞれ、ＪＮＬデータ要素２７０２Ａ及びＪＮＬデータ要素２７０２Ｂによって置き換えることによって、世代ＮのＰ−ＶＯＬ１８７Ｐを復元することができる。
【０１５７】
この置き換えは、データを上書きすることによって物理的に実行されてもよいが、アクセス先を変更することによって仮想的に実行されてもよい。
【０１５８】
例えば、上記のようにＰ−ＶＯＬ１８７Ｐのデータ２７０１ＧがＪＮＬデータ要素２７０２Ｅによって置き換えられる場合を例として説明すると、Ｐ−ＶＯＬ１８７Ｐのデータ２７０１ＧにＪＮＬデータ要素２７０２Ｅが上書きされてもよい。あるいは、Ｒ／Ｗプログラム２０１が、データ２７０１Ｇが格納されたブロックへのリード要求を受信すると、要求されたブロックからデータ２７０１Ｇを読み出す代わりに、ＪＮＬデータ要素２７０２Ｅが格納された記憶領域からＪＮＬデータ要素２７０２Ｅを読み出し、それをリード要求に対する応答として送信してもよい。
【０１５９】
なお、本実施形態の説明において、「Ｐ−ＶＯＬにジャーナルデータを反映させる」のような記載がある場合、この「反映」は、上記のような置き換えを意味する。
【０１６０】
図２２は、本発明の第１の実施形態において、Ａｆｔｅｒジャーナルが作成される場合に、Ｐ−ＶＯＬにライトデータ要素を書き込むライト処理の説明図である。
【０１６１】
図２２の説明において、ライトコマンドで指定されているＰ−ＶＯＬを、「対象Ｐ−ＶＯＬ」と記載する。また、以下の説明では、説明が冗長になるのを防ぐために、世代Ｋに対応する対象のことを、その対象の名称の後に（Ｋ）を付けて記載することがある。具体的には、例えば、世代（ｊ）に対応したＪＮＬ制御情報を「ＪＮＬ制御情報（ｊ）」と記載することがある。
【０１６２】
フロントエンドインタフェース１２７が、ホスト計算機１０１から、ライトコマンド及びライトデータ要素を受信し、メモリ１３１でライトデータ要素を記憶する（Ｓ８０１０）。ライトコマンドは、制御プロセッサ１４３に転送される。
【０１６３】
Ｒ／Ｗプログラム２０１が、ライトコマンドの受信に応答して、キャッシュメモリ１４７からスロットを確保する（Ｓ８０２０）。
【０１６４】
Ｒ／Ｗプログラム２０１が、ライトコマンド完了の報告を、ライトコマンドの送信元のホスト計算機１０１に送信する（Ｓ８０３０）。それに応答して、ライトデータ要素がホスト計算機１０１から送信され、フロントエンドインタフェース１２７内のメモリ１３１に記憶される。
【０１６５】
Ｒ／Ｗプログラム２０１が、フロントエンドインタフェース１２７内のメモリ１３１に記憶されたライトデータ要素を、確保されたスロットに書き込む（Ｓ８０４０）。
【０１６６】
Ｒ／Ｗプログラム２０１が、スロット内のライトデータ要素を、対象Ｐ−ＶＯＬ１８７Ｐ内のライト先ブロックに書き込む（Ｓ８０５０）。さらに、Ｒ／Ｗプログラム２０１が、Ｐ−ＶＯＬ１８７Ｐの差分ＢＭ４４３のビットのうち、更新のあったブロックに対応するビットをＯＮする（Ｓ８０６０）。
【０１６７】
その後、任意のタイミングで、ホスト計算機１０１はＰ−ＶＯＬ１８７Ｐへのマーカを送信する。ストレージシステム１２５は、マーカを受信したら（Ｓ８０７０）、ジャーナルを取得する（Ｓ８０８０）。すなわち、ストレージシステム１２５は、対象Ｐ−ＶＯＬ１８７Ｐに対応する差分ＢＭ４４３のビットのうち、ＯＮになっているビットに対応するブロックのデータを、ＪＮＬデータ格納エリア２５０３内にＪＮＬデータ２３３としてコピーする。ストレージシステム１２５は、コピー先の領域のアドレスをデータ格納アドレス４４４として管理する。
【０１６８】
上記の処理によってジャーナルの作成が完了すると、ストレージシステム１２５はホスト計算機１０１へ完了報告を送信する（Ｓ８０９０）。
【０１６９】
以降の説明は、特に明記しない限り、Ｂｅｆｏｒｅジャーナルが作成される場合を例として採用するが、Ａｆｔｅｒジャーナルが作成される場合にも同様の処理によって本発明を適用することができる。
【０１７０】
次に、ジャーナルデータを外部ストレージシステムに移動する処理について説明する。ジャーナルデータの外部ストレージシステムへの移動とは、第１のストレージシステム１２５に格納されたジャーナルデータ（少なくともＪＮＬ制御情報テーブル２３２及びＪＮＬデータ２３３）の複製を第２のストレージシステム１６１に格納し、元のジャーナルデータを第１のストレージシステム１２５から削除することを意味する。
【０１７１】
図６は、本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムに移動する処理の概要の説明図である。
【０１７２】
図６の例では、管理サーバ１１１は、所定の条件が満たされる場合に、ホスト計算機のストレージシステムエージェントプログラム６０２にジャーナルデータ移動指示を送信する。
【０１７３】
ホスト計算機１０１は、ジャーナルデータ移動指示を第１のストレージシステム１２５に送信する。
【０１７４】
第１のストレージシステム１２５は、受信した指示によって指定されたジャーナルデータ（例えば、最も古い世代のジャーナルデータ）の複製を第２のストレージシステム１６１に送信する。
【０１７５】
第２のストレージシステム１６１は、受信したジャーナルデータの複製を論理ボリュームに格納する。
【０１７６】
第１のストレージシステム１２５は、ジャーナルデータの複製が第２のストレージシステム１６１に格納されると、指定されたジャーナルデータを第１のストレージシステム１２５のＪＮＬ関連エリア１８８から削除する。この削除によって空いた領域は、新たな世代のジャーナルデータを格納するために使用することができる。
【０１７７】
図７は、本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムに移動する処理を示すフローチャートである。
【０１７８】
図７は、図６に示した処理の詳細を示すものである。
【０１７９】
最初に、管理サーバ１１１の移動可否判定プログラム３０１は、ジャーナルデータを外部ストレージシステムに移動する必要があるか否かを判定する（Ｓ３０１０）。具体的には、移動可否判定プログラム３０１は、所定の条件が満たされるか否かを判定し、満たされると判定された場合に、ジャーナルデータを外部ストレージシステムに移動する必要があると判定してもよい。
【０１８０】
例えば、移動可否判定プログラム３０１は、第１のストレージシステム１２５に格納されたジャーナルデータ量を監視し、そのジャーナルデータ量が所定の閾値を超えた場合、所定の条件が満たされたと判定してもよい。
【０１８１】
第１のストレージシステム１２５に格納されたジャーナルデータ量は、例えば、全世代のＪＮＬ制御情報テーブル２３２に記録された長さ４４２の値を合計することによって算出される。移動可否判定プログラム３０１は、長さ４４２の値又はその合計値を第１のストレージシステム１２５から取得することによってジャーナルデータ量を監視することができる。
【０１８２】
このようにして取得されたジャーナルデータ量が所定の閾値を超えた場合、移動可否判定プログラム３０１は、所定の条件が満たされた（すなわち、ジャーナルデータを外部ストレージシステムに移動する必要がある）と判定してもよい。
【０１８３】
あるいは、移動可否判定プログラム３０１は、第１のストレージシステム１２５に格納された全データ量が所定の閾値を超えた場合に、所定の条件が満たされたと判定してもよい。
【０１８４】
あるいは、移動可否判定プログラム３０１は、第１のストレージシステム１２５に格納されたジャーナルデータのアクセス頻度を監視し、あるジャーナルデータのアクセス頻度が所定の閾値を下回った場合、所定の条件が満たされた（すなわち、そのジャーナルデータを外部ストレージシステムに移動する必要がある）と判定してもよい。なお、アクセス頻度は、例えば、後述する方法によって算出されてもよい（Ｓ３０２０参照）。
【０１８５】
あるいは、移動可否判定プログラム３０１は、ジャーナルデータを移動する指示をユーザから受けた場合に、所定の条件が満たされたと判定してもよい。
【０１８６】
Ｓ３０１０において、所定の条件が満たされると判定された場合、管理サーバ１１１の移動対象決定プログラム３０２は、移動すべきジャーナルデータを選択する（Ｓ３０２０）。具体的には、移動対象決定プログラム３０２は、移動すべきＪＮＬデータ２３３の世代又は作成時刻を選択する。
【０１８７】
移動対象決定プログラム３０２は、任意の世代のジャーナルデータを外部ストレージシステムに移動することができる。しかし、外部ストレージシステムに移動されたジャーナルデータを用いて所望の世代のＰ−ＶＯＬを復元するためには、ジャーナルデータを外部ストレージシステムから第１のストレージシステム１２５にコピーするための時間を要する。このようなコピーのための時間を少なくするためには、アクセス頻度の低いジャーナルデータ（言い換えると、復元される頻度が低い世代に関するジャーナルデータ）を外部ストレージシステムに移動することが望ましい。
【０１８８】
一般に、古い世代を復元する必要が生じる可能性は低いと予想される。このため、最も古い世代のジャーナルデータがＳ３０２０において選択されてもよい。
【０１８９】
あるいは、移動対象決定プログラム３０２は、各世代のアクセス頻度を取得し、最もアクセス頻度の低い世代のジャーナルデータを選択してもよい。この場合、第１のストレージシステム１２５は、各世代のアクセス頻度を示す情報を管理サーバ１１１に提供する必要がある。例えば、ＪＮＬ情報テーブル２３１に、さらに、世代ごとのアクセス回数（すなわちその世代が復元された回数）が記録され、そのアクセス回数（図示省略）と作成時刻４３４とに基づいてアクセス頻度が計算されてもよい。
【０１９０】
あるいは、移動対象決定プログラム３０２は、Ｓ３０２０において、ユーザによって指定されたジャーナルデータを選択してもよい。ユーザは、例えば、任意の世代を指定する情報を、管理サーバ１１１の入力装置１１２を用いて入力してもよい。この場合、移動対象決定プログラム３０２は、ユーザによって指定された世代のジャーナルデータを選択する。
【０１９１】
さらに、移動対象決定プログラム３０２は、Ｓ３０２０において、選択されたジャーナルデータの移動先も選択する。具体的には、例えば、移動対象決定プログラム３０２は、第２のストレージシステム１６１の論理ボリュームのうち、選択されたジャーナルデータの量と同等以上の空き容量を持つものを、移動先として選択してもよい。
【０１９２】
次に、管理サーバ１１１は、ジャーナルデータ移動指示をホスト計算機１０１に送信する（Ｓ３０３０）。このジャーナルデータ移動指示は、移動すべきジャーナルデータ及び移動先（すなわち、Ｓ３０２０において選択されたジャーナルデータ及び移動先）の指定を含む。
【０１９３】
ホスト計算機１０１は、管理サーバ１１１から受信したジャーナルデータ移動指示を第１のストレージシステム１２５に送信する（Ｓ３０４０）。
【０１９４】
第１のストレージシステム１２５のＪＮＬバックアッププログラムは、受信したジャーナルデータ移動指示に従って、指定されたジャーナルデータを指定された移動先に移動する（Ｓ３０５０）。具体的には、例えば移動すべきジャーナルデータの世代が指定されている場合、ＪＮＬバックアッププログラムは、指定された世代に対応するジャーナルデータ（少なくとも、差分ＢＭ４４３及びＪＮＬデータ２３３）をＪＮＬ関連エリア１８８から読み出し、読み出したジャーナルデータを指定された移動先に格納する指示を第２のストレージシステム１６１に送信する。
【０１９５】
第２のストレージシステム１６１（すなわち外部ストレージシステム）は、送信された指示に従って、送信されたジャーナルデータを、指定された移動先に格納する（Ｓ３０６０）。この格納が終了すると、第２のストレージシステム１６１は、格納が終了したことの報告を第１のストレージシステム１２５に送信する。
【０１９６】
第１のストレージシステム１２５は、上記の報告に基づいて、送信したジャーナルデータが第２のストレージシステム１６１に格納されたことを確認すると、ジャーナルデータの移動が終了したことの報告を管理サーバ１１１に送信する（Ｓ３０７０）。
【０１９７】
さらに、第１のストレージシステム１２５は、指定されたジャーナルデータをＪＮＬ関連エリア１８８から削除する。第１のストレージシステム１２５は、この削除を、Ｓ３０５０において実行してもよいし、送信したジャーナルデータが第２のストレージシステム１６１に格納されたことを確認した後（すなわち、Ｓ３０７０の報告を受信した後）に実行してもよい。
【０１９８】
さらに、第１のストレージシステム１２５のＪＮＬ管理プログラム２０５は、ＪＮＬ管理テーブル２２４を更新する。具体的には、移動したジャーナルデータに対応するＰ−ＶＯＬの識別子がＰ−ＶＯＬ＃４６１として記録される。移動したジャーナルデータに対応する作成時刻４３４の値がスナップショット取得時刻４６２として記録される。Ｓ３０６０の格納が実行された時刻がバックアップ取得時刻４６３として記録される。
【０１９９】
管理サーバ１１１のカタログ管理プログラム３０３は、Ｓ３０７０の報告を受信すると、Ｓ３０５０からＳ３０６０において実行されたジャーナルデータの移動を反映させるようにカタログ管理情報テーブル３１１を更新する（Ｓ３０８０）。
【０２００】
具体的には、Ｓ３０５０において移動したジャーナルデータに対応するジャーナル格納外部装置番号５０４、外部世代番号５０５、外部ＪＮＬ−ＶＯＬ番号５０７及びバックアップ取得時刻５０８が、次のように更新される。すなわち、ジャーナル格納外部装置番号５０４として、第２のストレージシステム１６１の識別子が記録される。外部世代番号５０５として、第２のストレージシステム１６１が移動後のジャーナルデータに付与した世代番号が記録される。外部ＪＮＬ−ＶＯＬ番号５０７として、ジャーナルデータの移動先の論理ボリュームの識別子が記録される。バックアップ取得時刻５０８として、Ｓ３０６０の格納が実行された時刻が記録される。
【０２０１】
以上で、ジャーナルデータを外部ストレージシステムに移動する処理が終了する。
【０２０２】
このように、ジャーナルデータを外部ストレージシステムに移動することによって、第１のストレージシステム１２５の空き容量を確保することができる。これによって、維持及び管理するバックアップデータの量及び世代数を拡大することができる。
【０２０３】
図８は、本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムに移動する処理の別の例を示すフローチャートである。
【０２０４】
図８は、図６及び図７に示す処理の変形例である。図６及び図７では、管理サーバ１１１がジャーナルデータを移動するか否かを判定し、移動すべきジャーナルデータ及び移動先を選択した。一方、図８では、第１のストレージシステム１２５が、ジャーナルデータをするか否かを判定し、移動すべきジャーナルデータ及び移動先を選択する。以下、図８の処理について説明する。
【０２０５】
最初に、第１のストレージシステム１２５の移動可否判定プログラム２０３は、ジャーナルデータを外部ストレージシステムに移動する必要があるか否かを判定する（Ｓ４０１０）。この判定は、図７のＳ３０１０と同様に実行されてもよい。
【０２０６】
次に、第１のストレージシステム１２５の移動対象決定プログラム２０４は、移動すべきジャーナルデータを選択する（Ｓ４０２０）。この選択は、図７のＳ３０２０と同様に実行されてもよい。
【０２０７】
次に、第１のストレージシステム１２５のＪＮＬバックアッププログラムは、選択されたジャーナルデータを選択された移動先に移動する（Ｓ４０３０）。この移動は、図７のＳ３０５０と同様に実行されてもよい。
【０２０８】
第２のストレージシステム１６１は、第１のストレージシステム１２５から送信された指示に従って、送信されたジャーナルデータを、指定された移動先に格納する（Ｓ４０４０）。この格納が終了すると、第２のストレージシステム１６１は、格納が終了したことの報告を第１のストレージシステム１２５に送信する。
【０２０９】
第１のストレージシステム１２５のＪＮＬ管理プログラム２０５は、上記の報告を受信すると、ＪＮＬ管理テーブル２２４を更新する（Ｓ４０５０）。具体的には、移動したジャーナルデータに対応するＰ−ＶＯＬの識別子がＰ−ＶＯＬ＃４６１として記録される。移動したジャーナルデータに対応する作成時刻４３４の値がスナップショット取得時刻４６２として記録される。Ｓ４０４０の格納が実行された時刻がバックアップ取得時刻４６３として記録される。
【０２１０】
さらに、第１のストレージシステム１２５は、例えば、送信したジャーナルデータが第２のストレージシステム１６１に格納されたことを確認した後、指定されたジャーナルデータをＪＮＬ関連エリア１８８から削除する。
【０２１１】
次に、第１のストレージシステム１２５は、ジャーナルデータの移動が終了したことの報告を管理サーバ１１１に送信する（Ｓ４０６０）。
【０２１２】
管理サーバ１１１のカタログ管理プログラム３０３は、Ｓ４０６０の報告を受信すると、Ｓ４０３０からＳ４０４０において実行されたジャーナルデータの移動を反映させるようにカタログ管理情報テーブル３１１を更新する（Ｓ４０７０）。この更新は、図７のＳ３０８０と同様に実行されてもよい。
【０２１３】
以上で、ジャーナルデータを外部ストレージシステムに移動する処理が終了する。
【０２１４】
図９は、本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムからリストアする処理の概要の説明図である。
【０２１５】
図６から図８に示す方法によってジャーナルデータが外部ストレージシステムに移動した場合、そのジャーナルデータを用いて所望の世代のＰ−ＶＯＬを復元するためには、移動したジャーナルデータを第１のストレージシステム１２５内に戻す必要がある。このための処理の概要を、図９を参照して説明する。
【０２１６】
最初に、管理サーバ１１１は、ある世代（又は時刻）の論理ボリュームのデータをホスト計算機１０１に要求する。より具体的には、管理サーバ１１１は、現在のＰ−ＶＯＬではなく、過去のある世代のＰ−ＶＯＬに格納されていたデータを要求する。
【０２１７】
ホスト計算機１０１は、管理サーバ１１１から受信した要求を第１のストレージシステム１２５に送信する。
【０２１８】
第１のストレージシステム１２５は、要求された世代を復元するために、外部ストレージシステム（すなわち第２のストレージシステム１６１）に格納されたジャーナルデータを使用する必要がある場合、その必要なジャーナルデータの送信を第２のストレージシステム１６１に要求する。そして、その要求に従って送信されたジャーナルデータを使用して、要求された世代の論理ボリュームを復元し、要求されたデータを返す。
【０２１９】
図１０は、本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムからリストアする処理を示すフローチャートである。
【０２２０】
図１０は、図９に示した処理の詳細を示すものである。
【０２２１】
最初に、管理サーバ１１１は、ある世代（又は時刻）の論理ボリュームのデータをホスト計算機１０１に要求する（Ｓ５０１０）。より具体的には、管理サーバ１１１は、現在のＰ−ＶＯＬではなく、過去のある世代のＰ−ＶＯＬに格納されていたデータを要求する。
【０２２２】
ホスト計算機１０１は、管理サーバ１１１から受信した要求を第１のストレージシステム１２５に送信する（Ｓ５０２０）。
【０２２３】
ホスト計算機１０１から要求を受信した第１のストレージシステム１２５は、要求された世代を復元するために必要なジャーナルデータが第２のストレージシステム１６１に格納されているか否かを判定する（Ｓ５０３０）。
【０２２４】
ジャーナルデータがどこに格納されているかは、カタログ管理情報テーブル３１１を参照することによって知ることができる。例えば、管理サーバ１１１は、要求した世代を復元するために必要なジャーナルデータの所在を示す情報を、Ｓ５０１０の要求に含めて送信してもよい。その場合、第１のストレージシステム１２５は、送信された要求に基づいて、必要なジャーナルデータが第２のストレージシステム１６１に格納されているか否かを判定することができる。
【０２２５】
あるいは、第１のストレージシステム１２５は、必要なジャーナルデータの所在を管理サーバ１１１に問い合わせてもよい。
【０２２６】
あるいは、第１のストレージシステム１２５は、カタログ管理情報テーブル３１１と同等の情報を制御メモリ１４５内に保持していてもよい。その場合、第１のストレージシステム１２５は、制御メモリ１４５内に保持された情報に基づいて、Ｓ５０３０の判定を実行することができる。
【０２２７】
必要なジャーナルデータが第２のストレージシステム１６１に格納されていると判定された場合、必要なジャーナルデータを第２のストレージシステム１６１から第１のストレージシステム１２５にコピーする必要がある。このため、第１のストレージシステム１２５は、まず、必要なジャーナルデータを格納するための領域を第１のストレージシステム１２５内に確保する（Ｓ５０４０）。
【０２２８】
次に、第１のストレージシステム１２５は、必要なジャーナルデータの転送を第２のストレージシステム１６１に要求する（Ｓ５０５０）。
【０２２９】
この要求を受信した第２のストレージシステム１６１は、要求されたジャーナルデータを読み出して第１のストレージシステム１２５に送信する（Ｓ５０６０）。
【０２３０】
第１のストレージシステム１２５は、第２のストレージシステム１６１から受信したジャーナルデータを、Ｓ５０４０で確保した領域に格納する（Ｓ５０７０）。
【０２３１】
次に、第１のストレージシステム１２５は、必要なジャーナルデータを使用して、要求された世代のＰ−ＶＯＬを復元する（Ｓ５０８０）。
【０２３２】
一方、Ｓ５０３０において、必要なジャーナルデータが第２のストレージシステム１６１に格納されていない（すなわち、必要なジャーナルデータが第１のストレージシステム１２５に格納されている）と判定された場合、第１のストレージシステム１２５は、Ｓ５０４０からＳ５０７０を実行せずに、Ｓ５０８０を実行する。
【０２３３】
次に、第１のストレージシステム１２５は、復元されたＰ−ＶＯＬに対して、要求されたデータを読み出すための通常のリード処理を実行し、それによって読み出されたデータをホスト計算機１０１に送信する（Ｓ５０９０）。
【０２３４】
さらに、第１のストレージシステム１２５は、Ｓ５０６０及びＳ５０７０によってジャーナルデータが移動したことを通知する情報を管理サーバ１１１に送信する（Ｓ５０９５）。
【０２３５】
管理サーバ１１１のカタログ管理プログラムは、Ｓ５０６０及びＳ５０７０によってジャーナルデータが移動したことを反映させるために、カタログ管理情報テーブル３１１を更新する（Ｓ５１００）。
【０２３６】
以上で、ジャーナルデータを外部ストレージシステムからリストアする処理が終了する。
【０２３７】
例えば、図２１の例において、世代ＮのＰ−ＶＯＬ１８７Ｐに格納されたデータを要求された場合について説明する。この場合において、少なくとも世代Ｎ＋１に対応するジャーナルデータ（図２１の例ではＪＮＬデータ要素２７０２Ａ及び２７０２Ｂ）を含む一つ以上の世代のジャーナルデータが第２のストレージシステム１６１に格納されている場合、それらのジャーナルデータが第２のストレージシステム１６１から第１のストレージシステム１２５に転送され（Ｓ５０６０）、格納される（Ｓ５０７０）。
【０２３８】
第１のストレージシステム１２５は、少なくとも世代Ｎ＋１に対応するジャーナルデータを含む一つ以上の世代のジャーナルデータを現在の（すなわちオンラインの）Ｐ−ＶＯＬ１８７Ｐに反映させることによって、世代ＮのＰ−ＶＯＬ１８７Ｐに格納されたデータを復元し（Ｓ５０８０）、リード処理を実行する（Ｓ５０９０）。
【０２３９】
上記の図６から図８によれば、ジャーナルデータのみが外部ストレージシステムに移動する。このため、外部ストレージシステムに移動したジャーナルデータを用いて論理ボリュームを復元するためには、そのジャーナルデータを第１のストレージシステムにコピーする（すなわち戻す）必要があった。
【０２４０】
一方、ジャーナルデータの移動先の外部ストレージシステムに、さらに、Ｐ−ＶＯＬの複製（ただし、現在の（すなわちオンラインの）Ｐ−ＶＯＬの複製ではなく、復元されたある世代のＰ−ＶＯＬの複製）が格納されてもよい。このようなＰ−ＶＯＬの複製の移動について、図１１等を参照して説明する。
【０２４１】
図１１は、本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理の概要の説明図である。
【０２４２】
図１１の例では、図６及び図７の場合と同様、所定の条件が満たされる場合に、管理サーバが、ホスト計算機のストレージシステムエージェントプログラム６０２にジャーナルデータ移動指示を送信する。
【０２４３】
ホスト計算機１０１は、ジャーナルデータ移動指示を第１のストレージシステム１２５に送信する。
【０２４４】
第１のストレージシステム１２５は、受信した指示によって指定されたジャーナルデータ（例えば、最も古い世代のジャーナルデータ）の複製を第２のストレージシステム１６１に送信する。
【０２４５】
それに加えて、第１のストレージシステム１２５は、送信されたジャーナルデータを用いてＰ−ＶＯＬを復元するために必要なＰ−ＶＯＬの複製を送信する。
【０２４６】
第２のストレージシステム１６１は、受信したジャーナルデータ及びＰ−ＶＯＬの複製を格納する。
【０２４７】
第１のストレージシステム１２５は、ジャーナルデータの複製が第２のストレージシステム１６１に格納されると、指定されたジャーナルデータを第１のストレージシステム１２５のＪＮＬ関連エリア１８８から削除する。この削除によって空いた領域は、新たな世代のジャーナルデータを格納するために使用することができる。
【０２４８】
さらに、図１１の例では、ジャーナルデータ及びＰ−ＶＯＬの複製が第２のストレージシステム１６１に格納された後、第２のストレージシステム１６１を第１のストレージシステム１２５から切り離してもよい。第２のストレージシステム１６１を第１のストレージシステム１２５から切り離しても、第２のストレージシステム１６１に格納されたデータのみを用いてＰ−ＶＯＬを復元することができる（図１４Ａから図１４Ｄ等参照）。
【０２４９】
図１２は、本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理を示すフローチャートである。
【０２５０】
図１２は、図１１に示した処理の詳細を示すものである。
【０２５１】
最初に、管理サーバ１１１の移動可否判定プログラム３０１は、ジャーナルデータを外部ストレージシステムに移動する必要があるか否かを判定する（Ｓ６０１０）。この判定は、図７のＳ３０１０と同様に実行されてもよい。
【０２５２】
Ｓ３０１０において、所定の条件が満たされる（すなわち、ジャーナルデータを外部ストレージシステムに移動する必要がある）と判定された場合、管理サーバ１１１の移動対象決定プログラム３０２は、移動すべきジャーナルデータ及びその移動先を選択する（Ｓ６０２０）。この選択は、図７のステップ３０２０と同様に実行されてもよい。
【０２５３】
次に、管理サーバ１１１は、ジャーナルデータ移動指示をホスト計算機１０１に送信する（Ｓ６０２５）。このジャーナルデータ移動指示は、移動すべきジャーナルデータ及び移動先（すなわち、Ｓ６０２０において選択されたジャーナルデータ及び移動先）の指定を含む。
【０２５４】
ホスト計算機１０１は、管理サーバ１１１から受信したジャーナルデータ移動指示を第１のストレージシステム１２５に送信する（Ｓ６０３０）。
【０２５５】
第１のストレージシステム１２５は、Ｓ６０３０の指示を受信すると、Ｐ−ＶＯＬを作成（すなわち復元）する必要があるか否かを判定する（Ｓ６０４０）。ここで、この判定について説明する。
【０２５６】
図１３の処理では、ジャーナルデータに加えて、そのジャーナルデータを用いてＰ−ＶＯＬを復元するために必要な別のＰ−ＶＯＬの複製が外部ストレージシステムに移動する。
【０２５７】
例えば、図２１において、世代Ｎ＋１のジャーナルデータ、すなわち、ＪＮＬデータ要素２７０２Ａ及び２７０２Ｂが移動する場合、それらを用いて世代ＮのＰ−ＶＯＬ１８７Ｐを復元するためには、世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐが必要である。世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐのデータ２７０１Ｅ及び２７０１Ｆを、それぞれ、ＪＮＬデータ要素２７０２Ａ及び２７０２Ｂによって置き換えることによって、世代ＮのＰ−ＶＯＬ１８７Ｐが復元されるからである。
【０２５８】
したがって、Ｓ６０３０の指示によって世代Ｎ＋１のジャーナルデータが移動すべきものとして指定された場合には、Ｓ６０４０において、世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐを作成する必要があるか否かが判定される。
【０２５９】
例えば、既に世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐが作成されている場合には、世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐを作成する必要がないと判定され、まだ世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐが作成されていない場合には、世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐを作成する必要があると判定されてもよい。
【０２６０】
あるいは、既に世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐが第２のストレージシステム１６１にコピーされている場合には、世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐを作成する必要がないと判定されてもよい。一方、まだ世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐが第２のストレージシステム１６１にコピーされておらず、かつ、まだ世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐが作成されていない場合には、世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐを作成する必要があると判定されてもよい。
【０２６１】
なお、図２１の例において、世代Ｎ＋１のジャーナルデータに加えて、世代Ｎ＋２のジャーナルデータ（すなわちＪＮＬデータ要素２７０２Ｃ及び２７０２Ｅ）も移動すべきものとして指定されている場合、それらのジャーナルデータを用いてＰ−ＶＯＬを復元するために必要なＰ−ＶＯＬは、世代Ｎ＋２のＰ−ＶＯＬ１８７Ｐのみである。世代Ｎ＋２のＰ−ＶＯＬ１８７Ｐのデータを世代Ｎ＋２のジャーナルデータによって置き換えることによって世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐを復元することができ、復元された世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐを世代Ｎ＋１のジャーナルデータによって置き換えることによって世代ＮのＰ−ＶＯＬ１８７Ｐを復元することができるからである。
【０２６２】
Ｓ６０４０においてＰ−ＶＯＬを作成する必要があると判定された場合、第１のストレージシステム１２５は、必要と判定されたＰ−ＶＯＬを復元する（Ｓ６０５０）。この復元は、図２１において説明したように実行される。
【０２６３】
一方、Ｓ６０４０においてＰ−ＶＯＬを作成する必要がないと判定された場合、Ｓ６０５０は実行されず、処理はＳ６０６０に進む。
【０２６４】
次に、第１のストレージシステム１２５は、移動対象として指定されたジャーナルデータを選択する（Ｓ６０６０）。具体的には、Ｓ６０３０の指示によって指定されたジャーナルデータ（すなわちＳ６０２０において選択されたジャーナルデータ）が選択される。
【０２６５】
次に、第１のストレージシステム１２５は、選択されたジャーナルデータ、及び、Ｓ６０５０で作成されたＰ−ＶＯＬの全データを読み出し、第２のストレージシステム１６１に送信する（Ｓ６０７０）。Ｓ６０４０においてＰ−ＶＯＬを作成する必要がないと判定された場合は、既に作成されているＰ−ＶＯＬの全データが読み出され、送信される。
【０２６６】
Ｓ６０７０で送信されたデータを受信した第２のストレージシステム１６１は、受信したＰ−ＶＯＬのデータ及びジャーナルデータを格納する。例えば、第２のストレージシステムは、受信したＰ−ＶＯＬのデータを、移動先として指定された論理ボリュームに格納し、その空き論理ボリュームに関連するＪＮＬ関連エリア１８８に、受信したジャーナルデータを格納してもよい。この格納が終了すると、第２のストレージシステム１６１は、格納が終了したことの報告を第１のストレージシステム１２５に送信する。
【０２６７】
第１のストレージシステム１２５は、上記の報告に基づいて、送信したジャーナルデータが第２のストレージシステム１６１に格納されたことを確認すると、ジャーナルデータの移動が終了したことの報告を管理サーバ１１１に送信する（Ｓ６０９０）。
【０２６８】
さらに、第１のストレージシステム１２５は、例えば、送信したジャーナルデータが第２のストレージシステム１６１に格納されたことを確認した後、指定されたジャーナルデータをＪＮＬ関連エリア１８８から削除する。
【０２６９】
さらに、第１のストレージシステム１２５のＪＮＬ管理プログラム２０５は、ＪＮＬ管理テーブル２２４を更新する。この更新は、図７のステップ１０７０と同様に実行されてもよい。加えて、図１３の例におけるＪＮＬ管理プログラム２０５は、Ｐ−ＶＯＬ／ＪＮＬペア管理テーブル２２５も更新する。
【０２７０】
管理サーバ１１１のカタログ管理プログラム３０３は、Ｓ６０９０の報告を受信すると、Ｓ６０７０からＳ６０８０において実行されたジャーナルデータの移動を反映させるようにカタログ管理情報テーブル３１１を更新する（Ｓ６１００）。この更新は、図７のＳ３０８０と同様に実行されてもよい。
【０２７１】
以上で、外部ストレージシステムへのデータ移動の処理が終了する。
【０２７２】
図１３は、本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理の別の例を示すフローチャートである。
【０２７３】
図１３は、図１１及び図１２に示す処理の変形例である。図１１及び図１２では、管理サーバ１１１がジャーナルデータを移動するか否かを判定し、移動すべきジャーナルデータ及び移動先を選択した。一方、図１３では、第１のストレージシステム１２５が、ジャーナルデータをするか否かを判定し、移動すべきジャーナルデータ及び移動先を選択する。以下、図１３の処理について説明する。
【０２７４】
最初に、第１のストレージシステム１２５の移動可否判定プログラム２０３は、ジャーナルデータを外部ストレージシステムに移動する必要があるか否かを判定する（Ｓ７０１０）。この判定は、図１２のＳ６０１０と同様に実行されてもよい。
【０２７５】
次に、第１のストレージシステム１２５の移動対象決定プログラム２０４は、移動すべきジャーナルデータを選択する（Ｓ７０２０）。この選択は、図７のＳ６０２０と同様に実行されてもよい。
【０２７６】
続くＳ７０４０からＳ７１００は、それぞれ、Ｓ６０４０からＳ６１００と同様であるため、説明を省略する。Ｓ７１００が終了すると、外部ストレージシステムへのデータ移動の処理が終了する。
【０２７７】
図１１から図１３に示すように、ジャーナルデータだけでなく、ある時点のＰ−ＶＯＬの複製も外部ストレージシステムに移動することによって、外部ストレージシステムに格納されたデータだけを用いてＰ−ＶＯＬを復元することができる。これによって、第２のストレージシステム１６１を第１のストレージシステム１２５から切り離すことが可能になる。この切り離しは、第２のストレージシステム１６１と第１のストレージシステム１２５との間の物理的な接続を解除することによって実行されてもよいし、第１のストレージシステム１２５への第２のストレージシステム１６１の外部接続の設定を解除することによって実行されてもよい。
【０２７８】
第１のストレージシステム１２５から切り離された第２のストレージシステム１６１は、新たにホスト計算機に直接接続されてもよい。このホスト計算機は、第１のストレージシステムに接続されたホスト計算機１０１であってもよいし、それとは異なる計算機であってもよい。あるいは、第２のストレージシステム１６１は、第１のストレージシステム以外のストレージシステム（例えば、後述する図１７に示す第３のストレージシステム２２０１）に新たに外部接続されてもよい。
【０２７９】
いずれの場合も、第２のストレージシステムは、第１のストレージシステムから移動したデータを用いて復元されたいずれかの世代のＰ−ＶＯＬを、直接、又は、第３のストレージシステム２２０１を介して、ホスト計算機に提供することができる。
【０２８０】
図１４Ａから図１４Ｄは、本発明の第１の実施形態におけるストレージシステムの切り離しの類型の説明図である。
【０２８１】
図１４Ａの例では、第２のストレージシステム１６１が第１のストレージシステム１２５と同等の機能を備え、さらに、カタログ管理情報テーブル３１１と同等の情報（図１４Ａ〜図１４Ｄでは、これをカタログ管理情報テーブル３１１と記載）を保持している場合を示す。この場合、第２のストレージシステム１６１に新たにホスト計算機１０１を直接（すなわち、他のストレージシステムを介することなく）接続することができる。この場合、第２のストレージシステム１６１は、カタログ管理情報テーブル３１１、第１のストレージシステム１６１から移動したＰ−ＶＯＬの複製及びジャーナルデータを用いて、復元したＰ−ＶＯＬをホスト計算機１０１に提供することができる。
【０２８２】
図１４Ｂの例では、第２のストレージシステム１６１が第１のストレージシステム１２５と同等の機能を備えるが、カタログ管理情報テーブル３１１を保持していない。この場合、管理サーバ１１１からカタログ管理情報テーブル３１１を第２のストレージシステム１６１にコピーすることによって、図１４Ａの場合と同様、第２のストレージシステム１６１は、復元したＰ−ＶＯＬをホスト計算機１０１に提供することができる。
【０２８３】
図１４Ｃの例は、第２のストレージシステム１６１が第１のストレージシステム１２５から切り離された後、ホスト計算機１０１とは別のホスト計算機１４０１に接続される場合を示す。この例において、第２のストレージシステム１６１は、第１のストレージシステムと同等の機能を備えない。この場合、ホスト計算機１４０１がカタログ管理情報テーブル３１１を保持することによって、図１４Ａの場合と同様、第２のストレージシステム１６１は、復元したＰ−ＶＯＬをホスト計算機１４０１に提供することができる。
【０２８４】
カタログ管理情報テーブル３１１は、管理サーバ１１１からホスト計算機１４０１にコピーされてもよい。その場合、ホスト計算機１４０１は、いずれかの世代のＰ−ＶＯＬに格納されたデータを読み出す要求を受ける。この読み出し要求は、例えば、管理サーバ１１１から送信されたものであってもよいし、ユーザによってホスト計算機１４０１に入力されたものであってもよいし、アプリケーションプログラム６０１によって発行されたものであってもよい。
【０２８５】
ホスト計算機１４０１は、受信した読み出し要求を第２のストレージシステム１６１に送信する。この読み出し要求を受信した第２のストレージシステム１６１は、要求された世代のＰ−ＶＯＬのデータを復元するために必要なＰ−ＶＯＬの複製が格納された論理ボリューム、及び、その復元のために必要なジャーナルデータが格納された論理ボリュームを特定する。この特定は、例えば、次に示すいずれかの方法によってなされてもよい。
【０２８６】
例えば、ホスト計算機１４０１は、カタログ管理情報テーブル３１１に基づいて、要求された世代のＰ−ＶＯＬのデータを復元するために必要なＰ−ＶＯＬの複製が格納された論理ボリューム、及び、その復元のために必要なジャーナルデータが格納された論理ボリュームを特定し、特定された論理ボリュームの指定を読み出し要求に含めて送信してもよい。
【０２８７】
あるいは、読み出し要求を受信した第２のストレージシステム１６１は、カタログ管理情報テーブル３１１のうち必要な情報（又は、カタログ管理情報テーブル３１１全体）をホスト計算機１４０１から取得し、その取得した情報に基づいて上記の論理ボリュームを特定してもよい。
【０２８８】
図１４Ｄの例では、第２のストレージシステム１６１が、第１のストレージシステム１２５と同等の機能を備える第３のストレージシステム２２０１に新たに外部接続される。この場合、第３のストレージシステム２２０１がカタログ管理情報テーブル３１１を保持することによって、第２のストレージシステム１６１は、第３のストレージシステム２２０１を介してホスト計算機１０１に復元したＰ−ＶＯＬを提供することができる。
【０２８９】
なお、図１４Ｄのように接続された場合のＰ−ＶＯＬの復元の例については後述する（図１７等参照）。
【０２９０】
図１５は、本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理の、さらに別の例を示すフローチャートである。
【０２９１】
図１１に示す処理が繰り返し実行されると、第２のストレージシステム１６１内に、ジャーナルデータと、そのジャーナルデータを復元するために必要なＰ−ＶＯＬの複製（レプリカ）と、の組が複数格納される場合がある（図１５の第２のストレージシステム１６１参照）。
【０２９２】
あるいは、第１のストレージシステム１２５に複数の外部ストレージシステムが接続される場合もある。図１５の例では、第２のストレージシステム１６１に加えて、外部ストレージシステム１６１Ａ及び１６１Ｂが第１のストレージシステム１２５に外部接続されている。なお、外部ストレージシステム１６１Ａ及び１６１Ｂは、第２のストレージシステム１６１と同様のものであってよい。
【０２９３】
上記のような場合に、図１１に示す処理が各外部ストレージシステムに対して実行されると、上記のようなジャーナルデータとＰ−ＶＯＬのレプリカとの組（ペア）が、各外部ストレージシステム内に一組又は複数組格納される場合がある。このような場合、ある世代のＰ−ＶＯＬを復元しようとして、Ｐ−ＶＯＬのレプリカのデータを、そのＰ−ＶＯＬのレプリカが属するペアとは異なるペアに属するジャーナルデータによって置き換えると、誤ったＰ−ＶＯＬが復元される。
【０２９４】
このような誤った復元を防ぐために、ジャーナルデータとＰ−ＶＯＬのレプリカとのペアを管理する必要がある。そのために、既に説明したＰ−ＶＯＬ／ＪＮＬペア管理テーブル２２５が使用される（図４Ｅ参照）。
【０２９５】
Ｐ−ＶＯＬ／ＪＮＬペア管理テーブル２２５において、Ｐ−ＶＯＬ＃４７１は、複製元のオンラインのＰ−ＶＯＬの識別子、すなわち、図１５の例では第１のストレージシステム１２５に格納されたＰ−ＶＯＬの識別子である。
【０２９６】
複製Ｐ−ＶＯＬ＃４７３は、第１のストレージシステム１２５に格納されたＰ−ＶＯＬから派生した複製Ｐ−ＶＯＬ（第１のストレージシステム１２５に格納されたＰ−ＶＯＬ及びジャーナルデータに基づいて、図１１に示す処理によって作成されたＰ−ＶＯＬの複製）の識別子である。
【０２９７】
ＪＮＬ−ＶＯＬ＃４７５は、複製Ｐ−ＶＯＬ＃４７３によって識別される複製Ｐ−ＶＯＬが属するペアに属するジャーナルデータが格納された論理ボリュームの識別子を示す。
【０２９８】
図１６は、本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理の具体例の説明図である。
【０２９９】
最初に、Ａｆｔｅｒジャーナルが作成される場合について説明する。
【０３００】
例えば、現在日時が、４月３０日が終了した時点（すなわち５月１日午前０時）である場合、現在の（すなわちオンラインの）Ｐ−ＶＯＬ１８７Ｐに、ＪＮＬデータ２３３のうち４月１日〜４月３０日に作成されたものを反映させることによって、３月３１日が終了した時点（すなわち４月１日午前０時）のＰ−ＶＯＬ１８７Ｐ１を復元することができる（図１６（Ａ）参照）。
【０３０１】
その後、第１のストレージシステム１２５は、ＪＮＬデータ２３３のうち４月１日〜４月３０日に作成されたものをＪＮＬデータ２３３Ｓ１として第２のストレージシステム１６１にコピーし、さらに、復元されたＰ−ＶＯＬ１８７Ｐ１をＰ−ＶＯＬ１８７Ｓとして第２のストレージシステム１６１にコピーする。
【０３０２】
これによって、第２のストレージシステム１６１は、第１のストレージシステム１２５から切り離されたとしても、少なくとも、４月１日午前０時のＰ−ＶＯＬ１８７Ｓ、及び、それにＪＮＬデータ２３３Ｓ１を反映させることによって作成される５月１日午前０時のＰ−ＶＯＬを提供することができる。
【０３０３】
第１のストレージシステム１２５からは、ＪＮＬデータ２３３のうち４月１日〜４月３０日に作成されたもの、及び、復元されたＰ−ＶＯＬ１８７Ｐ１が削除される。これによって、第１のストレージシステム１２５内の空き容量が増加するため、さらに新しい世代のジャーナルデータを格納することができる。
【０３０４】
さらに、１ヶ月が経過すると、第１のストレージシステム１２５は、ＪＮＬデータ２３３のうち５月１日〜５月３１日に作成されたものをＪＮＬデータ２３３Ｓ２として第２のストレージシステム１６１にコピーする（図１６（Ｂ）参照）。この場合、さらに復元されたＰ−ＶＯＬをコピーする必要はない。既に図１６（Ａ）に示すように、４月１日午前０時のＰ−ＶＯＬ１８７Ｓ及び４月１日〜４月３０日に作成されたＪＮＬデータ２３３Ｓ１が格納されているため、これらとＪＮＬデータ２３３Ｓ２とを用いて６月１日午前０時のＰ−ＶＯＬを復元することができるからである。
【０３０５】
ただし、ＪＮＬデータ２３３Ｓ２をコピーしようとするときに、Ｐ−ＶＯＬ１８７Ｓ及びＪＮＬデータ２３３Ｓ１が第２のストレージシステム１６１に格納されていない場合、第１のストレージシステム１２５は、図１６（Ａ）と同様の手順によって、５月１日午前０時のＰ−ＶＯＬを復元し、第２のストレージシステム１６１にコピーする必要がある。
【０３０６】
あるいは、図１６（Ｂ）に示すようにＰ−ＶＯＬ１８７Ｓ、ＪＮＬデータ２３３Ｓ１及びＪＮＬデータ２３３Ｓ２が第２のストレージシステム１６１に格納されている場合であっても、現在日時が８月１日午前０時であり、６月１日〜６月３０日に作成されたＪＮＬデータ２３３が第１のストレージシステム１２５及び第２のストレージシステム１６１のいずれからも既に削除されている場合、図１６（Ａ）と同様の手順によってＰ−ＶＯＬを復元してコピーする必要がある。
【０３０７】
具体的には、この場合、第１のストレージシステム１２５は、オンラインのＰ−ＶＯＬ１８７Ｐに７月１日〜７月３１日に作成されたＪＮＬデータ２３３を反映させることによって、７月１日午前０時のＰ−ＶＯＬ（図示省略）を復元し、それを第２のストレージシステム１６１にコピーする。さらに、７月１日〜７月３１日に作成されたＪＮＬデータ２３３も第２のストレージシステム１６１にコピーされる。この場合、７月１日午前０時のＰ−ＶＯＬの複製と、７月１日〜７月３１日に作成されたＪＮＬデータ２３３とが第２のストレージシステムにおいて一つのペア（図１６（Ｂ）の例ではペア２１０１Ｂ）として管理される。一方、Ｐ−ＶＯＬ１８７Ｓ、ＪＮＬデータ２３３Ｓ１及びＪＮＬデータ２３３Ｓ２は、別のペア（図１６（Ｂ）の例ではペア２１０１Ａ）として管理される。
【０３０８】
次に、Ｂｅｆｏｒｅジャーナルが作成される場合について説明する。
【０３０９】
例えば、現在日時が５月１１日午前０時である場合、現在の（すなわちオンラインの）Ｐ−ＶＯＬ１８７Ｐに、ＪＮＬデータ２３３のうち５月１日〜５月１０日に作成されたもの（図示省略）を反映させることによって、４月３０日が終了した時点（すなわち５月１日午前０時）のＰ−ＶＯＬ１８７Ｐ１を復元することができる（図１６（Ａ）参照）。
【０３１０】
その後、第１のストレージシステム１２５は、ＪＮＬデータ２３３のうち４月１日〜４月３０日に作成されたものをＪＮＬデータ２３３Ｓ１として第２のストレージシステム１６１にコピーし、さらに、復元されたＰ−ＶＯＬ１８７Ｐ１をＰ−ＶＯＬ１８７Ｓとして第２のストレージシステム１６１にコピーする。
【０３１１】
これによって、第２のストレージシステム１６１は、第１のストレージシステム１２５から切り離されたとしても、少なくとも、５月１日午前０時のＰ−ＶＯＬ１８７Ｓ、及び、それにＪＮＬデータ２３３Ｓ１を反映させることによって作成される４月１日午前０時のＰ−ＶＯＬを提供することができる。
【０３１２】
第１のストレージシステム１２５からは、ＪＮＬデータ２３３のうち４月１日〜４月３０日に作成されたもの、及び、復元されたＰ−ＶＯＬ１８７Ｐ１が削除される。これによって、第１のストレージシステム１２５内の空き容量が増加するため、さらに新しい世代のジャーナルデータを格納することができる。
【０３１３】
さらに、１ヶ月が経過すると、第１のストレージシステム１２５は、ＪＮＬデータ２３３のうち５月１日〜５月３１日に作成されたものをＪＮＬデータ２３３Ｓ２として第２のストレージシステム１６１にコピーする（図１６（Ｂ）参照）。この場合、第１のストレージシステム１２５は、上記と同様の手順によって、６月１日午前０時のＰ−ＶＯＬ１８７Ｐ１を復元し、それを第２のストレージシステム１６１にコピーする必要がある。Ｂｅｆｏｒｅジャーナルが作成される場合、ＪＮＬデータ２３３Ｓ２を用いて５月１日午前０時のＰ−ＶＯＬを復元するためには、６月１日午前０時のＰ−ＶＯＬ１８７Ｐ１が必要だからである。
【０３１４】
この場合、先にコピーされたＰ−ＶＯＬ１８７Ｓ（すなわち５月１日午前０時のＰ−ＶＯＬ１８７Ｐ１の複製）及びＪＮＬデータ２３３Ｓ１が第１のペア（例えばペア２１０１Ａ）として管理され、後にコピーされた６月１日午前０時のＰ−ＶＯＬ１８７Ｐ１の複製及びＪＮＬデータ２３３Ｓ２が第２のペア（例えばペア２１０１Ｂ）として管理されてもよい。
【０３１５】
あるいは、６月１日午前０時のＰ−ＶＯＬ１８７Ｐ１が新たなＰ−ＶＯＬ１８７Ｓとして第２のストレージシステム１６１にコピーされてもよい。この場合、先にコピーされた５月１日午前０時のＰ−ＶＯＬ１８７Ｓは削除される。そして、新たなＰ−ＶＯＬ１８７Ｓ、ＪＮＬデータ２３３Ｓ１及びＪＮＬデータ２３３Ｓ２が一つのペア（例えばペア２１０１Ａ）として管理されてもよい。
【０３１６】
次に、上記のように復元されたＰ−ＶＯＬが外部ストレージシステムにコピーされた場合に、Ｐ−ＶＯＬ及びジャーナルデータを外部ストレージシステムからリストアする処理について説明する。
【０３１７】
図１７は、本発明の第１の実施形態において実行される、Ｐ−ＶＯＬ及びジャーナルデータを外部ストレージシステムからリストアする処理の概要の説明図である。
【０３１８】
具体的には、図１７は、第２のストレージシステム１６１が第１のストレージシステム１２５から切り離され、第１のストレージシステム１２５と同等の機能を備える第３のストレージシステム２２０１に新たに外部接続された場合の、Ｐ−ＶＯＬ及びジャーナルデータのリストアを示す。
【０３１９】
この場合、管理サーバ１１１は、ホスト計算機１０１を介して、少なくとも、カタログ管理情報テーブル３１１を第３のストレージシステム２２０１に提供し、さらに、過去のある世代のＰ−ＶＯＬのデータを第３のストレージシステム２２０１に要求する。
【０３２０】
第３のストレージシステム２２０１は、要求された世代を復元するために、必要なジャーナルデータ及びＰ−ＶＯＬのデータの送信を第２のストレージシステム１６１に要求する。そして、その要求に従って送信されたジャーナルデータ及びＰ−ＶＯＬのデータを使用して、要求された世代のＰ−ＶＯＬを復元し、要求されたデータを返す。
【０３２１】
図１８は、本発明の第１の実施形態において実行される、Ｐ−ＶＯＬ及びジャーナルデータを外部ストレージシステムからリストアする処理を示すフローチャートである。
【０３２２】
図１８は、図１７に示した処理の詳細を示すものである。
【０３２３】
図１８に示す処理は、図１０を参照して説明した処理とほとんど同じである。具体的には、図１８のＳ９０１０〜Ｓ９１００が、それぞれ、図１０のＳ５０１０〜Ｓ５１００に対応する。
【０３２４】
ただし、図１０においてＳ５０３０〜Ｓ５０９０（Ｓ５０６０を除く）が第１のストレージシステム１２５によって実行されるのに対して、図１８のＳ９０３０〜Ｓ９０９０（Ｓ９０６０を除く）は、第３のストレージシステム２２０１によって実行される。この場合であっても、管理サーバ１１１が保持するカタログ管理情報テーブル３１１に基づいて、第３のストレージシステム２２０１は、ジャーナルデータの所在を知ることができる。
【０３２５】
さらに、Ｐ−ＶＯＬ／ＪＮＬペア管理テーブル２２５が第１のストレージシステム１２５から第３のストレージシステム２２０１にコピーされていれば、第３のストレージシステム２２０１は、Ｐ−ＶＯＬ／ＪＮＬペア管理テーブル２２５に基づいて、ジャーナルデータと、そのジャーナルデータを用いてＰ−ＶＯＬを復元するために必要なＰ−ＶＯＬと、の対応関係を知ることができる。このため、Ｓ９０３０において、第３のストレージシステム２２０１は、復元のために必要なＰ−ＶＯＬの所在も特定することができる。
【０３２６】
例えば、管理サーバ１１１は、Ｐ−ＶＯＬ／ＪＮＬペア管理テーブル２２５の複製を保持し、第２のストレージシステム１６１が新たに第３のストレージシステム２２０１に外部接続されたときに、そのＰ−ＶＯＬ／ＪＮＬペア管理テーブル２２５の複製を第３のストレージシステム２２０１に送信してもよい。これによって、第３のストレージシステム２２０１は、Ｐ−ＶＯＬ／ＪＮＬペア管理テーブル２２５の複製を保持することができる。
【０３２７】
そして、第３のストレージシステム２２０１は、必要なジャーナルデータを格納するための領域に加えて、第２のストレージシステム１６１から転送される、必要なＰ−ＶＯＬを格納するための領域も確保する（Ｓ９０４０）。
【０３２８】
そして、第３のストレージシステム２２０１は、必要なジャーナルデータ及び必要なＰ−ＶＯＬの転送を第２のストレージシステム１６１に要求する（Ｓ９０５０）。
【０３２９】
この要求を受信した第２のストレージシステム１６１は、要求されたジャーナルデータ及びＰ−ＶＯＬのデータを読み出して第３のストレージシステム２２０１に送信する（Ｓ９０６０）。
【０３３０】
第３のストレージシステム２２０１は、第２のストレージシステム１６１から受信したジャーナルデータ及びＰ−ＶＯＬのデータを格納し（Ｓ９０７０）、それらを使用してＰ−ＶＯＬを復元する（Ｓ９０８０）。
【０３３１】
例えば、第２のストレージシステム１６１が、図１６（Ｂ）に示すようなジャーナルデータ及びＰ−ＶＯＬの複製を格納している場合、第３のストレージシステム２２０１は、ＪＮＬデータ２３３Ｓ１及び２３３Ｓ２を用いて６月１日のＰ−ＶＯＬを復元するために、Ｐ−ＶＯＬ１８７Ｓが必要であることを知ることができる。そして、Ｓ９０６０において、ＪＮＬデータ２３３Ｓ１及び２３３Ｓ２を含むジャーナルデータに加えて、Ｐ−ＶＯＬ１８７Ｓが転送される。
【０３３２】
なお、図１７及び図１８には、第２のストレージシステム１６１から転送されたＰ−ＶＯＬ及びジャーナルデータを使用して要求された世代のＰ−ＶＯＬを復元する処理を第３のストレージシステム２２０１が実行する例を示したが、第２のストレージシステムが要求された世代のＰ−ＶＯＬを復元してもよい。その場合、第２のストレージシステムは、復元したＰ−ＶＯＬを第３のストレージシステム２２０１にコピーしてもよいし、第３のストレージシステム２２０１が管理サーバ１１１から要求されたデータのみを第３のストレージシステム２２０１に送信してもよい。
【０３３３】
具体的には、第３のストレージシステム２２０１は、Ｓ９０５０において、Ｓ９０２０で受信した要求と同様の要求を第２のストレージシステム１６１に送信してもよい。この要求には、必要なジャーナルデータ及び必要なＰ−ＶＯＬの所在を示す情報が含まれる。この情報は、カタログ管理情報テーブル３１１に基づいて作成される。
【０３３４】
図１０の場合と同様、カタログ管理情報テーブル３１１と同等の情報が第３のストレージシステム２２０１に保持されてもよい。その場合、必要なジャーナルデータ及び必要なＰ−ＶＯＬの所在を示す情報は、第３のストレージシステム２２０１に保持された情報に基づいて作成されてもよい。第２のストレージシステムは、受信した要求に基づいて、Ｐ−ＶＯＬを復元する。
【０３３５】
上記のように第２のストレージシステム１６１がＰ−ＶＯＬを復元する場合、Ｓ９０４０及びＳ９０８０を実行する必要はない。
【０３３６】
以上、図１１から図１８を参照して説明したように、ジャーナルデータに加えて、復元されたＰ−ＶＯＬの複製も外部ストレージシステムに移動すれば、外部ストレージシステムは、第１のストレージシステム１２５から切り離された後、ホスト計算機１０１に、直接、又は第３のストレージシステム２２０１を介して、一つ以上の世代のＰ−ＶＯＬを提供することができる。これによって、外部ストレージシステムをオフラインバックアップ又はアーカイブとして使用することができる。
【０３３７】
次に、世代間差分データ等のマージについて説明する。
【０３３８】
図２３及び図２４を参照して説明するように、本実施形態では、複数の世代分の世代間差分データ及び差分ＢＭのマージをマージすることができる。これによって、消費される記憶容量を削減することができる。以下、マージ後の世代間差分データを「マージ差分データ」と記載する。
【０３３９】
図２３は、本発明の第１の実施形態において実行される、世代間差分データをマージする処理を示すフローチャートである。
【０３４０】
図２４は、本発明の第１の実施形態において実行されるマージ処理に関するデータ要素の動きを示す説明図である。
【０３４１】
以下、図２３及び図２４を参照して、マージ処理を説明する。
【０３４２】
図２４に示すように、ＪＮＬマージプログラム２０８（図２参照）は、或る世代数分（例えば（ｍ＋１）世代、すなわち、世代（Ｎ）から世代（Ｎ＋ｍ）までの世代）の世代間差分データが格納されていることを検出したときに、（ｍ＋１）世代分の世代間差分データをマージ差分データに変換するマージ処理を開始する。
【０３４３】
なお、マージ処理は、上記のように、（ｍ＋１）世代分の世代間差分データが溜まっていることが検出されたことを契機として開始されてもよい。しかし、この契機は一例にすぎず、他の契機に基づいてマージ処理が開始されてもよい。例えば、直前回のマージ処理から所定期間が経過したことを契機としてマージ処理が開始されてもよい。
【０３４４】
ＪＮＬマージプログラム２０８は、ＪＮＬ情報テーブル２３１のうち、マージ対象の世代（Ｎ）〜世代（Ｎ＋ｍ）の［状態］（図示せず）を“マージ中”に更新する。そして、ＪＮＬマージプログラム２０８は、マージ対象の最古の世代（Ｎ）の世代間差分データを、対象として選択する（Ｓ１７００１）。
【０３４５】
ＪＮＬマージプログラム２０８は、対象の世代間差分データに対応した差分ＢＭ（Ｎ）（すなわち、第（Ｎ）世代の差分ＢＭ４４３）の先頭ビットを参照位置として決定する（Ｓ１７００２）。
【０３４６】
ＪＮＬマージプログラム２０８は、差分ＢＭ（Ｎ）について参照位置と決定されたビットがオンであれば、Ｓ１７００４を実行し、そのビットがオフであれば、Ｓ１７００９を実行する。以下、図２３及び図２４の説明において、その参照位置と決定されたビットを「対象ビット」と記載し、そのビットがオンであれば「対象オンビット」と記載し、そのビットがオフであれば「対象オフビット」と記載する。
【０３４７】
ＪＮＬマージプログラム２０８は、今回作成するマージ差分データに対応する差分ＢＭ（以下、図２３及び図２４の説明において、「マージ差分ＢＭ」と記載する）について、上記対象ビットと同じ位置にあるビットがオフであれば、Ｓ１７００５を実行し、そのビットがオンであれば、Ｓ１７００９を実行する。
【０３４８】
ＪＮＬマージプログラム２０８は、差分ＢＭ（Ｎ）における対象オンビットに対応するデータ格納アドレスを探し（Ｓ１７００５）、そのアドレスを特定する（Ｓ１７００６）。そして、ＪＮＬマージプログラム２０８は、そのアドレスが示すセグメントに記憶されている世代間差分データ要素を、そのセグメントから、今回作成されるマージ差分データに対応したＪＮＬサブエリア内のセグメント（すなわち、直前回のコピー先のセグメントの次のセグメント）にコピーする（Ｓ１７００７）。そして、ＪＮＬマージプログラム２０８は、マージ差分ＢＭにおける、上記対象ビットと同じ位置にあるビットを、オンにする（Ｓ１７００８）。
【０３４９】
ＪＮＬマージプログラム２０８は、差分ＢＭ（Ｎ）において、これまでの参照位置の次の位置に未参照のビットがあるか否かを判定する（Ｓ１７００９）。これまでの参照位置の次の位置に未参照のビットがあれば（すなわちＳ１７００９で「Ｙ」と判定された場合）、次のビットを新たな参照位置に決定して（Ｓ１７０１０）、Ｓ１７００３を実行する。
【０３５０】
一方、次の位置に未参照のビットが無ければ（すなわちＳ１７００９で「Ｎ」と判定された場合）、その世代（Ｎ）についての処理が終了する（Ｓ１７０１１）。そして、ＪＮＬマージプログラム２０８は、次の世代があるか否かを判定する。次の世代があれば（すなわちＳ１７０１２で「Ｙ」と判定された場合）、ＪＮＬマージプログラム２０８は、次の世代（Ｎ＋１）について、Ｓ１７００１を実行する。もし、次の世代が無ければ（すなわち、直前回に処理された世代が（Ｎ＋ｍ）であれば（Ｓ１７０１２で「Ｎ」）、マージ処理が終了する。
【０３５１】
以上の流れによれば、図２４に示すように、マージ対象の世代（Ｎ）〜（Ｎ＋ｍ）のうちの古い世代に対応した世代間差分データから先に処理される。世代間差分データに対応した差分ＢＭではオンビットであって、マージ差分ＢＭにおいて、そのオンビットに対応したビットがオフであれば、そのオンビットに対応した世代間差分データ要素が、マージ差分データに対応したＪＮＬサブエリアにコピーされる。一方、世代間差分データに対応した差分ＢＭではオンビットであり、マージ差分ＢＭにおいても、そのオンビットに対応したビットがオンであれば、世代間差分データに対応した差分ＢＭ内のオンビットに対応したデータ要素はコピーされない。
【０３５２】
要するに、古い世代に対応した世代間差分データ要素ほど、優先的に、マージ差分データに対応したＪＮＬサブエリアにコピーされる。具体的には、例えば、図２４によれば、世代（Ｎ）と世代（Ｎ＋ｍ）（ｍ＝２の場合、世代（Ｎ＋２））の２つの世代について、Ｐ−ＶＯＬの先頭ブロックに対応した世代間差分データ要素“Ａ”及び“Ｇ”が存在している。この場合、前述したように、古い世代に対応した世代間差分データ要素ほど優先されるので、世代（Ｎ）についてのデータ要素“Ａ”は、マージ差分データに対応したＪＮＬサブエントリにコピーされるが、その世代（Ｎ）よりも新しい世代についてのデータ要素“Ｇ”は、そのＪＮＬサブエントリにはコピーされない。
【０３５３】
なお、このマージ処理では、古い世代から先に処理されるが、新しい世代から先に処理されてもよい。但し、この場合、世代間差分データに対応した差分ＢＭではオンビットであり、マージ差分ＢＭにおいても、そのオンビットに対応したビットがオンであれば、世代間差分データに対応した差分ＢＭ内のオンビットに対応したデータ要素が、マージ差分データに対応したＪＮＬサブエリアに記憶されている、オンビットに対応したマージ差分データ要素に上書きされてもよい。
【０３５４】
また、マージ差分データが作成された場合、そのマージ差分データの基になった複数世代分の世代間差分データは、マージ差分データの作成完了の直後に、又は計算機（例えば、ホスト計算機１０１又は管理サーバ１１１）からの指示に応答して、削除されてもよい。
【０３５５】
また、世代間差分データやマージ差分データが古い世代から削除されてもよい。この場合、例えば、ＪＮＬ削除プログラム（図示省略）が、削除対象の世代に対応したＪＮＬ制御情報及びＪＮＬデータを解放し、それらが格納されていた領域を空き領域として管理する。また、ＪＮＬ削除プログラムは、第一のＪＮＬ管理テーブル２２４から、削除対象の世代に対応したエントリを削除する。
【０３５６】
例えば、第１のストレージシステム１２５が、上記のように、自身に格納されている差分をマージしてから、マージされた差分（すなわちマージされたジャーナルデータ）を第２のストレージシステム１６１へバックアップしてもよい。
【０３５７】
ここで、図２１を参照して、世代のマージの具体例を説明する。説明を簡単にするため、現在時刻が、世代Ｎ＋２が確定した時点であると仮定する。すなわち、現時点のオンラインのＰ−ＶＯＬ１８７Ｐは、確定した世代Ｎ＋２のＰ−ＶＯＬ１８７Ｐと同一である。
【０３５８】
この場合において、世代Ｎ＋１と世代Ｎ＋２とをマージする処理について説明する。
【０３５９】
マージが実行される前の時点で、世代Ｎ＋２に対応する差分データとして、ＪＮＬデータ要素２７０２Ｃ及び２７０２Ｅが保持されている。これらは、世代Ｎ＋２のＰ−ＶＯＬ１８７Ｐに基づいて世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐを復元するために必要な差分データである。さらに、世代Ｎ＋１に対応する差分データとして、ＪＮＬデータ要素２７０２Ａ及び２７０２Ｂが保持されている。これらは、世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐに基づいて世代ＮのＰ−ＶＯＬ１８７Ｐを復元するために必要な差分データである。
【０３６０】
世代Ｎ＋１と世代Ｎ＋２とをマージする処理とは、世代Ｎ＋２のＰ−ＶＯＬ１８７Ｐに基づいて世代ＮのＰ−ＶＯＬ１８７Ｐを復元するために必要な差分データ（言い換えると、世代Ｎ＋２のＰ−ＶＯＬ１８７Ｐと、世代ＮのＰ−ＶＯＬ１８７Ｐとの差分データ）を残し、その他のデータを削除する処理である。
【０３６１】
図２１の例では、データ２７０１Ｇが格納されたブロックに対応する二つの差分データ、すなわち、世代Ｎ＋２のＪＮＬデータ要素２７０２Ｅ及びＪＮＬデータ要素２７０２Ａが保持されている。この場合、より古い世代のＪＮＬデータ要素２７０２Ａが残され、ＪＮＬデータ要素２７０２Ｅは削除される。ＪＮＬデータ要素２７０２Ｅは、世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐを復元するためには必要であるが、世代ＮのＰ−ＶＯＬ１８７Ｐを復元するためには必要ないからである。
【０３６２】
同様に、ＪＮＬデータ要素２７０２Ｂ及びＪＮＬデータ要素２７０２Ｃが残される。
【０３６３】
上記のように世代をマージすることによって、世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐを復元するためだけに必要なＪＮＬデータ要素２７０２Ｅが削除されるため、空き記憶領域が増加するかわりに、世代Ｎ＋１のＰ−ＶＯＬ１８７Ｐを復元することはできなくなる。すなわち、世代をマージすることによって、保存する必要性の低い世代を復元するためだけに必要なジャーナルデータを削除することができ、これによって、ジャーナルデータを格納するための記憶領域の容量を削減することができる。
【０３６４】
次に、外部ストレージシステムへのジャーナルデータの移動の別の例について、図２５から図２７を参照して説明する。
【０３６５】
図２５は、本発明の第１の実施形態において、外部ストレージシステムがジャーナルデータを階層管理する場合のジャーナルデータの移動の説明図である。
【０３６６】
本実施形態の第２のストレージシステム１６１は、第１のストレージシステム１２５とは異なる種類の記憶媒体を備えてもよい。例えば、第１のストレージシステム１２５が一つ以上のＨＤＤを備えるのに対して、第２のストレージシステム１６１は、ＨＤＤに加えて磁気テープ記憶装置（例えばテープライブラリ）３１０１を備えてもよい。この場合、第２のストレージシステム１６１は、ＨＤＤに格納されるジャーナルデータと磁気テープ記憶装置３１０１に格納されるジャーナルデータとを階層管理することができる。
【０３６７】
なお、図２５の例において磁気テープ記憶装置３１０１は一例に過ぎず、磁気テープ記憶装置３１０１がその他の種類の記憶装置によって置き換えられてもよい。
【０３６８】
例えば、既に説明したように、アクセス頻度が所定の値（第１の値）より低いジャーナルデータが第１のストレージシステム１２５から第２のストレージシステム１６１に移動する場合、第２のストレージシステム１６１に移動したジャーナルデータのうち、アクセス頻度が第２の値より低いジャーナルデータが磁気テープ記憶装置３１０１に格納される。ただし、第２の値は、第１の値より低いアクセス頻度を示す。
【０３６９】
古い世代のジャーナルデータほどアクセス頻度が低い場合、第１のストレージシステム１２５に格納されたジャーナルデータのうち比較的古い世代のものが第２のストレージシステムに移動し、第２のストレージシステムに移動したジャーナルデータの中で比較的古い世代のものが磁気テープ記憶装置３１０１に格納される。
【０３７０】
図１１等を参照して説明したように、第２のストレージシステム１６１にＰ−ＶＯＬの複製が格納されてもよい。その場合、磁気テープ記憶装置３１０１にもＰ−ＶＯＬの複製が格納されてもよい。あるいは、第２のストレージシステム１６１にオンラインのＰ−ＶＯＬが格納されてもよい。
【０３７１】
図２６は、本発明の第１の実施形態において、外部ストレージシステムが磁気テープ記憶装置を備える場合のジャーナルデータの移動の説明図である。
【０３７２】
具体的には、図２６は、図２５の例において第２のストレージシステムに内蔵される記憶装置が磁気テープ記憶装置３１０１である場合の、テープへのジャーナルデータの格納の例を示す。
【０３７３】
図２６の例では、一つの世代のジャーナルデータが一つ（すなわち１巻）のテープ記憶媒体に格納される。具体的には、図２６の例において、第１のストレージシステム１２５のＪＮＬ関連エリア１８８には、世代１から世代４までの４世代のジャーナルデータが、それぞれ、識別番号（識別子）「１」から「４」までで識別される四つの論理ボリュームに格納される。以下の説明において、これらの四つの論理ボリュームを、それぞれ、Ｊ−ＶＯＬ＃１〜Ｊ−ＶＯＬ＃４と記載する。
【０３７４】
ＪＮＬ関連エリア１８８内の一つの論理ボリュームに格納されたジャーナルデータは、第２のストレージシステム１６１内の一つの論理ボリュームに移動する。そして、第２のストレージシステム１６１内の一つの論理ボリュームに格納されたジャーナルデータは、１巻のテープ記憶媒体に格納される。
【０３７５】
図２６の例では、第２のストレージシステム１６１内に、ジャーナルデータの移動先として三つの論理ボリューム、すなわち、識別番号「１００」から「１０２」までで識別される三つの論理ボリュームが格納される。以下の説明において、これらの三つの論理ボリュームを、それぞれ、ＶＯＬ＃１００〜ＶＯＬ＃１０２と記載する。さらに、図２６の磁気テープ記憶装置３１０１は、それぞれ識別番号「１」から「３」までで識別される三つのテープ記憶媒体を備える。以下の説明において、これらの三つのテープ記憶媒体を、それぞれ、テープ＃１〜テープ＃３と記載する。
【０３７６】
ただし、ＪＮＬ関連エリア１８８内の一つの論理ボリュームに格納されたジャーナルデータが、第２のストレージシステム１６１内の一つの論理ボリュームに移動した後、さらにＪＮＬ関連エリア１８８内の別の論理ボリュームに格納されたジャーナルデータが第２のストレージシステム１６１内の同じ論理ボリュームに移動する場合がある。
【０３７７】
図２６の例では、世代１のジャーナルデータが、Ｊ−ＶＯＬ＃１からＶＯＬ＃１００に移動し、さらに、テープ＃１に格納される。世代２のジャーナルデータが、Ｊ−ＶＯＬ＃２からＶＯＬ＃１０１に移動し、さらに、テープ＃２に格納される。同様に、世代３のジャーナルデータが、Ｊ−ＶＯＬ＃３からＶＯＬ＃１０２に移動する。しかし、その後、世代４のジャーナルデータがＪ−ＶＯＬ＃４からＶＯＬ＃１０２に移動する。このとき、先に移動した世代３のジャーナルデータはＶＯＬ＃１０２から消去される。このため、テープ＃３には、世代４のジャーナルデータが格納される。
【０３７８】
管理サーバ１１１は、どのテープ記憶媒体にどの世代のジャーナルデータが格納されているかを示す情報も管理する。
【０３７９】
第２のストレージシステム１６１内の論理ボリュームに、動的に記憶領域が割り当てられてもよい。すなわち、各論理ボリュームのうち、データが書き込まれた領域のみに物理的な記憶領域が割り当てられてもよい。この場合、各論理ボリュームが実際に使用している物理的な記憶領域の容量より大きい容量が各論理ボリュームに定義される場合がある。このような場合でも、各論理ボリュームに実際に格納されたデータのみがテープ記憶媒体に格納される。
【０３８０】
図２７は、本発明の第１の実施形態において、外部ストレージシステムに磁気テープ記憶装置が接続される場合のジャーナルデータの移動の説明図である。
【０３８１】
図２７では、図２５及び図２６の例と異なり、第２のストレージシステム１６１に、ネットワークを介して磁気テープ記憶装置１７３が接続される。そのネットワークには、さらにバックアップサーバ１７４が接続される。バックアップサーバ１７４は、第２のストレージシステム１６１の論理ボリュームに格納されたデータの磁気テープ記憶装置へのバックアップを制御する計算機である。
【０３８２】
例えば、図２５の場合と同様、第１のストレージシステム１２５に格納されたジャーナルデータのうち比較的古い世代のものが第２のストレージシステム１６１に移動し、さらに、第２のストレージシステム１６１に移動したジャーナルデータのうち比較的古いものが磁気テープ記憶装置１７３に格納されてもよい。
【０３８３】
第２のストレージシステム１６１には、移動したジャーナルデータを用いてＰ−ＶＯＬを復元するために必要なＰ−ＶＯＬの複製がさらに格納される。第２のストレージシステム１６１が第１のストレージシステム１２５から切り離された場合、第２のストレージシステム１６１に格納されたＰ−ＶＯＬの複製、ジャーナルデータ、及び、磁気テープ記憶装置１７３に格納されたジャーナルデータを用いて、Ｐ−ＶＯＬを復元することができる。
【０３８４】
磁気テープ記憶装置１７３には、ジャーナルデータのみが格納されてもよいし、ジャーナルデータに加えて、Ｐ−ＶＯＬの複製が格納されてもよいし、ある世代の論理ボリュームが格納されてもよい。
【０３８５】
次に、本発明の第２の実施形態について説明する。
【０３８６】
図２８は、本発明の第２の実施形態の計算機システムの構成を示すブロック図である。
【０３８７】
第２の実施形態の計算機システムは、第２のストレージシステム１６１が第４のストレージシステム１２８によって置き換えられている点、第１のストレージシステム１２５がリモートコピー（ＲＣ）用ポート１３４を備える点、及び、第１のストレージシステム１２５と第４のストレージシステム１２８とが第４のネットワーク１２４を介して接続される点を除き、第１の実施形態の計算機システムと同様である。
【０３８８】
第４のストレージシステム１２８は、例えば、第１のストレージシステム１２５と同等の構成及び機能を備えるストレージシステムである。第１のストレージシステム１２５のＲＣ用ポート１３４は、第４のネットワーク１２４を介して、第４のストレージシステム１２８のＲＣ用ポート（図示省略）に接続される。
【０３８９】
本実施形態の第１のストレージシステム１２５及び第４のストレージシステム１２８は、いわゆるリモートコピー機能を備える。すなわち、第１のストレージシステム１２５内の論理ボリュームと、第４のストレージシステム１２８内の論理ボリュームとがコピーペアを構成することができる。コピーペアに属する第１のストレージシステム１２５内の論理ボリュームにデータが書き込まれた場合、そのデータが、そのコピーペアに属する第４のストレージシステム１２８内の論理ボリュームにコピーされる。これによって、一つのコピーペアに属する二つの論理ボリュームに同一のデータが格納される。
【０３９０】
上記のようにリモートコピー機能を備えるストレージシステムを含む計算機システムにおいても、第４のストレージシステム１２８を第１の実施形態の外部ストレージシステムとして扱うことによって、第１の実施形態と同様のジャーナルデータの移動及び復元を実行することができる。
【０３９１】
さらに、第１のストレージシステム１２５と第４のストレージシステム１２８との間でリモートコピーが実行される場合、第４のストレージシステム１２８もカタログ管理情報３１１を保持する。このため、第４のストレージシステム１２８が第１のストレージシステム１２５から切り離された場合、図１４Ａに示す切り離しの処理を実行することができる。この場合、図１４Ａの第２のストレージシステム１６１が第４のストレージシステム１２８によって置き換えられる。
【図面の簡単な説明】
【０３９２】
【図１】本発明の第１の実施形態の計算機システムの構成を示すブロック図である。
【図２】本発明の第１の実施形態の第１のストレージシステム制御メモリに記憶されているコンピュータプログラム及び情報を示す説明図である。
【図３】本発明の第１の実施形態の管理サーバ制御メモリに記憶されているコンピュータプログラム及び情報を示す説明図である。
【図４Ａ】本発明の第１の実施形態のデバイス構成管理テーブルの説明図である。
【図４Ｂ】本発明の第１の実施形態のＬＵ管理テーブルの説明図である。
【図４Ｃ】本発明の第１の実施形態のＰ−ＶＯＬ構成管理テーブル及びそれに関連するテーブルの説明図である。
【図４Ｄ】本発明の第１の実施形態のＪＮＬ管理テーブルの説明図である。
【図４Ｅ】本発明の第１の実施形態のＰ−ＶＯＬ／ＪＮＬペア管理テーブルの説明図である。
【図５】本発明の第１の実施形態におけるカタログ管理情報テーブルのフォーマットの説明図である。
【図６】本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムに移動する処理の概要の説明図である。
【図７】本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムに移動する処理を示すフローチャートである。
【図８】本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムに移動する処理の別の例を示すフローチャートである。
【図９】本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムからリストアする処理の概要の説明図である。
【図１０】本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムからリストアする処理を示すフローチャートである。
【図１１】本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理の概要の説明図である。
【図１２】本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理を示すフローチャートである。
【図１３】本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理の別の例を示すフローチャートである。
【図１４Ａ】本発明の第１の実施形態におけるストレージシステムの切り離しの第１の類型の説明図である。
【図１４Ｂ】本発明の第１の実施形態におけるストレージシステムの切り離しの第２の類型の説明図である。
【図１４Ｃ】本発明の第１の実施形態におけるストレージシステムの切り離しの第３の類型の説明図である。
【図１４Ｄ】本発明の第１の実施形態におけるストレージシステムの切り離しの第４の類型の説明図である。
【図１５】本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理の、さらに別の例を示すフローチャートである。
【図１６】本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理の具体例の説明図である。
【図１７】本発明の第１の実施形態において実行される、Ｐ−ＶＯＬ及びジャーナルデータを外部ストレージシステムからリストアする処理の概要の説明図である。
【図１８】本発明の第１の実施形態において実行される、Ｐ−ＶＯＬ及びジャーナルデータを外部ストレージシステムからリストアする処理を示すフローチャートである。
【図１９】本発明の第１の実施形態においてＪＮＬデータ要素を格納する処理の概要を示す説明図である。
【図２０】本発明の第１の実施形態において、Ｂｅｆｏｒｅジャーナルが作成される場合に、Ｐ−ＶＯＬにライトデータ要素を書き込むライト処理の説明図である。
【図２１】本発明の第１の実施形態において、Ｂｅｆｏｒｅジャーナルが作成される場合の、作成されたジャーナルデータの例の説明図である。
【図２２】本発明の第１の実施形態において、Ａｆｔｅｒジャーナルが作成される場合に、Ｐ−ＶＯＬにライトデータ要素を書き込むライト処理の説明図である。
【図２３】本発明の第１の実施形態において実行される、世代間差分データをマージする処理を示すフローチャートである。
【図２４】本発明の第１の実施形態において実行されるマージ処理に関するデータ要素の動きを示す説明図である。
【図２５】本発明の第１の実施形態において、外部ストレージシステムがジャーナルデータを階層管理する場合のジャーナルデータの移動の説明図である。
【図２６】本発明の第１の実施形態において、外部ストレージシステムが磁気テープ記憶装置を備える場合のジャーナルデータの移動の説明図である。
【図２７】本発明の第１の実施形態において、外部ストレージシステムに磁気テープ記憶装置が接続される場合のジャーナルデータの移動の説明図である。
【図２８】本発明の第２の実施形態の計算機システムの構成を示すブロック図である。
【符号の説明】
【０３９３】
１０１  ホスト計算機
１１１  管理サーバ
１２５  第１のストレージシステム
１６１  第２のストレージシステム
１８７  Ｐ−ＶＯＬ
１８８  ＪＮＬ関連エリア
２２１  デバイス構成管理テーブル
２２２  ＬＵ管理テーブル
２２３  Ｐ−ＶＯＬ構成管理テーブル
２２４  ＪＮＬ管理テーブル
２２５  Ｐ−ＶＯＬ／ＪＮＬペア管理テーブル
２３１  ＪＮＬ情報テーブル
２３２  ＪＮＬ制御情報テーブル
２３３  ＪＮＬデータ
３１１  カタログ管理情報テーブル
４４３  差分ＢＭ
４５１  ＪＮＬデータ要素
２２０１  第３のストレージシステム
【図１】
2010079526.tif 000003
【図２】
2010079526.tif 000004
【図３】
2010079526.tif 000005
【図４Ａ】
2010079526.tif 000006
【図４Ｂ】
2010079526.tif 000007
【図４Ｃ】
2010079526.tif 000008
【図４Ｄ】
2010079526.tif 000009
【図４Ｅ】
2010079526.tif 000010
【図５】
2010079526.tif 000011
【図６】
2010079526.tif 000012
【図７】
2010079526.tif 000013
【図８】
2010079526.tif 000014
【図９】
2010079526.tif 000015
【図１０】
2010079526.tif 000016
【図１１】
2010079526.tif 000017
【図１２】
2010079526.tif 000018
【図１３】
2010079526.tif 000019
【図１４Ａ】
2010079526.tif 000020
【図１４Ｂ】
2010079526.tif 000021
【図１４Ｃ】
2010079526.tif 000022
【図１４Ｄ】
2010079526.tif 000023
【図１５】
2010079526.tif 000024
【図１６】
2010079526.tif 000025
【図１７】
2010079526.tif 000026
【図１８】
2010079526.tif 000027
【図１９】
2010079526.tif 000028
【図２０】
2010079526.tif 000029
【図２１】
2010079526.tif 000030
【図２２】
2010079526.tif 000031
【図２３】
2010079526.tif 000032
【図２４】
2010079526.tif 000033
【図２５】
2010079526.tif 000034
【図２６】
2010079526.tif 000035
【図２７】
2010079526.tif 000036
【図２８】
2010079526.tif 000037