(57)【特許請求の範囲】
【請求項１】
ネットワークに接続される第１のストレージシステムと、前記第１のストレージシステムに接続される第２のストレージシステムを備え、
前記第１のストレージシステムは、
データを格納する第１の物理記憶装置と、前記ネットワークに接続されて、前記第１の物理記憶装置へのデータの書き込みおよび読み出しを制御する第１のコントローラを備え、
前記第２のストレージシステムは、
データを格納する第２の物理記憶装置と、前記第１のストレージシステムに接続されて、前記第２の物理記憶装置へのデータの書き込みおよび読み出しを制御する第２のコントローラを備え、
前記第１のコントローラは、前記第１の物理記憶装置の記憶領域を、第１論理ボリュームと第２論理ボリュームを含む複数の論理ボリュームとして管理し、前記複数の論理ボリュームの中のいずれかの論理ボリュームに属するデータのうちバックアップ対象のデータを前記第２のストレージシステムに送信し、
前記第２のコントローラは、前記第２の物理記憶装置の記憶領域を、第３の論理ボリュームを含む複数の論理ボリュームとして管理し、圧縮後に暗号化されたデータを前記第３の論理ボリュームに格納し、
さらに、前記第３の論理ボリュームを含む複数の論理ボリュームとして、圧縮前のジャーナルデータを格納する第３の論理ボリュームと、圧縮後のジャーナルデータを格納する第４の論理ボリュームを備え、前記第１の論理ボリュームと前記第２の論理ボリュームを含む複数の論理ボリュームとして、前記第３の論理ボリュームに対応して仮想化されて、前記圧縮前のジャーナルデータを格納する仮想化論理ボリュームとスナップショットの対象となるデータを格納するオンラインボリュームを備え、
前記第１のコントローラは、前記ネットワークに接続されたホスト計算機からのコマンドに従って前記オンラインボリュームのスナップショットを取るとともに、前記オンラインボリュームのデータが更新されていないときには、前記オンラインボリュームのデータを前記仮想化論理ボリュームに格納し、
前記圧縮前のジャーナルデータに対する圧縮・暗号化処理を行うときには、前記第２のコントローラから、前記第３の論理ボリュームに格納された前記圧縮前のジャーナルデータを取り込み、前記取り込んだ圧縮前のジャーナルデータを圧縮し、前記圧縮されたジャーナルデータを暗号化し、前記圧縮後に暗号化されたジャーナルデータを前記第２のコントローラに転送し、
前記第２のコントローラは、前記第１のコントローラから転送された、前記圧縮後に暗号化されたジャーナルデータを前記第４の論理ボリュームに格納してなる、計算機システム。
【請求項２】
ネットワークに接続される第１のストレージシステムと、前記第１のストレージシステムに接続される第２のストレージシステムを備え、
前記第１のストレージシステムは、
データを格納する第１の物理記憶装置と、前記ネットワークに接続されて、前記第１の物理記憶装置へのデータの書き込みおよび読み出しを制御する第１のコントローラを備え、
前記第２のストレージシステムは、
データを格納する第２の物理記憶装置と、前記第１のストレージシステムに接続されて、前記第２の物理記憶装置へのデータの書き込みおよび読み出しを制御する第２のコントローラを備え、
前記第１のコントローラは、前記第１の物理記憶装置の記憶領域を、第１論理ボリュームと第２論理ボリュームを含む複数の論理ボリュームとして管理し、前記複数の論理ボリュームの中のいずれかの論理ボリュームに属するデータのうちバックアップ対象のデータを前記第２のストレージシステムに送信し、その後、前記バックアップ対象のデータを前記第２のストレージシステムから受信したときに、前記受信したデータを圧縮し、前記圧縮されたデータを暗号化し、前記圧縮後に暗号化されたデータを前記第２のストレージシステムに送信し、
前記第２のコントローラは、前記第２の物理記憶装置の記憶領域を、第３の論理ボリュームを含む複数の論理ボリュームとして管理し、前記第１のストレージシステムから、前記バックアップ対象のデータを受信したときに、前記第３の論理ボリュームに一旦格納し、その後、前記第３の論理ボリュームに格納した前記バックアップ対象のデータを前記第１のストレージシステムに送信し、前記第１のストレージシステムから、前記圧縮後に暗号化されたデータを受信したときには、前記受信したデータを前記第３の論理ボリュームに格納してなる、計算機システム。
【請求項３】
ネットワークに接続される第１のストレージシステムと、前記第１のストレージシステムに接続される第２のストレージシステムを備え、
前記第１のストレージシステムは、
データを格納する第１の物理記憶装置と、前記ネットワークに接続されて、前記第１の物理記憶装置へのデータの書き込みおよび読み出しを制御する第１のコントローラを備え、
前記第２のストレージシステムは、
データを格納する第２の物理記憶装置と、前記第１のストレージシステムに接続されて、前記第２の物理記憶装置へのデータの書き込みおよび読み出しを制御する第２のコントローラを備え、
前記第１のコントローラは、前記第１の物理記憶装置の記憶領域を、第１論理ボリュームと第２論理ボリュームを含む複数の論理ボリュームとして管理し、前記複数の論理ボリュームの中のいずれかの論理ボリュームに属するデータのうちバックアップ対象のデータを暗号化し、前記暗号化されたデータを前記第２のストレージシステムに送信し、その後、前記第２のストレージシステムから前記暗号化されたデータを受信したときに、前記受信したデータを復号化し、前記復号化されたデータを圧縮するとともに、前記圧縮されたデータを暗号化し、前記圧縮後に暗号化されたデータを前記第２のストレージシステムに送信し、
前記第２のコントローラは、前記第２の物理記憶装置の記憶領域を、第３の論理ボリュームを含む複数の論理ボリュームとして管理し、前記第１のストレージシステムから、前記暗号化されたデータを受信したときに、前記暗号化されたデータを前記第３の論理ボリュームに一旦格納し、その後、前記第３の論理ボリュームに格納した、前記暗号化されたデータを前記第１のストレージシステムに送信し、前記第１のストレージシステムから、前記圧縮後に暗号化されたデータを受信したときには、前記受信したデータを前記第３の論理ボリュームとは異なる第４の論理ボリュームに格納してなる、計算機システム。
【請求項４】
ネットワークに接続される第１のストレージシステムと、前記第１のストレージシステムに接続される第２のストレージシステムを備え、
前記第１のストレージシステムは、
データを格納する第１の物理記憶装置と、前記ネットワークに接続されて、前記第１の物理記憶装置へのデータの書き込みおよび読み出しを制御する第１のコントローラを備え、
前記第２のストレージシステムは、
データを格納する第２の物理記憶装置と、前記第１のストレージシステムに接続されて、前記第２の物理記憶装置へのデータの書き込みおよび読み出しを制御する第２のコントローラと、
前記第１のストレージシステムと前記第２のストレージシステムとを結び、前記第１のストレージシステムおよび前記第２のストレージシステムとデータの授受を行う外部装置を備え、
前記第１のコントローラは、前記第１の物理記憶装置の記憶領域を、第１論理ボリュームと第２論理ボリュームを含む複数の論理ボリュームとして管理し、前記複数の論理ボリュームの中のいずれかの論理ボリュームに属するデータのうちバックアップ対象のデータを前記外部装置に送信し、その後、前記外部装置から復号化されたデータを受信したときに、前記受信したデータを圧縮し、前記圧縮されたデータを前記外部装置に送信し、
前記外部装置は、前記第１のストレージシステムから、前記バックアップ対象のデータを受信したときに、前記受信したデータを暗号化し、前記圧縮前に暗号化されたデータを前記第２のストレージシステムに送信し、その後、前記第２のストレージシステムから、前記圧縮前に暗号化されたデータを受信したときに、前記受信したデータを復号化し、前記復号化されたデータを前記第１のストレージシステムに送信し、その後、前記第１のストレージシステムから、前記圧縮されたデータを受信したときには、前記受信したデータを暗号化し、前記圧縮後に暗号化されたデータを前記第２のストレージシステムに送信し、
前記第２のコントローラは、前記第２の物理記憶装置の記憶領域を、第３の論理ボリュームを含む複数の論理ボリュームとして管理し、前記外部装置から、前記圧縮前に暗号化されたデータを受信したときに、前記圧縮前に暗号化されたデータを前記第３の論理ボリュームに一旦格納し、その後、前記第３の論理ボリュームに格納された、前記圧縮前に暗号化されたデータを前記外部装置に送信し、前記外部装置から、前記圧縮後に暗号化されたデータを受信したときには、前記受信したデータを前記第３の論理ボリュームとは異なる第４の論理ボリュームに格納してなる、計算機システム。
【請求項５】
ネットワークに接続される第１のストレージシステムと、前記第１のストレージシステムに接続される第２のストレージシステムを備え、
前記第１のストレージシステムは、
データを格納する第１の物理記憶装置と、前記ネットワークに接続されて、前記第１の物理記憶装置へのデータの書き込みおよび読み出しを制御する第１のコントローラを備え、
前記第２のストレージシステムは、
データを格納する第２の物理記憶装置と、前記第１のストレージシステムに接続されて、前記第２の物理記憶装置へのデータの書き込みおよび読み出しを制御する第２のコントローラを備え、
前記第１のコントローラは、前記第１の物理記憶装置の記憶領域を、第１論理ボリュームと第２論理ボリュームを含む複数の論理ボリュームとして管理するステップと、
前記複数の論理ボリュームの中のいずれかの論理ボリュームに属するデータのうちバックアップ対象のデータを前記第２のストレージシステムに送信するステップと、
前記ステップの後、前記バックアップ対象のデータを前記第２のストレージシステムから受信したときに、前記受信したデータを圧縮するとともに、前記圧縮されたデータを暗号化するステップと、
前記ステップで圧縮後に暗号化されたデータを前記第２のストレージシステムに送信するステップを実行し、
前記第２のコントローラは、前記第２の物理記憶装置の記憶領域を、第３の論理ボリュームを含む複数の論理ボリュームとして管理するステップと、
前記第１のストレージシステムから、前記バックアップ対象のデータを受信したときに、前記第３の論理ボリュームに一旦格納するステップと、
前記ステップの後、前記第３の論理ボリュームに格納した前記バックアップ対象のデータを前記第１のストレージシステムに送信するステップと、
前記第１のストレージシステムから、前記圧縮後に暗号化されたデータを受信したときには、前記受信したデータを前記第３の論理ボリュームに格納するステップを実行する、計算機システムのデータ制御方法。
【請求項６】
ネットワークに接続される第１のストレージシステムと、前記第１のストレージシステムに接続される第２のストレージシステムを備え、
前記第１のストレージシステムは、
データを格納する第１の物理記憶装置と、前記ネットワークに接続されて、前記第１の物理記憶装置へのデータの書き込みおよび読み出しを制御する第１のコントローラを備え、
前記第２のストレージシステムは、
データを格納する第２の物理記憶装置と、前記第１のストレージシステムに接続されて、前記第２の物理記憶装置へのデータの書き込みおよび読み出しを制御する第２のコントローラを備え、
前記第１のコントローラは、前記第１の物理記憶装置の記憶領域を、第１論理ボリュームと第２論理ボリュームを含む複数の論理ボリュームとして管理するステップと、
前記複数の論理ボリュームの中のいずれかの論理ボリュームに属するデータのうちバックアップ対象のデータを暗号化するステップと、
前記ステップで暗号化されたデータを前記第２のストレージシステムに送信するステップと、
前記ステップの後、前記第２のストレージシステムから前記暗号化されたデータを受信したときに、前記受信したデータを復号化するステップと、
前記ステップで復号化されたデータを圧縮するとともに、前記圧縮されたデータを暗号化するステップと、
前記ステップで圧縮後に暗号化されたデータを前記第２のストレージシステムに送信するステップを実行し、
前記第２のコントローラは、前記第２の物理記憶装置の記憶領域を、第３の論理ボリュームを含む複数の論理ボリュームとして管理するステップと、
前記第１のストレージシステムから、前記暗号化されたデータを受信したときに、前記暗号化されたデータを前記第３の論理ボリュームに一旦格納するステップと、
前記ステップの後、前記第３の論理ボリュームに格納した、前記暗号化されたデータを前記第１のストレージシステムに送信するステップと、
前記第１のストレージシステムから、前記圧縮後に暗号化されたデータを受信したときには、前記受信したデータを前記第３の論理ボリュームとは異なる第４の論理ボリュームに格納するステップを実行する、計算機システムのデータ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージシステムを構成する計算機システムにおけるデータの管理技術に関する。
【背景技術】
【０００２】
ストレージシステムを構成する計算機システムが備える機能として、例えばスナップショット機能およびジャーナル機能が知られている。
【０００３】
スナップショット機能とは、ある時点、例えば、ホストからスナップショット取得要求を受けた時点のある論理ボリュームのイメージを保持する機能である。スナップショット機能を定期的に実行することによって、論理ボリューム内のデータのレプリケーション（すなわちバックアップ）を間欠的に取得することができる。さらに、スナップショット機能によって、スナップショット取得時点の論理ボリュームをリストアすることができる。
【０００４】
ジャーナル機能とは、ホスト計算機からのライトコマンドで指定されている論理ボリュームにライトデータを書き込む場合に、そのライトデータおよびその書き込みに関する制御情報を含むデータ（ジャーナル）を作成し、作成したジャーナルを保存する機能である。
【０００５】
特許文献１には、スナップショット機能によって取得したスナップショットに、ジャーナル内のライトデータを書き込むことによって、スナップショットを作成したポイント以外のポイントにおいて実行されるリカバリ処理について開示されている。特許文献１では、ジャーナル採取が繰り返されて、ジャーナルボリュームが満杯になると、それ以降のデータ回復が不可能になることを考慮し、ジャーナルボリュームの未使用量が限界値を下回ったときには、スナップショットにジャーナルエントリを適用してスナップショットを更新し、ジャーナルボリューム内の未使用容量を増大させるようにしている。
【０００６】
特許文献２には、スナップショットとジャーナルの切り替えについての開示がある。特許文献２では、バックアップのための時間長を確保しずらい状態になったときには、スナップショットモードに変えてジャーナルモードに切り替えることで、効果的なバックアップやリストアを行うようにしている。
【０００７】
特許文献３には、スナップショットのリストアボリュームの運用についての開示がある。特許文献３では、リストア処理時に、差分ボリュームから更新差分のデータのみを運用ボリュームへコピーしているので、転送するデータ量を削減して、リストア中のストレージ装置の負荷を低減することができる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００５−１８７３８号公報
【特許文献２】特開２００７−８０１３１号公報
【特許文献３】特開２００７−１３３４７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかし、特許文献１、２、３では、データを保存するときに、データ量を少なくすることには配慮されていない。すなわち、データを保存するとき、例えば、スナップショット機能を用いて取得したデータを保存する場合、保存するバックアップの世代が増えるほど、格納すべきデータ量が増大するため、ストレージシステムのディスク容量が不足する。この際、データを圧縮した状態で格納することができる。
【００１０】
さらに、データの安全性を考慮して、データの暗号化も行おうとして、データを暗号化してから圧縮すると、データを効率良く圧縮することができず、バックアップすべきデータの容量を少なくすることが困難である。
【００１１】
本発明は、前記従来技術の課題に鑑みて為されたものであり、その目的は、データを暗号化かつ圧縮し格納するデータの容量を少なくすることができる計算機システムとそのデータ制御方法を提供することにある。
【課題を解決するための手段】
【００１２】
前記目的を達成するために、本発明は、第１のストレージシステムでバックアップ対象のデータをバックアップ先に移動するに際して、バックアップ対象のデータを圧縮してから暗号化することを特徴とするものである。
【発明の効果】
【００１３】
本発明によれば、データを安全にバックアップすることができるとともに、バックアップすべきデータの容量を少なくすることができる。
【図面の簡単な説明】
【００１４】
【図１】本発明に係る計算機システムの構成を示すブロック図である。
【図２】本発明に係る第１のストレージシステムの制御メモリに記憶されているコンピュータプログラム及び情報を示す説明図である。
【図３】本発明に係る管理サーバの制御メモリに記憶されているコンピュータプログラム及び情報を示す説明図である。
【図４Ａ】本発明の第１の実施形態におけるデバイス構成管理テーブルの説明図である。
【図４Ｂ】本発明の第１の実施形態におけるＬＵ管理テーブルの説明図である。
【図４Ｃ】本発明の第１の実施形態におけるP-VOL構成管理テーブル及びそれに関連するテーブルの説明図である。
【図４Ｄ】本発明の第１の実施形態におけるJNL管理テーブルの説明図である。
【図４Ｅ】本発明の第１の実施形態におけるP-VOL／JNLペア管理テーブルの説明図である。
【図５】本発明の第１の実施形態におけるカタログ管理情報テーブルのフォーマットの説明図である。
【図６】本発明の第１の実施形態における暗号鍵管理情報テーブルのフォーマットの説明図である。
【図７】本発明の第１の実施形態においてJNLデータ要素を格納する処理の概要を示す説明図である。
【図８】本発明の第１の実施形態において、Ｂｅｆｏｒｅジャーナルが作成される場合に、P-VOLにライトデータ要素を書き込むライト処理の説明図である。
【図９】本発明の第１の実施形態において、Ｂｅｆｏｒｅジャーナルが作成される場合の、作成されたジャーナルデータの例の説明図である。
【図１０】本発明の第１の実施形態において、Ａｆｔｅｒジャーナルが作成される場合に、P-VOLにライトデータ要素を書き込むライト処理の説明図である。
【図１１】本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムに移動する処理の概要の説明図である。
【図１２】本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムに移動する処理を示すフローチャートである。
【図１３】本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムに移動する処理の別の例を示すフローチャートである。
【図１４】本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムからリストアする処理の概要の説明図である。
【図１５】本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムからリストアする処理を示すフローチャートである。
【図１６】本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理の概要の説明図である。
【図１７】本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理を示すフローチャートである。
【図１８】本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理の別の例を示すフローチャートである。
【図１９Ａ】本発明の第１の実施形態におけるストレージシステムの切り離しの第１の類型の説明図である。
【図１９Ｂ】本発明の第１の実施形態におけるストレージシステムの切り離しの第２の類型の説明図である。
【図１９Ｃ】本発明の第１の実施形態におけるストレージシステムの切り離しの第３の類型の説明図である。
【図１９Ｄ】本発明の第１の実施形態におけるストレージシステムの切り離しの第４の類型の説明図である。
【図２０】本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理の、さらに別の例を示すフローチャートである。
【図２１】本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理の具体例の説明図である。
【図２２】本発明の第１の実施形態において実行される、P-VOL及びジャーナルデータを外部ストレージシステムからリストアする処理の概要の説明図である。
【図２３】本発明の第１の実施形態において実行される、P-VOL及びジャーナルデータを外部ストレージシステムからリストアする処理を示すフローチャートである。
【図２４】本発明の第１の実施形態において実行される、世代間差分データをマージする処理を示すフローチャートである。
【図２５】本発明の第１の実施形態において実行されるマージ処理に関するデータ要素の動きを示す説明図である。
【図２６】本発明の第１の実施形態において、外部ストレージシステムがジャーナルデータを階層管理する場合のジャーナルデータの移動の説明図である。
【図２７】本発明の第１の実施形態において、外部ストレージシステムが磁気テープ記憶装置を備える場合のジャーナルデータの移動の説明図である。
【図２８】本発明の第１の実施形態において、外部ストレージシステムに磁気テープ記憶装置が接続される場合のジャーナルデータの移動の説明図である。
【図２９】本発明の第１の実施形態において実行される、第１の方式のデータ移動処理の説明図である。
【図３０】本発明の第１の実施形態において実行される、第１の方式のデータ圧縮・暗号化処理の説明図である。
【図３１】本発明の第１の実施形態において実行される、JNL情報テーブルの更新処理の説明図である。
【図３２】本発明の第１の実施形態において実行される、S-VOLのデータ暗号化処理の説明図である。
【図３３】本発明の第１の実施形態において実行される、第２の方式のデータ圧縮・暗号化処理の説明図である。
【図３４】本発明の第１の実施形態において実行される、第３の方式のデータ暗号化処理の説明図である。
【図３５】本発明の第１の実施形態において実行される、第３の方式のデータ圧縮・暗号化処理の説明図である。
【図３６】第１の方式を用いて外部の暗号化装置でデータを暗号化するときの処理の説明図である。
【図３７】第２の方式を用いて外部の暗号化装置でデータを暗号化する処理の説明図である。
【図３８】第３の方式を用いて外部の暗号化装置でデータの暗号化の処理を行うときの説明図である。
【図３９】外部の暗号化装置を用いてリストア処理を行うときの説明図である。
【図４０】第１のストレージシステムを外部ストレージから切り離した後、オンラインVOLとジャーナルデータを構築するときの処理の説明図である。
【図４１】第１のストレージシステムを外部ストレージから切り離した後、外部の暗号化装置を用いてデータを構築するときの処理の説明図である。
【図４２】鍵情報管理方法の処理を説明するための説明図であって、鍵情報を第１のストレージシステム外へ退避するときの処理の説明図である。
【図４３】鍵情報管理方法を説明するための説明図であって、保守管理端末を用いて第１のストレージシステムに暗号鍵をリストアするときの処理の説明図である。
【図４４】データの圧縮を第１のストレージシステムで行い、データの暗号化を第２のストレージシステムで行うときの処理の説明図である。
【図４５】データの圧縮・暗号化を第２のストレージシステムで行うときの処理の説明図である。
【図４６】データの圧縮・暗号化を第１のストレージシステムで行うとともに第１のストレージシステムに格納するときの処理の説明図である。
【図４７】レプリケーションのデータを圧縮・暗号化するときの処理の説明図である。
【図４８】Copy  On  Writeのときのデータ圧縮・暗号化処理を説明するための説明図である。
【図４９】シンプロビジョニング技術を用いてデータを圧縮・暗号化するときの処理を説明するための説明図である。
【図５０】P-VOL管理情報テーブルのフォーマットの説明図である。
【図５１】本発明の第２の実施形態の計算機システムの構成を示すブロック図である。
【発明を実施するための形態】
【００１５】
本実施形態は、第１のストレージシステムでバックアップ対象のデータをバックアップ先に移動するに際して、バックアップ対象のデータを圧縮してから暗号化するものである。
【００１６】
本実施形態の計算機システムは、一つ以上のホスト計算機１０１、管理サーバ１１１、第１のストレージシステム１２５及び第２のストレージシステム１６１を備える。第１のストレージシステム１２５は、第１のネットワーク１２１を介してホスト計算機１０１に接続される。第２のストレージシステム１６１は、第２のネットワーク１２３を介して第１のストレージシステム１２５に接続される。一つ以上のホスト計算機１０１、管理サーバ１１１、第１のストレージシステム１２５及び第２のストレージシステム１６１は、第３のネットワーク１０８を介して相互に接続される。
【００１７】
第１のネットワーク１２１、第２のネットワーク１２３及び第３のネットワーク１０８は、いかなる種類のネットワークであってもよい。例えば、第１のネットワーク１２１及び第２のネットワーク１２３は、いわゆるSAN（Storage  Area  Network）であってもよい。第３のネットワーク１０８は、いわゆるLAN（Local  Area  Network）であってもよい。
【００１８】
ホスト計算機１０１は、ストレージシステム１２５によって提供される論理ボリュームにアクセスする計算機である。ホスト計算機１０１は、CPU（Central  Processing  Unit）１０３、メモリ１０６、補助記憶デバイス１０４、入力装置（例えばキーボード及びポインティングデバイス）１０２、出力装置（例えば、表示装置）１０５、第１のネットワーク１２１に接続されるストレージアダプタ（例えばホストバスアダプタ）１０９、及び、第３のネットワーク１０８に接続されるネットワークアダプタ１０７を備える。
【００１９】
メモリ１０６には、CPU１０３によって実行されるプログラムが格納される。本実施形態のメモリ１０６には、少なくとも、アプリケーションプログラム（AP）６０１及びストレージシステムエージェントプログラム６０２が格納される。
【００２０】
メモリ１０６に格納されたプログラムを実行するCPU１０３は、必要に応じて、ストレージアダプタ１０９を介して、アドレスを指定したI/Oコマンド（ライトコマンド又はリードコマンド）を送信する。
【００２１】
管理サーバ１１１は、第３のネットワーク１０８に接続されているホスト計算機１０１、第１のストレージシステム１２５及び第２のストレージシステム１６１を管理する計算機である。管理サーバ１１１は、CPU１１３、メモリ１１６、補助記憶デバイス１１４、入力装置（例えばキーボード及びポインティングデバイス）１１２、出力装置（例えば、表示装置）１１５、及び、第３のネットワーク１０８に接続されるネットワークアダプタ１１７を備える。
【００２２】
CPU１１３は、ネットワークアダプタ１１７を介して、コマンドを、第３のネットワーク１０８に接続されているホスト計算機１０１、第１のストレージシステム１２５又は第２のストレージシステム１６１に送信する。メモリ１１６は、図３に示すコンピュータプログラム及び情報を記憶するメモリである。
【００２３】
第１のストレージシステム１２５は、複数のコントローラ１４０と記憶デバイス群とを備える。各コントローラ１４０は、第１のコントローラとして、例えば、複数のフロントエンドインタフェース１２７と、複数のバックエンドインタフェース１３７と、第１の内部ネットワーク１５６と、一以上のキャッシュメモリ１４７と、一以上の制御メモリ１４５と、一以上の制御プロセッサ１４３とを備える。記憶デバイス群は、複数の物理記憶デバイス（以下、「PDEV」と記載する）１５１で構成される。各コントローラ１４０は、パス（あるいはスイッチ、ネットワーク）１５６１を介して他のコントローラ１４０に接続されている。各コントローラ１４０の制御プロセッサ１４３は、自コントローラ１４０内のキャッシュメモリ１４７や他のコントローラ１４０内のキャッシュメモリ１４７内のデータをリードライトすることができる。
【００２４】
フロントエンドインタフェース１２７は、ストレージシステム１２５にネットワークを介して接続されたホスト計算機１０１又は第２のストレージシステム１６１と通信するためのインタフェース回路である。従って、ストレージシステム１２５は、少なくとも二つのフロントエンドインタフェース１２７を備え、それらのうち一つは第１のネットワーク１２１に接続され、別の一つは第２のネットワーク１２３に接続される。
【００２５】
フロントエンドインタフェース１２７は、例えば、第１のネットワーク１２１又は第２のネットワーク１２３に接続されるポート１２９と、メモリ１３１と、ローカルルータ（以下、「LR」と略記する）１３３とを備える。LR１３３に、ポート１２９及びメモリ１３１が接続される。
【００２６】
LR１３３は、ポート１２９を介して受けたデータを任意の制御プロセッサ１４３で処理するために振り分ける。具体的には、例えば、制御プロセッサ１４３が、或るアドレスを指定するI/Oコマンドをその制御プロセッサ１４３に実行させるようにLR１３３を設定する。その設定に従って、LR１３３が、I／Oコマンド及びデータを振り分ける。
【００２７】
また、LR１３３は、データを暗号化する暗号回路１３３１と、暗号化されたデータを復号化する復号回路１３３２と、データを圧縮する圧縮回路１３３３と、圧縮されたデータを伸長する伸長回路１３３４を備えている。
【００２８】
バックエンドインタフェース１３７は、PDEV１５１と通信するためのインタフェース回路である。バックエンドインタフェース１３７は、例えば、PDEV１５１に接続されるディスクインタフェース１４１と、メモリ１３５と、LR１３９と、を備える。ＬＲ１３９に、ディスクインタフェース１４１及びメモリ１３５が接続される。
【００２９】
第１の内部ネットワーク１５６は、例えば、スイッチ（例えばクロスバスイッチ）或いはバスで構成される。第１の内部ネットワーク１５６に、複数のフロントエンドインタフェース１２７、複数のバックエンドインタフェース１３７、一以上のキャッシュメモリ１４７、一以上の制御メモリ１４５及び一以上の制御プロセッサ１４３が接続されている。これらの要素間の通信は、第１の内部ネットワーク１５６を介して行われる。
【００３０】
キャッシュメモリ１４７は、ホスト計算機１０１からのI／Oコマンドに従って読み出される又は書き込まれるデータを一時記憶するメモリである。
【００３１】
制御メモリ１４５は、種々のコンピュータプログラム及び情報を記憶するメモリである。制御メモリ１４５に格納されるコンピュータプログラム及び情報の内容については後述する（図２等参照）。
【００３２】
制御プロセッサ１４３は、コントローラによる制御を実現するプロセッサである。具体的には、制御プロセッサ１４３は、制御メモリ１４５に記憶されている種々のコンピュータプログラムを実行することで、後述する処理を実行する。
【００３３】
PDEV１５１は、不揮発性の記憶デバイスであり、例えば、ハードディスクドライブ（HDD）或いはフラッシュメモリデバイス（FM）である。二以上のPDEV１５１によって、RAIDの規則に従うPDEVグループであるRAID（Redundant  Array  of  Independent  Disks）グループが構成されてもよい。
【００３４】
コントローラの構成要素であるフロントエンドインタフェース１２７、バックエンドインタフェース１３７、キャッシュメモリ１４７、制御メモリ１４５及び制御プロセッサ１４３に、第２の内部ネットワーク（例えばLAN）１５５が接続され、その第２の内部ネットワーク１５５に、保守管理端末１５３が接続される。保守管理端末１５３は、第３のネットワーク１０８にも接続されており、ストレージシステム１２５を保守又は管理する計算機である。ストレージシステム１２５の保守員は、例えば、保守管理端末１５３（又は、その保守管理端末１５３と通信可能な管理サーバ１１１）を操作して、制御メモリ１４５に記憶される種々の情報を定義することができる。
【００３５】
第２のストレージシステム１６１は、コントローラ１６５及びPDEV１６３を備える。コントローラ１６５は、第２のコントローラとして、例えば、ネットワークアダプタ１６２と、ホストアダプタ１６４と、キャッシュメモリ１７２と、制御メモリ１７１と、プロセッサ１６７と、ストレージアダプタ１６９と、を備える。
【００３６】
ネットワークアダプタ１６２は、第３のネットワーク１０８に接続され、管理サーバ１１１と通信するインタフェースである。
【００３７】
ホストアダプタ１６４は、第２のネットワーク１２３に接続され、第１のストレージシステム１２５と通信するインタフェースである。ホストアダプタ１６４は、例えば、第１のストレージシステム１２５のフロントエンドインタフェース１２７と同様のものであってもよい。
【００３８】
制御メモリ１７１は、種々のコンピュータプログラム及び情報を記憶するメモリである。
【００３９】
キャッシュメモリ１７２は、第１のストレージシステム１２５からのI／Oコマンドに従って読み出される又は書き込まれるデータを一時記憶するメモリである。
【００４０】
プロセッサ１６７は、制御メモリ１７１に記憶されている種々のコンピュータプログラムを実行する。少なくとも、プロセッサ１６７は、第１のストレージシステム１２５からのI／Oコマンドに従って、キャッシュメモリ１７２及びPDEV１６３に対するデータの書き込み及び読み出しを制御する。
【００４１】
PDEV１６３は、物理記憶デバイスであり、例えば、第１のストレージシステムのPDEV１５１と同様のものであってもよい。あるいは、PDEVは、テープ記憶媒体であってもよい。
【００４２】
本実施形態の第１のストレージシステム１２５は、いわゆる外部接続機能を備える。第２のストレージシステム１６１は、この機能によって第１のストレージシステム１２５に外部接続されている。ここで、外部接続について説明する。
【００４３】
既に説明したように、第１のストレージシステム１２５は、一つ又は複数の論理ボリュームをホスト計算機１０１に提供する。各論理ボリュームは、ホスト計算機１０１によって一つの記憶デバイスと認識される。例えば、第１のストレージシステム１２５が提供する論理ボリュームが、第１のストレージシステム１２５内のPDEV１５１に対応付けられてもよい。その場合、第１のストレージシステム１２５は、論理ボリュームへのライトコマンドを受信すると、その論理ボリュームに対応付けられたPDEV１５１にデータを格納する。このような論理ボリュームは、以下の説明において通常ボリュームとも記載される。
【００４４】
あるいは、第１のストレージシステム１２５が提供する論理ボリュームは、第２のストレージシステム１６１内のPDEV１６３に対応付けられてもよい。この場合、第１のストレージシステム１２５は、論理ボリュームへのライトコマンドを受信すると、その論理ボリュームに対応付けられたPDEV１６３にデータを書き込むためのライトコマンドを生成し、生成したライトコマンドを第２のストレージシステム１６１に送信する。第２のストレージシステム１６１は、第１のストレージシステム１２５から受信したライトコマンドに従って、データをPDEV１６３に格納する。このような論理ボリュームは、以下の説明において仮想ボリュームとも記載される。
【００４５】
このように、第１のストレージシステム１２５が提供する論理ボリュームに格納されるデータを、実際には第１のストレージシステム１２５の外部に接続された第２のストレージシステム１６１に格納する機能が、外部接続機能と呼ばれる。
【００４６】
なお、以下の説明において、上記のような外部接続機能を利用して外部接続されたストレージシステムを、外部ストレージシステムとも記載する。第１の実施形態において、第２のストレージシステム１６１が、外部ストレージシステムである。
【００４７】
図２は、本発明の第１の実施形態の第１のストレージシステム１２５の制御メモリ１４５に記憶されているコンピュータプログラム及び情報を示す説明図である。
【００４８】
以下の説明において、プログラムが実行する処理は、実際には、そのプログラムを実行する制御プロセッサ１４３が行う処理である。
【００４９】
制御メモリ１４５には、R/Wプログラム２０１、CoW（Copy  on  Write）プログラム２０２、移動可否判定プログラム２０３、移動対象決定プログラム２０４、ジャーナル（JNL）管理プログラム２０５、JNLバックアッププログラム２０６、JNLリストアプログラム２０７、JNLマージプログラム２０８、P-VOL作成プログラム２０９、複製P-VOL／JNLコピープログラム２１０、P-VOL／JNLペア管理プログラム２１１、圧縮プログラム２１２、暗号・復号プログラム２１３、デバイス構成管理テーブル２２１、LU管理テーブル２２２、P-VOL構成管理テーブル２２３、JNL管理テーブル２２４及びP-VOL／JNLペア管理テーブル２２５、暗号鍵管理テーブル２２６が記憶される。
【００５０】
R/Wプログラム２０１は、ホスト計算機１０１からのI／Oコマンドに従うI／Oを制御する。JNLマージプログラム２０８は、複数の世代の世代間差分データをマージする。JNLバックアッププログラム２０６は、ジャーナルデータを第２のストレージシステム１６１へバックアップするために環境を作る。JNLリストアプログラム２０７は、第２のストレージシステム１６１にバックアップしたジャーナルデータをストレージシステム１２５内で指定された世代のボリュームとして復元する。
【００５１】
図３は、本発明の第１の実施形態の管理サーバ１１１のメモリ１１６に記憶されているコンピュータプログラム及び情報を示す説明図である。
【００５２】
メモリ１１６には、移動可否判定プログラム３０１、移動対象決定プログラム３０２、カタログ管理プログラム３０３及びカタログ管理情報テーブル３１１が記憶される。
【００５３】
次に、本実施形態のジャーナル（JNL）データのフォーマットについて、図４Aから図４Eを参照して説明する。
【００５４】
本実施形態において、ジャーナルデータとは、所望の時点におけるP-VOLのイメージを保存するために、第１のストレージシステム１２５のスナップショット機能によって作成されるデータである。なお、P-VOL（Primary  Volume）とは、ホスト計算機１０１によるデータI/Oの対象として指定される論理ボリュームである。後述するように、例えば現在のP-VOLのデータにジャーナルデータを反映させることによって、指定された世代のP-VOL（言い換えると、過去の指定された時刻におけるP-VOL）に格納されたデータを復元することができる。
【００５５】
具体的には、図４Aから図４Eは、図２に示したデバイス構成管理テーブル２２１、LU管理テーブル２２２、P-VOL構成管理テーブル２２３、JNL管理テーブル２２４、及びP-VOL／JNLペア管理テーブル２２５の例を示す。なお、図４Cには、図２に示されていないJNL情報テーブル２３１、JNL制御情報テーブル２３２及びJNLデータ２３３も示されているが、これらは、制御メモリ１４５には記憶されず、PDEV１５１に記憶される。
【００５６】
図４Aは、本発明の第１の実施形態のデバイス構成管理テーブル２２１の説明図である。
【００５７】
デバイス構成管理テーブル２２１は、P-VOL毎に用意されるテーブルである。デバイス構成管理テーブル２２１には、各P-VOLについて、デバイス＃４０１、状態４０２、パスの有無４０３、接続ホスト情報４０４、容量４０５及び属性４０６が記録される。
【００５８】
デバイス＃４０１は、各P-VOLの識別子である。
【００５９】
状態４０２は、各P-VOLの状態を示す情報である。各P-VOLの状態を示す情報とは、例えば、各P-VOLに設定されたアクセス制限（具体的には、書き込み及び読み出しの禁止、又は、読み出しのみ許可、など）を示す情報である。
【００６０】
パスの有無４０３は、各P-VOLとホスト計算機１０１との間にアクセスパスが定義されているか否かを示す情報である。
【００６１】
接続ホスト情報４０４は、各P-VOLにアクセスするホスト計算機１０１の種類を示す情報、例えば、ホスト計算機１０１で稼動しているオペレーティングシステムの種類などを示す情報である。
【００６２】
容量４０５は、各P-VOLの容量を示す情報である。
【００６３】
属性４０６は、各P-VOLが通常ボリュームであるか仮想ボリュームであるかを示す情報である。
【００６４】
図４Bは、本発明の第１の実施形態のLU管理テーブル２２２の説明図である。
【００６５】
LU管理テーブル２２２は、オープンホストが入出力するためのLUに用意されるテーブルである。LU管理テーブル２２２には、各LUについて、LU＃４１１、ポート＃４１２、デバイス＃４１３及びLUN＃４１４が記録される。
【００６６】
LU＃４１１は、各LUの識別子である。
【００６７】
ポート＃４１２は、デバイス＃４１３によって識別されるP-VOLに対応するターゲットデバイスに割り当てられているポート１２９の番号である。
【００６８】
デバイス＃４１３は、各LUに対応するP-VOLの識別子である。
【００６９】
LUN＃４１４は、論理ユニット番号（LUN：Logical  Unit  Number）であり、各LUを識別するための識別子である。
【００７０】
なお、LU＃４１１は、ポート＃４１２に対して一意である。言い換えると、同一のポート１２９に割り当てられた複数のLUには、それぞれ異なるLU＃４１１が付与されるが、二つのＬＵがそれぞれ異なるポート１２９に割り当てられている場合、それらのLUに同一のLU＃４１１が付与される場合がある。一方、LUN＃４１４は、第１のストレージシステム１２５内で一意である。
【００７１】
図４Cは、本発明の第１の実施形態のP-VOL構成管理テーブル２２３及びそれに関連するテーブルの説明図である。
【００７２】
P-VOL構成管理テーブル２２３は、デバイス構成管理テーブル２２１の属性４０６が「通常ボリューム」であるP-VOLについて用意されるテーブルである。P-VOL構成管理テーブル２２３には、デバイス＃４２１、JNLG＃４２２及びJNL情報テーブル先頭アドレス４２３が記録される。
【００７３】
デバイス＃４２１は、各P-VOLの識別子である。
【００７４】
JNLG＃４２２は、各P-VOLに対応するジャーナルが属するジャーナルグループ（JNLG）の番号である。同一のジャーナルグループに属する複数のジャーナルデータ（又はボリューム）の世代は、同一のタイミングで切り替えられる。
【００７５】
JNL情報テーブル先頭アドレス４２３は、各P-VOLに対応するジャーナルに関するJNL情報テーブル２３１が格納された領域の先頭アドレスを示す。
【００７６】
JNL情報テーブル２３１は、P-VOL毎に用意され、P-VOLに対応する世代間差分データ（すなわちジャーナルデータ）を管理するためのテーブルである。JNL情報テーブル２３１には、世代間差分データについて、世代毎に、先頭アドレス４３２、長さ４３３及び作成時刻４３４が記録される。
【００７７】
先頭アドレス４３２は、各世代に対応するJNL制御情報テーブル２３２が格納された領域の先頭アドレスを示す。
【００７８】
長さ４３３は、世代間差分データの、各世代に対応するデータサイズ及び要素数を示す。
【００７９】
作成時刻４３４は、各世代の差分を記憶することになった時刻、例えば、最新世代を確定する原因となったマーカの受領時刻を示す。マーカとは、ホスト計算機１０１がP-VOLのイメージをバックアップデータの世代として確定するために第１のストレージシステム１２５に送信するコマンドである。マーカを受信したストレージシステム１２５は、スナップショット機能を用いて、マーカの受信時点における、マーカによって指定されたP-VOLのイメージを最新世代として確定する。
【００８０】
さらに、JNL情報テーブル２３１は、複数の世代間差分データをマージすることによって作成されたマージ差分データも管理する。JNL情報テーブル２３１には、マージ差分データについても、世代毎に、先頭アドレス４３２、長さ４３３及び作成時刻４３４が記録される。なお、マージ差分データにおける「世代」は、マージ差分データに対応する複数世代のうちの或る世代（例えば、最新又は最古の世代）であり、作成時刻４３４は、対応するマージ差分データがJNLエリアに格納された時刻である。
【００８１】
世代間差分データ及びマージ差分データに対応した先頭アドレス４３２を参照することで、その世代間差分データ又はマージ差分データに対応したJNL制御情報テーブル２３２を参照することができる。
【００８２】
JNL制御情報テーブル２３２は、世代間差分データ及びマージ差分データのそれぞれについて、世代毎に存在する。JNL制御情報テーブル２３２は、世代に対応した差分ビットマップ（BM）と、データ要素の在り処とを管理するためのテーブルである。
【００８３】
具体的には、例えば、JNL制御情報テーブル２３２には、デバイス＃４４１、長さ４４２、差分BM４４３、及び、対応するJNLデータ２３３を構成する各JNLデータ要素４５１に対応したデータ格納アドレス４４４が記録される。
【００８４】
デバイス＃４４１は、JNL制御情報テーブル２３２が示すジャーナルに対応するP-VOLの識別子を示す。
【００８５】
長さ４４２は、各世代に対応するジャーナルデータ（すなわち世代間差分データ又はマージ差分データ）の長さを示す。
【００８６】
差分BM４４３は、各世代に対応する差分BMである。
【００８７】
データ格納アドレス４４４は、各世代に対応するJNLデータ２３３を構成する各JNLデータ要素４５１が格納された領域のアドレスを示す。各世代に対応するJNLデータ２３３が複数のJNLデータ要素４５１（例えばJNLデータ要素４５１A及びJNLデータ要素４５１B）を含む場合、データ格納アドレス４４４は、それらの複数のJNLデータ要素４５１に対応する複数のアドレス（例えばデータ格納アドレス４４４A及びデータ格納アドレス４４４B）を含む。
【００８８】
図４Dは、本発明の第１の実施形態のJNL管理テーブル２２４の説明図である。
【００８９】
JNL管理テーブル２２４は、P-VOL毎に用意され、P-VOLに関するバックアップデータを管理するためのテーブルである。JNL管理テーブル２２４には、例えば、P-VOL＃４６１、スナップショット取得時刻４６２及びバックアップ取得時刻４６３が記録される。
【００９０】
P-VOL＃４６１は、P-VOLの番号（識別子）である。P-VOL＃４６１として、デバイス＃４０１と同様の識別子が用いられてもよい。
【００９１】
スナップショット取得時刻４６２は、P-VOLとペアを構成するS-VOL（Secondary  Volume）を作成した時刻を示す。例えば、マーカを受信した第１のストレージシステム１２５は、その要求に従って作成されるスナップショットの世代に対応するS-VOLを作成し、その世代に対応するJNLデータ２３３を、作成されたS-VOLに格納してもよい。
【００９２】
バックアップ取得時刻４６３は、バックアップが取得された時刻、言い換えると、スナップショット取得時刻４６２が示すスナップショットの世代が確定される原因となったマーカを受信した時刻を示す。
【００９３】
さらに、JNL管理テーブル２２４には、図４Dには記載されていないが、取得世代数、バックアップ期間及びマージ世代数などが記録されてもよい。取得世代数は、P-VOLについて取得されたバックアップの世代の数を示す。マージ世代数は、何世代分の世代間差分データが蓄積されたときにマージ処理を実行するかを示す、世代数の閾値である。
【００９４】
図４Eは、本発明の第１の実施形態のP-VOL／JNLペア管理テーブル２２５の説明図である。
【００９５】
P-VOL／JNLペア管理テーブル２２５は、各P-VOLと、そのP-VOLに対応するジャーナルとの組（ペア）を管理するための情報を含む。具体的には、P-VOL／JNLペア管理テーブル２２５には、P-VOL＃４７１、P-VOL格納装置番号４７２、複製P-VOL＃４７３、複製P-VOL作成時刻４７４、JNL-VOL＃４７５及び複製P-VOL／JNLペア番号４７６が記録される。
【００９６】
P-VOL＃４７１は、P-VOLの番号（識別子）である。P-VOL＃４７１として、デバイス＃４０１と同様の識別子が用いられてもよい。
【００９７】
P-VOL格納装置番号４７２は、P-VOLを格納する（すなわちそのP-VOLをホスト計算機１０１に提供する）ストレージシステムの装置識別子である。
【００９８】
複製P-VOL＃４７３は、P-VOL＃４７１によって識別されるP-VOLの複製の識別子である。後述するように、任意のP-VOLの複製を作成し、その複製（以下、複製P-VOLとも記載する）を、元のP-VOLを格納するストレージシステムに外部接続された別のストレージシステムに格納することができる。複製P-VOL＃４７３は、このように複製され、外部のストレージシステムに格納された複製P-VOLの識別子である。
【００９９】
複製P-VOL作成時刻４７４は、複製P-VOLが作成された時刻（又は作成された期間）を示す。
【０１００】
JNL-VOL＃４７５は、複製P-VOL＃４７３によって識別される複製P-VOLに対応するジャーナルデータが格納された論理ボリュームの識別子を示す。
【０１０１】
複製P-VOL／JNLペア番号は、複製P-VOLと、それに対応するジャーナルデータとのペアを識別する番号である。
【０１０２】
図５は、本発明の第１の実施形態におけるカタログ管理情報テーブル３１１のフォーマットの説明図である。
【０１０３】
カタログ管理情報テーブル３１１は、各P-VOLの各世代のジャーナルデータがどの装置に格納されているかを示す情報である。具体的には、カタログ管理情報テーブル３１１には、P-VOL＃５０１、P-VOL格納装置番号５０２、世代番号５０３、ジャーナル格納外部装置番号５０４、外部世代番号５０５、複製P-VOL＃５０６、外部JNL-VOL番号５０７及びバックアップ取得時刻５０８が記録される。
【０１０４】
P-VOL＃５０１は、管理サーバ１１１の管理下にあるストレージシステムに格納された各P-VOLの番号（識別子）である。P-VOL＃５０１として、デバイス＃４０１と同様の識別子が用いられてもよい。
【０１０５】
P-VOL格納装置番号５０２は、各P-VOLを格納する（すなわちそのP-VOLをホスト計算機１０１に提供する）ストレージシステムの装置識別子である。
【０１０６】
世代番号５０３は、各P-VOLに対応して作成されたスナップショットの世代の番号である。各P-VOLに対応する複数の世代のスナップショットが作成された（言い換えると、一つのP-VOLの複数の時点におけるイメージを復元するためのジャーナルデータが記録された）場合、一つのP-VOL＃５０１に対応する世代番号５０３に複数の値（すなわち作成された複数の世代の番号）が記録される。
【０１０７】
ジャーナル格納外部装置番号５０４は、作成された世代のジャーナルデータの複製を格納するストレージシステムの装置識別子である。後述するように、ジャーナルデータの複製が、P-VOLを格納するストレージシステムに外部接続されたストレージシステム（すなわち外部ストレージシステム）に格納され、もとのジャーナルデータが削除されてもよい。この場合、ジャーナルデータの複製を格納するストレージシステムの識別子がジャーナル格納外部装置番号５０４として記録される。
【０１０８】
外部世代番号５０５は、上記のようにジャーナルデータの複製が外部ストレージシステムに格納された場合、外部ストレージシステムがそのジャーナルデータの複製を管理するために付与した世代番号である。
【０１０９】
複製P-VOL＃５０６は、P-VOLの複製の識別子である。上記のように、ジャーナルデータの複製が外部ストレージシステムに格納される場合、さらに、P-VOLの複製が作成され、それが外部ストレージシステムに格納されてもよい。複製P-VOL＃５０６は、そのようにして作成された複製の識別子である。
【０１１０】
外部JNL-VOL番号５０７は、ジャーナルデータの複製を格納する外部ストレージシステム内の論理ボリュームの識別子である。
【０１１１】
バックアップ取得時刻５０８は、ジャーナルデータの複製が外部ストレージシステムに格納された時刻を示す。
【０１１２】
ここで、カタログ管理情報テーブル３１１の具体例を説明する。
【０１１３】
例えば、第１のストレージシステム１２５の装置識別子が「ST１」、第２のストレージシステム１６１の装置識別子が「ST２」、第１のストレージシステム１２５に格納されたP-VOL（以下、図５の説明において「当該P-VOL」と記載する。ただし、このP-VOLは通常ボリュームである）の識別子が「P-VOL０１」である場合について説明する。この場合、P-VOL＃５０１として「P-VOL０１」、それに対応するP-VOL格納装置番号５０２として「ST１」が記録される。
【０１１４】
この例において、当該P-VOLのスナップショットが過去に２回作成された場合、１回目の（すなわち古い）スナップショットの世代番号「１」、及び、２回目の（すなわち新しい）スナップショットの世代番号「２」が、「P-VOL０１」に対応する世代番号５０３として記録される。
【０１１５】
各世代のスナップショットのジャーナルデータ（少なくとも、それらの世代のJNLデータ２３３）は、通常、第１のストレージシステム１２５（すなわち、当該P-VOLを格納するストレージシステム）内のいずれかの論理ボリュームに格納される。しかし、それらのうち少なくとも一つの複製が第２のストレージシステム１６１内の論理ボリュームに格納されてもよい。複製が第２のストレージシステム１６１内の論理ボリュームに格納されたあと、その複製元のジャーナルデータは、第１のストレージシステム１２５から削除されてもよい。
【０１１６】
例えば、２回目のスナップショットの世代のジャーナルデータが第１のストレージシステム１２５から削除され、その複製が第２のストレージシステム１６１の識別子「JNL-VOL１１」によって識別される論理ボリュームに格納された場合、世代番号５０３の値「２」に対応するジャーナル格納外部装置番号５０４及び外部JNL-VOL番号５０７として、それぞれ、「ST２」及び「JNL-VOL１１」が記録される。さらに、そのジャーナルデータが、第２のストレージシステム１６１内で第１世代として管理される場合、世代番号５０３の値「２」に対応する外部世代番号５０５として「１」が記録される。
【０１１７】
この場合、第２世代のジャーナルデータの複製が第２のストレージシステム１６１に格納された時刻が、世代番号５０３の値「２」に対応するバックアップ取得時刻５０８として記録される。
【０１１８】
さらに、当該P-VOLの複製が作成され、第２のストレージシステム１６１に格納されてもよい。例えば、当該P-VOLの複製が第２のストレージシステム１６１の識別子「P-VOL１１」によって識別される論理ボリュームとして格納される場合、「P-VOL０１」に対応する複製P-VOL＃５０６として「P-VOL１１」が記録される。
【０１１９】
なお、図２の例では、管理サーバ１１１のメモリ１１６のみにカタログ管理情報テーブル３１１が格納されているが、カタログ管理情報テーブル３１１と同等の情報がホスト計算機１０１のメモリ１０６に格納されてもよいし、第１のストレージシステム１２５の制御メモリ１４５内に格納されてもよいし、さらに第２のストレージシステム１６１の制御メモリ１７１に格納されてもよい。
【０１２０】
図６は、本発明の第１の実施形態における暗号鍵管理情報テーブル２２６のフォーマットの説明図である。図６において、暗号鍵管理情報テーブル２２６は、各P-VOLの各世代のデータをリストアする際に、どの暗号鍵を用いるかを示す情報である。具体的には、暗号鍵管理情報テーブル２２６には、P-VOL＃５２１、P-VOL格納装置番号５２２、ホスト情報（APP）５２３、暗号鍵５２４が記録されている。
【０１２１】
P-VOL＃５２１は、管理サーバ１１１の管理下にあるストレージシステムに格納された各P-VOLの番号（識別子）である。P-VOL＃５２１として、デバイス＃４０１と同様の識別子を用いることもできる。
【０１２２】
P-VOL格納装置番号５２２は、各P-VOLを格納する（すなわち、そのP-VOLをホスト計算機１０１に提供する）ストレージシステムの装置識別子である。この識別子は、データをリストアする場合、間違ったところへデータを格納しないように、リストア先の検証を行う際にチェックする情報として用いられる。
【０１２３】
ホスト情報５２３は、ホスト計算機１０１に用いられるソフトウエア資源、例えば、OSの種類を示す情報である。
【０１２４】
暗号鍵５２４は、P-VOL（その時点でのオンラインV0Lのコピー）と世代データ（ジャーナルデータ）を暗号化するときに使用する暗号鍵である。
【０１２５】
ここで、ジャーナルデータを格納する処理の概要を説明する。
【０１２６】
図７は、本発明の第１の実施形態においてJNLデータ要素を格納する処理の概要を
示す説明図である。
【０１２７】
図７の例において、第１のストレージシステム１２５に、P-VOL１８７Pが格納されている。P-VOL１８７Pは、プライマリの論理ボリューム（すなわちオンラインの論理ボリューム）である。ホスト計算機１０１からライトデータが書き込まれることで、P-VOL１８７Pは更新される。
【０１２８】
JNL関連エリア１８８は、第１のストレージシステム１２５のいずれかの論理ボリュームに確保された記憶領域であり、JNL制御情報格納エリア２５０１及びJNLデータ格納エリア２５０３を含む。JNL制御情報格納エリア２５０１には、図７に示すように、確定した各世代に対応する差分BM４４３（BMは“ビットマップ”の略語である）を含むJNL制御情報テーブル２３２が格納される。JNLデータ格納エリア２５０３には、確定した各世代に対応するJNLデータ２３３が格納される。
【０１２９】
図７の例では、世代（N−２）に対応する差分BM４４３A及びJNLデータ２３３A、世代（N−１）に対応する差分BM４４３B及びJNLデータ２３３B、世代（N）に対応する差分BM４４３C及びJNLデータ２３３C、及び、世代（N＋１）に対応する差分BM４４３D及びJNLデータ２３３Dが格納される。図７の説明において、差分BM４４３A〜４４３Dに共通する説明をする場合、これらを総称して差分BM４４３とも記載する。JNLデータ２３３A〜２３３Dに共通する説明をする場合、これらを総称してJNLデータ２３３とも記載する。
【０１３０】
なお、図７にはジャーナルデータの代表的な要素として差分BM４４３及びJNLデータ２３３を図示したが、実際には、図４Cに示すように、種々の必要な情報が格納される。
【０１３１】
ここで、「世代」とは、P-VOL１８７Pについての或る時点のことである。例えば、世代（N）とは、世代（N−１）の時点を過ぎた後、P-VOL１８７Pについて所定の世代確定イベントが発生した時（本実施形態では、ホスト計算機１０１から後述のマーカを受領した時）のことである。
【０１３２】
なお、図７の例では、確定している最新の世代が世代（N）であるため、未確定世代は、世代（N＋１）である。次回にマーカを受領すると、世代（N＋１）が確定する。これによって、世代（N＋１）が、確定している最新の世代となり、未確定世代は世代（N＋２）である。
【０１３３】
上記のように世代が更新された場合、JNL情報テーブル２３１に、新たに確定した世代に関するエントリが追加される。
【０１３４】
図４Cにおいて説明したように、JNLデータ２３３は、一つ以上のJNLデータ要素４５１の集合である。JNLデータ要素４５１は、P-VOL１８７Pにデータ要素が書き込まれることに起因してP-VOL１８７Pから退避されたデータ要素である。
【０１３５】
具体的には、例えば、未確定世代が世代（N）である場合、ストレージシステム１２５がホスト計算機１０１からマーカを受信した時に、世代（N）が確定し、未確定世代が世代（N＋１）となる。その場合、JNLデータ格納エリア２５０３に蓄積されているJNLデータ２３３B（つまり、世代（N）のP-VOL１８７Pと世代（N−１）のP-VOL１８７Pとの差分に相当するデータ）が、一つ前の世代（この例では世代（N−１））のP-VOLを復元するためのJNLデータ要素４５１としてJNLデータ格納エリア２５０３に退避される。
【０１３６】
これによって、JNLデータ格納エリア２５０３には、世代（N）に対応したJNLデータ２３３（すなわち、世代（N）と世代（N−１）との差分に相当するデータ）が蓄積される。
【０１３７】
差分BM４４３は、論理ボリュームの世代間の差分を表すビットマップである。具体的には、例えば、図７の例において、世代（N）に対応した差分BM４４３は、世代（N）のP-VOL１８７Pと世代（N−１）のP-VOL１８７Pとの差分を表すビットマップである。
【０１３８】
より具体的には、P-VOL１８７P内の或るブロックに、世代（N−１）より後の或る時点で初めてライトデータ要素が書き込まれた場合、その或るブロックに対応したビット（世代（N）に対応した差分BM４４３内のビット）が、オンにされ（すなわち、ライト発生を表す値（例えば“１”）に更新され）、そのライトデータ要素に対応するJNLデータ要素４５１が、JNLデータ格納エリア２５０３に格納される。なお、差分BM４４３を構成する各ビットは、P-VOL１８７Pの各ブロックに対応している。
【０１３９】
図７の例では、月曜日に書き込まれたライトデータ要素に対応する差分BM４４３及びそれに対応するJNLデータ２３３が「月曜日のジャーナル」、火曜日に書き込まれたライトデータ要素に対応する差分BM４４３及びそれに対応するJNLデータ２３３が「火曜日のジャーナル」として扱われる。
【０１４０】
次に、JNLデータを取得する方法について説明する。
【０１４１】
JNLを取得する方法は二つ存在する。図８に示す方法によれば、ライトデータ要素はP-VOLへ格納され、その格納によって更新される前のP-VOLのデータがJNLデータ２３３として格納される。このようにして作成されたジャーナルは、Beforeジャーナルとも呼ばれる。一方、図１０に示す方法によれば、ライトデータ要素はP-VOLへ格納され、マーカ受信時に、更新データがJNLデータ２３３として格納される。このようにして作成されたジャーナルは、Afterジャーナルとも呼ばれる。
【０１４２】
図８は、本発明の第１の実施形態において、Beforeジャーナルが作成される場合に、P-VOLにライトデータ要素を書き込むライト処理の説明図である。
【０１４３】
図８の説明において、ライトコマンドによってライト先として指定されているP-VOLを、「対象P-VOL」と記載する。
【０１４４】
R/Wプログラム２０１は、ホスト計算機１０１から（例えばP-VOL１８７Pをライト先として指定した）ライトコマンドを受信すると（S１６００１）、ライトデータ要素を格納するためのスロットを確保する（S１６００２）。「スロット」とは、キャッシュメモリ１４７の単位管理領域である。
【０１４５】
さらに、R/Wプログラム２０１は、差分BM４４３内の、ライトコマンドで指定されているライト先ブロックに対応したビットを参照する（S１６００３）。
【０１４６】
S１６００３の結果、参照先がオンビットである場合、ライトコマンドで指定されているライト先ブロックに格納されたデータは、前回のマーカ受信時から現在までの間に少なくとも１回更新されている。この場合、R/Wプログラム２０１は、S１６００８以降の処理を実行する。すなわち、ライト先ブロックに格納されているデータ要素を退避させずに、S１６００７へ進む。
【０１４７】
一方、S１６００３の結果、参照先がオフビットである場合、ライトコマンドで指定されているライト先ブロックに格納されたデータは、前回のマーカ受信時から現在までの間に一度も更新されていない。言い換えると、ライトコマンドで指定されているライト先ブロックに格納されたデータは、前回のマーカ受信時にそのブロックに格納されていたデータである。前回のマーカ受信時の対象P-VOL１８７Pを復元するためには、そのデータを保存しておく必要がある。このため、R/Wプログラム２０１は、ライト先ブロックに記憶されているデータ要素を、JNLデータ格納エリア２５０３にJNLデータ要素４５１として格納（すなわち退避）する（S１６００６）。
【０１４８】
そして、R/Wプログラム２０１は、S１６００６の格納が反映されるように、JNL制御情報テーブル２３２を更新する（S１６００７）。具体的には、R/Wプログラム２０１は、ライト先ブロックに対応する差分BM４４３のビットをオンにし、そのライト先ブロックに対応するデータ格納アドレスとして、S１６００６においてJNLデータ要素４５１が格納された領域のアドレスを追加する。
【０１４９】
その後、R/Wプログラム２０１が、フロントエンドインタフェース１２７内のメモリ１３１に記憶されているライトデータ要素を、S１６００２で確保されたスロットに書き込む（S１６００８）。
【０１５０】
R/Wプログラム２０１は、そのスロットに書き込まれているライトデータ要素を、P-VOL内のライト先ブロックに書き込む（S１６００９）。
【０１５１】
図９は、本発明の第１の実施形態において、Beforeジャーナルが作成され、作成されたジャーナルデータの例の説明図である。
【０１５２】
具体的には、図９は、P-VOL１８７Pに格納されたデータの推移を例示するものである。
【０１５３】
図９に示す最も古い時点において、P-VOL１８７Pは、データ２７０１A、データ２７０１B及びデータ２７０１Cを格納している（世代N）。説明を簡単にするため、データ２７０１A、データ２７０１B及びデータ２７０１Cは、それぞれ、P-VOL１８７Pの三つのブロックの各々に格納されるものと仮定する。
【０１５４】
その後、第１のストレージシステム１２５は、マーカ２７０３Aをホスト計算機１０１から受信する。この時点で、世代Nが確定する。
【０１５５】
その後、ホスト計算機１０１からのライトコマンドに従って、データ２７０１Aがデータ２７０１Dに更新される。この場合、第１のストレージシステム１２５は、データ２７０１Aの複製をJNLデータ要素２７０２AとしてJNLデータ格納エリア２５０３に格納する。なお、JNLデータ要素２７０２Aは、図４Cにおいて説明したJNLデータ要素４５１（JNLデータ要素４５１A、４５１B等）のいずれかに相当する。後述するJNLデータ要素２７０２B等についても同様である。
【０１５６】
同様に、データ２７０１Bがデータ２７０１Fに更新されると、データ２７０１Bの複製がJNLデータ要素２７０２BとしてJNLデータ格納エリア２５０３に格納される。
【０１５７】
さらに、図９では省略されているが、データ２７０１Aが格納されていたブロック及びデータ２７０１Bが格納されていたブロックの各々に対応する差分BM４４３のビットONに更新される。
【０１５８】
その後、データ２７０１Dはさらにデータ２７０１Eに更新される。しかし、この場合、既にデータ２７０１A（すなわち、マーカ２７０３A受信時点に格納されていたデータ）の複製がJNLデータ要素２７０２Aとして格納されているため、データ２７０１Dの複製は格納されない。
【０１５９】
その後、第１のストレージシステム１２５は、マーカ２７０３Bをホスト計算機１０１から受信する。この時点で、世代N＋１が確定する。この時点の差分BM４４３、JNLデータ要素２７０２A及び２７０２Bは、世代NのP-VOL１８７Pを復元するために必要であるため、世代Nが破棄又はマージされるまで、変更されることなく保持される。
【０１６０】
その後、データ２７０１Eがデータ２７０１Gに更新され、データ２７０１Cがデータ２７０１Hに更新される。この場合、データ２７０１Eの複製がJNLデータ要素２７０２Eとして、データ２７０１Cの複製がJNLデータ要素２７０２Cとして、JNLデータ格納エリア２５０３内の新たに用意された領域に格納される。
【０１６１】
さらに、新たに差分BM４４３が用意され、データ２７０１Eが格納されていたブロック及びデータ２７０１Cが格納されていたブロックの各々に対応するビットがONに更新される。
【０１６２】
現在時刻におけるP-VOL１８７Pは、上記の更新の結果、データ２７０１G、データ２７０１F及びデータ２７０１Hを格納していると仮定する。現在時刻のP-VOL１８７Pは、世代N＋２に相当するが、次回のマーカ（図示省略）を受信するまで確定しない。
【０１６３】
現在時刻のP-VOL１８７Pのデータ２７０１G及びデータ２７０１Hを、それぞれ、JNLデータ要素２７０２E及びJNLデータ要素２７０２Cによって置き換えることによって、確定した世代N＋１のP-VOL１８７Pを復元することができる。さらに、その復元された世代N＋１のP-VOL１８７PのJNLデータ要素２７０２E及びデータ２７０１Fを、それぞれ、JNLデータ要素２７０２A及びJNLデータ要素２７０２Bによって置き換えることによって、世代NのP-VOL１８７Pを復元することができる。
【０１６４】
この置き換えは、データを上書きすることによって物理的に実行されてもよいが、アクセス先を変更することによって仮想的に実行されてもよい。
【０１６５】
例えば、上記のようにP-VOL１８７Pのデータ２７０１GがJNLデータ要素２７０２Eによって置き換えられる場合を例として説明すると、P-VOL１８７Pのデータ２７０１GにJNLデータ要素２７０２Eが上書きされてもよい。あるいは、R/Wプログラム２０１が、データ２７０１Gが格納されたブロックへのリード要求を受信すると、要求されたブロックからデータ２７０１Gを読み出す代わりに、JNLデータ要素２７０２Eが格納された記憶領域からJNLデータ要素２７０２Eを読み出し、それをリード要求に対する応答として送信してもよい。
【０１６６】
なお、本実施形態の説明において、「P-VOLにジャーナルデータを反映させる」のような記載がある場合、この「反映」は、上記のような置き換えを意味する。
【０１６７】
図１０は、本発明の第１の実施形態において、Afterジャーナルが作成される場合に、P-VOLにライトデータ要素を書き込むライト処理の説明図である。
【０１６８】
図１０の説明において、ライトコマンドで指定されているP-VOLを、「対象P-VOL」と記載する。また、以下の説明では、説明が冗長になるのを防ぐために、世代Kに対応する対象のことを、その対象の名称の後に（K）を付けて記載することがある。具体的には、例えば、世代（J）に対応したJNL制御情報を「JNL制御情報（J）」と記載することがある。
【０１６９】
フロントエンドインタフェース１２７が、ホスト計算機１０１から、ライトコマンド及びライトデータ要素を受信し、メモリ１３１でライトデータ要素を記憶する（S８０１０）。ライトコマンドは、制御プロセッサ１４３に転送される。
【０１７０】
R/Wプログラム２０１が、ライトコマンドの受信に応答して、キャッシュメモリ１４７からスロットを確保する（S８０２０）。
【０１７１】
R/Wプログラム２０１が、ライトコマンド完了の報告を、ライトコマンドの送信元のホスト計算機１０１に送信する（S８０３０）。それに応答して、ライトデータ要素がホスト計算機１０１から送信され、フロントエンドインタフェース１２７内のメモリ１３１に記憶される。
【０１７２】
R/Wプログラム２０１が、フロントエンドインタフェース１２７内のメモリ１３１に記憶されたライトデータ要素を、確保されたスロットに書き込む（S８０４０）。
【０１７３】
R/Wプログラム２０１が、スロット内のライトデータ要素を、対象P-VOL１８７P内のライト先ブロックに書き込む（S８０５０）。さらに、R/Wプログラム２０１が、P-VOL１８７Pの差分BM４４３のビットのうち、更新のあったブロックに対応するビットをONする（S８０６０）。
【０１７４】
その後、任意のタイミングで、ホスト計算機１０１はP-VOL１８７Pへのマーカを送信する。ストレージシステム１２５は、マーカを受信したら（S８０７０）、ジャーナルを取得する（S８０８０）。すなわち、ストレージシステム１２５は、対象P-VOL１８７Pに対応する差分BM４４３のビットのうち、ONになっているビットに対応するブロックのデータを、JNLデータ格納エリア２５０３内にJNLデータ２３３としてコピーする。ストレージシステム１２５は、コピー先の領域のアドレスをデータ格納アドレス４４４として管理する。
【０１７５】
上記の処理によってジャーナルの作成が完了すると、ストレージシステム１２５はホスト計算機１０１へ完了報告を送信する（S８０９０）。
【０１７６】
以降の説明は、特に明記しない限り、Beforeジャーナルが作成される場合を例として採用するが、Afterジャーナルが作成される場合にも同様の処理によって本発明を適用することができる。
【０１７７】
次に、ジャーナルデータを外部ストレージシステムに移動する処理について説明する。ジャーナルデータの外部ストレージシステムへの移動とは、第１のストレージシステム１２５に格納されたジャーナルデータ（少なくともJNL制御情報テーブル２３２及びJNLデータ２３３）の複製を第２のストレージシステム１６１に格納し、元のジャーナルデータを第１のストレージシステム１２５から削除することを意味する。
【０１７８】
図１１は、本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムに移動する処理の概要の説明図である。
【０１７９】
図１１の例では、管理サーバ１１１は、所定の条件が満たされる場合に、ホスト計算機のストレージシステムエージェントプログラム６０２にジャーナルデータ移動指示を送信する。
【０１８０】
ホスト計算機１０１は、ジャーナルデータ移動指示を第１のストレージシステム１２５に送信する。
【０１８１】
第１のストレージシステム１２５は、受信した指示によって指定されたジャーナルデータ（例えば、最も古い世代のジャーナルデータ）の複製を第２のストレージシステム１６１に送信する。
【０１８２】
第２のストレージシステム１６１は、受信したジャーナルデータの複製を論理ボリュームに格納する。
【０１８３】
第１のストレージシステム１２５は、ジャーナルデータの複製が第２のストレージシステム１６１に格納されると、指定されたジャーナルデータを第１のストレージシステム１２５のJNL関連エリア１８８から削除する。この削除によって空いた領域は、新たな世代のジャーナルデータを格納するために使用することができる。
【０１８４】
図１２は、本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムに移動する処理を示すフローチャートである。
【０１８５】
図１２は、図１１に示した処理の詳細を示すものである。
【０１８６】
最初に、管理サーバ１１１の移動可否判定プログラム３０１は、ジャーナルデータを外部ストレージシステムに移動する必要があるか否かを判定する（S３０１０）。具体的には、移動可否判定プログラム３０１は、所定の条件が満たされるか否かを判定し、満たされると判定された場合に、ジャーナルデータを外部ストレージシステムに移動する必要があると判定してもよい。
【０１８７】
例えば、移動可否判定プログラム３０１は、第１のストレージシステム１２５に格納されたジャーナルデータ量を監視し、そのジャーナルデータ量が所定の閾値を超えた場合、所定の条件が満たされたと判定してもよい。
【０１８８】
第１のストレージシステム１２５に格納されたジャーナルデータ量は、例えば、全世代のJNL制御情報テーブル２３２に記録された長さ４４２の値を合計することによって算出される。移動可否判定プログラム３０１は、長さ４４２の値又はその合計値を第１のストレージシステム１２５から取得することによってジャーナルデータ量を監視することができる。
【０１８９】
このようにして取得されたジャーナルデータ量が所定の閾値を超えた場合、移動可否判定プログラム３０１は、所定の条件が満たされた（すなわち、ジャーナルデータを外部ストレージシステムに移動する必要がある）と判定してもよい。
【０１９０】
あるいは、移動可否判定プログラム３０１は、第１のストレージシステム１２５に格納された全データ量が所定の閾値を超えた場合に、所定の条件が満たされたと判定してもよい。
【０１９１】
あるいは、移動可否判定プログラム３０１は、第１のストレージシステム１２５に格納されたジャーナルデータのアクセス頻度を監視し、あるジャーナルデータのアクセス頻度が所定の閾値を下回った場合、所定の条件が満たされた（すなわち、そのジャーナルデータを外部ストレージシステムに移動する必要がある）と判定してもよい。なお、アクセス頻度は、例えば、後述する方法によって算出されてもよい（S３０２０参照）。
【０１９２】
あるいは、移動可否判定プログラム３０１は、ジャーナルデータを移動する指示をユーザから受けた場合に、所定の条件が満たされたと判定してもよい。
【０１９３】
S３０１０において、所定の条件が満たされると判定された場合、管理サーバ１１１の移動対象決定プログラム３０２は、移動すべきジャーナルデータを選択する（S３０２０）。具体的には、移動対象決定プログラム３０２は、移動すべきJNLデータ２３３の世代又は作成時刻を選択する。
【０１９４】
移動対象決定プログラム３０２は、任意の世代のジャーナルデータを外部ストレージシステムに移動することができる。しかし、外部ストレージシステムに移動されたジャーナルデータを用いて所望の世代のP-VOLを復元するためには、ジャーナルデータを外部ストレージシステムから第１のストレージシステム１２５にコピーするための時間を要する。このようなコピーのための時間を少なくするためには、アクセス頻度の低いジャーナルデータ（言い換えると、復元される頻度が低い世代に関するジャーナルデータ）を外部ストレージシステムに移動することが望ましい。
【０１９５】
一般に、古い世代を復元する必要が生じる可能性は低いと予想される。このため、最も古い世代のジャーナルデータがS３０２０において選択されてもよい。
【０１９６】
あるいは、移動対象決定プログラム３０２は、各世代のアクセス頻度を取得し、最もアクセス頻度の低い世代のジャーナルデータを選択してもよい。この場合、第１のストレージシステム１２５は、各世代のアクセス頻度を示す情報を管理サーバ１１１に提供する必要がある。例えば、JNL情報テーブル２３１に、さらに、世代ごとのアクセス回数（すなわちその世代が復元された回数）が記録され、そのアクセス回数（図示省略）と作成時刻４３４とに基づいてアクセス頻度が計算されてもよい。
【０１９７】
あるいは、移動対象決定プログラム３０２は、S３０２０において、ユーザによって指定されたジャーナルデータを選択してもよい。ユーザは、例えば、任意の世代を指定する情報を、管理サーバ１１１の入力装置１１２を用いて入力してもよい。この場合、移動対象決定プログラム３０２は、ユーザによって指定された世代のジャーナルデータを選択する。
【０１９８】
さらに、移動対象決定プログラム３０２は、S３０２０において、選択されたジャーナルデータの移動先も選択する。具体的には、例えば、移動対象決定プログラム３０２は、第２のストレージシステム１６１の論理ボリュームのうち、選択されたジャーナルデータの量と同等以上の空き容量を持つものを、移動先として選択してもよい。
【０１９９】
次に、管理サーバ１１１は、ジャーナルデータ移動指示をホスト計算機１０１に送信する（S３０３０）。このジャーナルデータ移動指示は、移動すべきジャーナルデータ及び移動先（すなわち、S３０２０において選択されたジャーナルデータ及び移動先）の指定を含む。
【０２００】
ホスト計算機１０１は、管理サーバ１１１から受信したジャーナルデータ移動指示を第１のストレージシステム１２５に送信する（S３０４０）。
【０２０１】
第１のストレージシステム１２５のJNLバックアッププログラムは、受信したジャーナルデータ移動指示に従って、指定されたジャーナルデータを指定された移動先に移動する（S３０５０）。具体的には、例えば移動すべきジャーナルデータの世代が指定されている場合、JNLバックアッププログラムは、指定された世代に対応するジャーナルデータ（少なくとも、差分BM４４３及びJNLデータ２３３）をJNL関連エリア１８８から読み出し、読み出したジャーナルデータを指定された移動先に格納する指示を第２のストレージシステム１６１に送信する。
【０２０２】
第２のストレージシステム１６１（すなわち外部ストレージシステム）は、送信された指示に従って、送信されたジャーナルデータを、指定された移動先に格納する（S３０６０）。この格納が終了すると、第２のストレージシステム１６１は、格納が終了したことの報告を第１のストレージシステム１２５に送信する。
【０２０３】
第１のストレージシステム１２５は、上記の報告に基づいて、送信したジャーナルデータが第２のストレージシステム１６１に格納されたことを確認すると、ジャーナルデータの移動が終了したことの報告を管理サーバ１１１に送信する（S３０７０）。
【０２０４】
さらに、第１のストレージシステム１２５は、指定されたジャーナルデータをJNL関連エリア１８８から削除する。第１のストレージシステム１２５は、この削除を、S３０５０において実行してもよいし、送信したジャーナルデータが第２のストレージシステム１６１に格納されたことを確認した後（すなわち、S３０７０の報告を受信した後）に実行してもよい。
【０２０５】
さらに、第１のストレージシステム１２５のJNL管理プログラム２０５は、JNL管理テーブル２２４を更新する。具体的には、移動したジャーナルデータに対応するP-VOLの識別子がP-VOL＃４６１として記録される。移動したジャーナルデータに対応する作成時刻４３４の値がスナップショット取得時刻４６２として記録される。S３０６０の格納が実行された時刻がバックアップ取得時刻４６３として記録される。
【０２０６】
管理サーバ１１１のカタログ管理プログラム３０３は、S３０７０の報告を受信すると、S３０５０からS３０６０において実行されたジャーナルデータの移動を反映させるようにカタログ管理情報テーブル３１１を更新する（S３０８０）。
【０２０７】
具体的には、S３０５０において移動したジャーナルデータに対応するジャーナル格納外部装置番号５０４、外部世代番号５０５、外部JNL-VOL番号５０７及びバックアップ取得時刻５０８が、次のように更新される。すなわち、ジャーナル格納外部装置番号５０４として、第２のストレージシステム１６１の識別子が記録される。外部世代番号５０５として、第２のストレージシステム１６１が移動後のジャーナルデータに付与した世代番号が記録される。外部JNL-VOL番号５０７として、ジャーナルデータの移動先の論理ボリュームの識別子が記録される。バックアップ取得時刻５０８として、S３０６０の格納が実行された時刻が記録される。
【０２０８】
以上で、ジャーナルデータを外部ストレージシステムに移動する処理が終了する。
【０２０９】
このように、ジャーナルデータを外部ストレージシステムに移動することによって、第１のストレージシステム１２５の空き容量を確保することができる。これによって、維持及び管理するバックアップデータの量及び世代数を拡大することができる。
【０２１０】
図１３は、本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムに移動する処理の別の例を示すフローチャートである。
【０２１１】
図１３は、図１１及び図１２に示す処理の変形例である。図１１及び図１２では、管理サーバ１１１がジャーナルデータを移動するか否かを判定し、移動すべきジャーナルデータ及び移動先を選択した。一方、図１３では、第１のストレージシステム１２５が、ジャーナルデータをするか否かを判定し、移動すべきジャーナルデータ及び移動先を選択する。以下、図１３の処理について説明する。
【０２１２】
最初に、第１のストレージシステム１２５の移動可否判定プログラム２０３は、ジャーナルデータを外部ストレージシステムに移動する必要があるか否かを判定する（S４０１０）。この判定は、図１２のS３０１０と同様に実行されてもよい。
【０２１３】
次に、第１のストレージシステム１２５の移動対象決定プログラム２０４は、移動すべきジャーナルデータを選択する（S４０２０）。この選択は、図１２のS３０２０と同様に実行されてもよい。
【０２１４】
次に、第１のストレージシステム１２５のJNLバックアッププログラムは、選択されたジャーナルデータを選択された移動先に移動する（S４０３０）。この移動は、図１２のS３０５０と同様に実行されてもよい。
【０２１５】
第２のストレージシステム１６１は、第１のストレージシステム１２５から送信された指示に従って、送信されたジャーナルデータを、指定された移動先に格納する（S４０４０）。この格納が終了すると、第２のストレージシステム１６１は、格納が終了したことの報告を第１のストレージシステム１２５に送信する。
【０２１６】
第１のストレージシステム１２５のJNL管理プログラム２０５は、上記の報告を受信すると、JNL管理テーブル２２４を更新する（S４０５０）。具体的には、移動したジャーナルデータに対応するP-VOLの識別子がP-VOL＃４６１として記録される。移動したジャーナルデータに対応する作成時刻４３４の値がスナップショット取得時刻４６２として記録される。S４０４０の格納が実行された時刻がバックアップ取得時刻４６３として記録される。
【０２１７】
さらに、第１のストレージシステム１２５は、例えば、送信したジャーナルデータが第２のストレージシステム１６１に格納されたことを確認した後、指定されたジャーナルデータをJNL関連エリア１８８から削除する。
【０２１８】
次に、第１のストレージシステム１２５は、ジャーナルデータの移動が終了したことの報告を管理サーバ１１１に送信する（S４０６０）。
【０２１９】
管理サーバ１１１のカタログ管理プログラム３０３は、S４０６０の報告を受信すると、S４０３０からS４０４０において実行されたジャーナルデータの移動を反映させるようにカタログ管理情報テーブル３１１を更新する（S４０７０）。この更新は、図１２のS３０８０と同様に実行されてもよい。
【０２２０】
以上で、ジャーナルデータを外部ストレージシステムに移動する処理が終了する。
【０２２１】
図１４は、本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムからリストアする処理の概要の説明図である。
【０２２２】
図１１から図１３に示す方法によってジャーナルデータが外部ストレージシステムに移動した場合、そのジャーナルデータを用いて所望の世代のP-VOLを復元するためには、移動したジャーナルデータを第１のストレージシステム１２５内に戻す必要がある。このための処理の概要を、図１４を参照して説明する。
【０２２３】
最初に、管理サーバ１１１は、ある世代（又は時刻）の論理ボリュームのデータをホスト計算機１０１に要求する。より具体的には、管理サーバ１１１は、現在のP-VOLではなく、過去のある世代のP-VOLに格納されていたデータを要求する。
【０２２４】
ホスト計算機１０１は、管理サーバ１１１から受信した要求を第１のストレージシステム１２５に送信する。
【０２２５】
第１のストレージシステム１２５は、要求された世代を復元するために、外部ストレージシステム（すなわち第２のストレージシステム１６１）に格納されたジャーナルデータを使用する必要がある場合、その必要なジャーナルデータの送信を第２のストレージシステム１６１に要求する。そして、その要求に従って送信されたジャーナルデータを使用して、要求された世代の論理ボリュームを復元し、要求されたデータを返す。
【０２２６】
図１５は、本発明の第１の実施形態において実行される、ジャーナルデータを外部ストレージシステムからリストアする処理を示すフローチャートである。
【０２２７】
図１５は、図１４に示した処理の詳細を示すものである。
【０２２８】
最初に、管理サーバ１１１は、ある世代（又は時刻）の論理ボリュームのデータをホスト計算機１０１に要求する（S５０１０）。より具体的には、管理サーバ１１１は、現在のP-VOLではなく、過去のある世代のP-VOLに格納されていたデータを要求する。
【０２２９】
ホスト計算機１０１は、管理サーバ１１１から受信した要求を第１のストレージシステム１２５に送信する（S５０２０）。
【０２３０】
ホスト計算機１０１から要求を受信した第１のストレージシステム１２５は、要求された世代を復元するために必要なジャーナルデータが第２のストレージシステム１６１に格納されているか否かを判定する（S５０３０）。
【０２３１】
ジャーナルデータがどこに格納されているかは、カタログ管理情報テーブル３１１を参照することによって知ることができる。例えば、管理サーバ１１１は、要求した世代を復元するために必要なジャーナルデータの所在を示す情報を、S５０１０の要求に含めて送信してもよい。その場合、第１のストレージシステム１２５は、送信された要求に基づいて、必要なジャーナルデータが第２のストレージシステム１６１に格納されているか否かを判定することができる。
【０２３２】
あるいは、第１のストレージシステム１２５は、必要なジャーナルデータの所在を管理サーバ１１１に問い合わせてもよい。
【０２３３】
あるいは、第１のストレージシステム１２５は、カタログ管理情報テーブル３１１と同等の情報を制御メモリ１４５内に保持していてもよい。その場合、第１のストレージシステム１２５は、制御メモリ１４５内に保持された情報に基づいて、S５０３０の判定を実行することができる。
【０２３４】
必要なジャーナルデータが第２のストレージシステム１６１に格納されていると判定された場合、必要なジャーナルデータを第２のストレージシステム１６１から第１のストレージシステム１２５にコピーする必要がある。このため、第１のストレージシステム１２５は、まず、必要なジャーナルデータを格納するための領域を第１のストレージシステム１２５内に確保する（S５０４０）。
【０２３５】
次に、第１のストレージシステム１２５は、必要なジャーナルデータの転送を第２のストレージシステム１６１に要求する（S５０５０）。
【０２３６】
この要求を受信した第２のストレージシステム１６１は、要求されたジャーナルデータを読み出して第１のストレージシステム１２５に送信する（S５０６０）。
【０２３７】
第１のストレージシステム１２５は、第２のストレージシステム１６１から受信したジャーナルデータを、S５０４０で確保した領域に格納する（S５０７０）。
【０２３８】
次に、第１のストレージシステム１２５は、必要なジャーナルデータを使用して、要求された世代のP-VOLを復元する（S５０８０）。
【０２３９】
一方、S５０３０において、必要なジャーナルデータが第２のストレージシステム１６１に格納されていない（すなわち、必要なジャーナルデータが第１のストレージシステム１２５に格納されている）と判定された場合、第１のストレージシステム１２５は、S５０４０からS５０７０を実行せずに、S５０８０を実行する。
【０２４０】
次に、第１のストレージシステム１２５は、復元されたP-VOLに対して、要求されたデータを読み出すための通常のリード処理を実行し、それによって読み出されたデータをホスト計算機１０１に送信する（S５０９０）。
【０２４１】
さらに、第１のストレージシステム１２５は、S５０６０及びS５０７０によってジャーナルデータが移動したことを通知する情報を管理サーバ１１１に送信する（S５０９５）。
【０２４２】
管理サーバ１１１のカタログ管理プログラムは、S５０６０及びS５０７０によってジャーナルデータが移動したことを反映させるために、カタログ管理情報テーブル３１１を更新する（S５１００）。
【０２４３】
以上で、ジャーナルデータを外部ストレージシステムからリストアする処理が終了する。
【０２４４】
例えば、図９の例において、世代NのP-VOL１８７Pに格納されたデータを要求された場合について説明する。この場合において、少なくとも世代N＋１に対応するジャーナルデータ（図９の例ではJNLデータ要素２７０２A及び２７０２B）を含む一つ以上の世代のジャーナルデータが第２のストレージシステム１６１に格納されている場合、それらのジャーナルデータが第２のストレージシステム１６１から第１のストレージシステム１２５に転送され（S５０６０）、格納される（S５０７０）。
【０２４５】
第１のストレージシステム１２５は、少なくとも世代N＋１に対応するジャーナルデータを含む一つ以上の世代のジャーナルデータを現在の（すなわちオンラインの）P-VOL１８７Pに反映させることによって、世代nのP-VOL１８７Pに格納されたデータを復元し（S５０８０）、リード処理を実行する（S５０９０）。
【０２４６】
上記の図１１から図１３によれば、ジャーナルデータのみが外部ストレージシステムに移動する。このため、外部ストレージシステムに移動したジャーナルデータを用いて論理ボリュームを復元するためには、そのジャーナルデータを第１のストレージシステムにコピーする（すなわち戻す）必要があった。
【０２４７】
一方、ジャーナルデータの移動先の外部ストレージシステムに、さらに、P-VOLの複製（ただし、現在の（すなわちオンラインの）P-VOLの複製ではなく、復元されたある世代のP-VOLの複製）が格納されてもよい。このようなP-VOLの複製の移動について、図１６等を参照して説明する。
【０２４８】
図１６は、本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理の概要の説明図である。
【０２４９】
図１６の例では、図１１及び図１２の場合と同様、所定の条件が満たされる場合に、管理サーバが、ホスト計算機のストレージシステムエージェントプログラム６０２にジャーナルデータ移動指示を送信する。
【０２５０】
ホスト計算機１０１は、ジャーナルデータ移動指示を第１のストレージシステム１２５に送信する。
【０２５１】
第１のストレージシステム１２５は、受信した指示によって指定されたジャーナルデータ（例えば、最も古い世代のジャーナルデータ）の複製を第２のストレージシステム１６１に送信する。
【０２５２】
それに加えて、第１のストレージシステム１２５は、送信されたジャーナルデータを用いてP-VOLを復元するために必要なP-VOLの複製を送信する。
【０２５３】
第２のストレージシステム１６１は、受信したジャーナルデータ及びP-VOLの複製を格納する。
【０２５４】
第１のストレージシステム１２５は、ジャーナルデータの複製が第２のストレージシステム１６１に格納されると、指定されたジャーナルデータを第１のストレージシステム１２５のJNL関連エリア１８８から削除する。この削除によって空いた領域は、新たな世代のジャーナルデータを格納するために使用することができる。
【０２５５】
さらに、図１６の例では、ジャーナルデータ及びP-VOLの複製が第２のストレージシステム１６１に格納された後、第２のストレージシステム１６１を第１のストレージシステム１２５から切り離してもよい。第２のストレージシステム１６１を第１のストレージシステム１２５から切り離しても、第２のストレージシステム１６１に格納されたデータのみを用いてP-VOLを復元することができる（図１９Aから図１９D等参照）。
【０２５６】
図１７は、本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理を示すフローチャートである。
【０２５７】
図１７は、図１６に示した処理の詳細を示すものである。
【０２５８】
最初に、管理サーバ１１１の移動可否判定プログラム３０１は、ジャーナルデータを外部ストレージシステムに移動する必要があるか否かを判定する（S６０１０）。この判定は、図１２のS３０１０と同様に実行されてもよい。
【０２５９】
S３０１０において、所定の条件が満たされる（すなわち、ジャーナルデータを外部ストレージシステムに移動する必要がある）と判定された場合、管理サーバ１１１の移動対象決定プログラム３０２は、移動すべきジャーナルデータ及びその移動先を選択する（S６０２０）。この選択は、図１２のステップ３０２０と同様に実行されてもよい。
【０２６０】
次に、管理サーバ１１１は、ジャーナルデータ移動指示をホスト計算機１０１に送信する（S６０２５）。このジャーナルデータ移動指示は、移動すべきジャーナルデータ及び移動先（すなわち、S６０２０において選択されたジャーナルデータ及び移動先）の指定を含む。
【０２６１】
ホスト計算機１０１は、管理サーバ１１１から受信したジャーナルデータ移動指示を第１のストレージシステム１２５に送信する（S６０３０）。
【０２６２】
第１のストレージシステム１２５は、S６０３０の指示を受信すると、P-VOLを作成（すなわち復元）する必要があるか否かを判定する（S６０４０）。ここで、この判定について説明する。
【０２６３】
図１８の処理では、ジャーナルデータに加えて、そのジャーナルデータを用いてP-VOLを復元するために必要な別のP-VOLの複製が外部ストレージシステムに移動する。
【０２６４】
例えば、図９において、世代N＋１のジャーナルデータ、すなわち、JNLデータ要素２７０２A及び２７０２Bが移動する場合、それらを用いて世代NのP-VOL１８７Pを復元するためには、世代N＋１のP-VOL１８７Pが必要である。世代N＋１のP-VOL１８７Pのデータ２７０１E及び２７０１Fを、それぞれ、JNLデータ要素２７０２A及び２７０２Bによって置き換えることによって、世代NのP-VOL１８７Pが復元されるからである。
【０２６５】
したがって、S６０３０の指示によって世代N＋１のジャーナルデータが移動すべきものとして指定された場合には、S６０４０において、世代N＋１のP-VOL１８７Pを作成する必要があるか否かが判定される。
【０２６６】
例えば、既に世代N＋１のP-VOL１８７Pが作成されている場合には、世代N＋１のP-VOL１８７Pを作成する必要がないと判定され、まだ世代N＋１のP-VOL１８７Pが作成されていない場合には、世代N＋１のP-VOL１８７Ｐを作成する必要があると判定されてもよい。
【０２６７】
あるいは、既に世代N＋１のP-VOL１８７Pが第２のストレージシステム１６１にコピーされている場合には、世代N＋１のP-VOL１８７Ｐを作成する必要がないと判定されてもよい。一方、まだ世代N＋１のP-VOL１８７Ｐが第２のストレージシステム１６１にコピーされておらず、かつ、まだ世代N＋１のP-VOL１８７Ｐが作成されていない場合には、世代N＋１のP-VOL１８７Ｐを作成する必要があると判定されてもよい。
【０２６８】
なお、図９の例において、世代N＋１のジャーナルデータに加えて、世代N＋２のジャーナルデータ（すなわちJNLデータ要素２７０２Ｃ及び２７０２Ｅ）も移動すべきものとして指定されている場合、それらのジャーナルデータを用いてP-VOLを復元するために必要なP-VOLは、世代N＋２のP-VOL１８７Pのみである。世代N＋２のP-VOL１８７Ｐのデータを世代N＋２のジャーナルデータによって置き換えることによって世代N＋１のP-VOL１８７Pを復元することができ、復元された世代N＋１のP-VOL１８７Ｐを世代N＋１のジャーナルデータによって置き換えることによって世代ＮのP-VOL１８７Pを復元することができるからである。
【０２６９】
S６０４０においてP-VOLを作成する必要があると判定された場合、第１のストレージシステム１２５は、必要と判定されたP-VOLを復元する（S６０５０）。この復元は、図９において説明したように実行される。
【０２７０】
一方、S６０４０においてP-VOLを作成する必要がないと判定された場合、S６０５０は実行されず、処理はS６０６０に進む。
【０２７１】
次に、第１のストレージシステム１２５は、移動対象として指定されたジャーナルデータを選択する（S６０６０）。具体的には、S６０３０の指示によって指定されたジャーナルデータ（すなわちS６０２０において選択されたジャーナルデータ）が選択される。
【０２７２】
次に、第１のストレージシステム１２５は、選択されたジャーナルデータ、及び、S６０５０で作成されたP-VOLの全データを読み出し、第２のストレージシステム１６１に送信する（S６０７０）。S６０４０においてP-VOLを作成する必要がないと判定された場合は、既に作成されているP-VOLの全データが読み出され、送信される。
【０２７３】
S６０７０で送信されたデータを受信した第２のストレージシステム１６１は、受信したP-VOLのデータ及びジャーナルデータを格納する。例えば、第２のストレージシステムは、受信したP-VOLのデータを、移動先として指定された論理ボリュームに格納し、その空き論理ボリュームに関連するJNL関連エリア１８８に、受信したジャーナルデータを格納してもよい。この格納が終了すると、第２のストレージシステム１６１は、格納が終了したことの報告を第１のストレージシステム１２５に送信する。
【０２７４】
第１のストレージシステム１２５は、上記の報告に基づいて、送信したジャーナルデータが第２のストレージシステム１６１に格納されたことを確認すると、ジャーナルデータの移動が終了したことの報告を管理サーバ１１１に送信する（S６０９０）。
【０２７５】
さらに、第１のストレージシステム１２５は、例えば、送信したジャーナルデータが第２のストレージシステム１６１に格納されたことを確認した後、指定されたジャーナルデータをJNL関連エリア１８８から削除する。
【０２７６】
さらに、第１のストレージシステム１２５のJNL管理プログラム２０５は、JNL管理テーブル２２４を更新する。この更新は、図１２のステップ１０７０と同様に実行されてもよい。加えて、図１８の例におけるJNL管理プログラム２０５は、P-VOL／JNLペア管理テーブル２２５も更新する。
【０２７７】
管理サーバ１１１のカタログ管理プログラム３０３は、S６０９０の報告を受信すると、S６０７０からS６０８０において実行されたジャーナルデータの移動を反映させるようにカタログ管理情報テーブル３１１を更新する（S６１００）。この更新は、図１２のS３０８０と同様に実行されてもよい。
【０２７８】
以上で、外部ストレージシステムへのデータ移動の処理が終了する。
【０２７９】
図１８は、本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理の別の例を示すフローチャートである。
【０２８０】
図１８は、図１６及び図１７に示す処理の変形例である。図１６及び図１７では、管理サーバ１１１がジャーナルデータを移動するか否かを判定し、移動すべきジャーナルデータ及び移動先を選択した。一方、図１８では、第１のストレージシステム１２５が、ジャーナルデータをするか否かを判定し、移動すべきジャーナルデータ及び移動先を選択する。以下、図１８の処理について説明する。
【０２８１】
最初に、第１のストレージシステム１２５の移動可否判定プログラム２０３は、ジャーナルデータを外部ストレージシステムに移動する必要があるか否かを判定する（S７０１０）。この判定は、図１７のS６０１０と同様に実行されてもよい。
【０２８２】
次に、第１のストレージシステム１２５の移動対象決定プログラム２０４は、移動すべきジャーナルデータを選択する（S７０２０）。この選択は、図１２のS６０２０と同様に実行されてもよい。
【０２８３】
続くS７０４０からS７１００は、それぞれ、S６０４０からS６１００と同様であるため、説明を省略する。S７１００が終了すると、外部ストレージシステムへのデータ移動の処理が終了する。
【０２８４】
図１６から図１８に示すように、ジャーナルデータだけでなく、ある時点のP-VOLの複製も外部ストレージシステムに移動することによって、外部ストレージシステムに格納されたデータだけを用いてP-VOLを復元することができる。これによって、第２のストレージシステム１６１を第１のストレージシステム１２５から切り離すことが可能になる。この切り離しは、第２のストレージシステム１６１と第１のストレージシステム１２５との間の物理的な接続を解除することによって実行されてもよいし、第１のストレージシステム１２５への第２のストレージシステム１６１の外部接続の設定を解除することによって実行されてもよい。
【０２８５】
第１のストレージシステム１２５から切り離された第２のストレージシステム１６１は、新たにホスト計算機に直接接続されてもよい。このホスト計算機は、第１のストレージシステムに接続されたホスト計算機１０１であってもよいし、それとは異なる計算機であってもよい。あるいは、第２のストレージシステム１６１は、第１のストレージシステム以外のストレージシステム（例えば、後述する図２２に示す第３のストレージシステム２２０１）に新たに外部接続されてもよい。
【０２８６】
いずれの場合も、第２のストレージシステムは、第１のストレージシステムから移動したデータを用いて復元されたいずれかの世代のP-VOLを、直接、又は、第３のストレージシステム２２０１を介して、ホスト計算機に提供することができる。
【０２８７】
図１９Aから図１９Dは、本発明の第１の実施形態におけるストレージシステムの切り離しの類型の説明図である。
【０２８８】
図１９Aの例では、第２のストレージシステム１６１が第１のストレージシステム１２５と同等の機能を備え、さらに、カタログ管理情報テーブル３１１と同等の情報（図１９A〜図１９Dでは、これをカタログ管理情報テーブル３１１と記載）を保持している場合を示す。この場合、第２のストレージシステム１６１に新たにホスト計算機１０１を直接（すなわち、他のストレージシステムを介することなく）接続することができる。この場合、第２のストレージシステム１６１は、カタログ管理情報テーブル３１１、第１のストレージシステム１６１から移動したP-VOLの複製及びジャーナルデータを用いて、復元したP-VOLをホスト計算機１０１に提供することができる。
【０２８９】
図１９Bの例では、第２のストレージシステム１６１が第１のストレージシステム１２５と同等の機能を備えるが、カタログ管理情報テーブル３１１を保持していない。この場合、管理サーバ１１１からカタログ管理情報テーブル３１１を第２のストレージシステム１６１にコピーすることによって、図１９Ａの場合と同様、第２のストレージシステム１６１は、復元したP-VOLをホスト計算機１０１に提供することができる。
【０２９０】
図１９Cの例は、第２のストレージシステム１６１が第１のストレージシステム１２５から切り離された後、ホスト計算機１０１とは別のホスト計算機１４０１に接続される場合を示す。この例において、第２のストレージシステム１６１は、第１のストレージシステムと同等の機能を備えない。この場合、ホスト計算機１４０１がカタログ管理情報テーブル３１１を保持することによって、図１９Aの場合と同様、第２のストレージシステム１６１は、復元したP-VOLをホスト計算機１４０１に提供することができる。
【０２９１】
カタログ管理情報テーブル３１１は、管理サーバ１１１からホスト計算機１４０１にコピーされてもよい。その場合、ホスト計算機１４０１は、いずれかの世代のP-VOLに格納されたデータを読み出す要求を受ける。この読み出し要求は、例えば、管理サーバ１１１から送信されたものであってもよいし、ユーザによってホスト計算機１４０１に入力されたものであってもよいし、アプリケーションプログラム６０１によって発行されたものであってもよい。
【０２９２】
ホスト計算機１４０１は、受信した読み出し要求を第２のストレージシステム１６１に送信する。この読み出し要求を受信した第２のストレージシステム１６１は、要求された世代のP-VOLのデータを復元するために必要なP-VOLの複製が格納された論理ボリューム、及び、その復元のために必要なジャーナルデータが格納された論理ボリュームを特定する。この特定は、例えば、次に示すいずれかの方法によってなされてもよい。
【０２９３】
例えば、ホスト計算機１４０１は、カタログ管理情報テーブル３１１に基づいて、要求された世代のP-VOLのデータを復元するために必要なP-VOLの複製が格納された論理ボリューム、及び、その復元のために必要なジャーナルデータが格納された論理ボリュームを特定し、特定された論理ボリュームの指定を読み出し要求に含めて送信してもよい。
【０２９４】
あるいは、読み出し要求を受信した第２のストレージシステム１６１は、カタログ管理情報テーブル３１１のうち必要な情報（又は、カタログ管理情報テーブル３１１全体）をホスト計算機１４０１から取得し、その取得した情報に基づいて上記の論理ボリュームを特定してもよい。
【０２９５】
図１９Dの例では、第２のストレージシステム１６１が、第１のストレージシステム１２５と同等の機能を備える第３のストレージシステム２２０１に新たに外部接続される。この場合、第３のストレージシステム２２０１がカタログ管理情報テーブル３１１を保持することによって、第２のストレージシステム１６１は、第３のストレージシステム２２０１を介してホスト計算機１０１に復元したP-VOLを提供することができる。
【０２９６】
なお、図１９Dのように接続された場合のP-VOLの復元の例については後述する（図２２等参照）。
【０２９７】
図２０は、本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理の、さらに別の例を示すフローチャートである。
【０２９８】
図１６に示す処理が繰り返し実行されると、第２のストレージシステム１６１内に、ジャーナルデータと、そのジャーナルデータを復元するために必要なP-VOLの複製（レプリカ）と、の組が複数格納される場合がある（図２０の第２のストレージシステム１６１参照）。
【０２９９】
あるいは、第１のストレージシステム１２５に複数の外部ストレージシステムが接続される場合もある。図２０の例では、第２のストレージシステム１６１に加えて、外部ストレージシステム１６１A及び１６１Bが第１のストレージシステム１２５に外部接続されている。なお、外部ストレージシステム１６１A及び１６１Bは、第２のストレージシステム１６１と同様のものであってよい。
【０３００】
上記のような場合に、図１６に示す処理が各外部ストレージシステムに対して実行されると、上記のようなジャーナルデータとP-VOLのレプリカとの組（ペア）が、各外部ストレージシステム内に一組又は複数組格納される場合がある。このような場合、ある世代のP-VOLを復元しようとして、P-VOLのレプリカのデータを、そのP-VOLのレプリカが属するペアとは異なるペアに属するジャーナルデータによって置き換えると、誤ったP-VOLが復元される。
【０３０１】
このような誤った復元を防ぐために、ジャーナルデータとP-VOLのレプリカとのペアを管理する必要がある。そのために、既に説明したP-VOL／JNLペア管理テーブル２２５が使用される（図４Ｅ参照）。
【０３０２】
P-VOL／JNLペア管理テーブル２２５において、P-VOL＃４７１は、複製元のオンラインのP-VOLの識別子、すなわち、図２０の例では第１のストレージシステム１２５に格納されたP-VOLの識別子である。
【０３０３】
複製P-VOL＃４７３は、第１のストレージシステム１２５に格納されたP-VOLから派生した複製P-VOL（第１のストレージシステム１２５に格納されたP-VOL及びジャーナルデータに基づいて、図１６に示す処理によって作成されたP-VOLの複製）の識別子である。
【０３０４】
JNL−VOL＃４７５は、複製P-VOL＃４７３によって識別される複製P-VOLが属するペアに属するジャーナルデータが格納された論理ボリュームの識別子を示す。
【０３０５】
図２１は、本発明の第１の実施形態において実行される、外部ストレージシステムへのデータ移動の処理の具体例の説明図である。
【０３０６】
最初に、Afterジャーナルが作成される場合について説明する。
【０３０７】
例えば、現在日時が、４月３０日が終了した時点（すなわち５月１日午前０時）である場合、現在の（すなわちオンラインの）P-VOL１８７Pに、JNLデータ２３３のうち４月１日〜４月３０日に作成されたものを反映させることによって、３月３１日が終了した時点（すなわち４月１日午前０時）のP-VOL１８７P１を復元することができる
（図２１（Ａ）参照）。
【０３０８】
その後、第１のストレージシステム１２５は、JNLデータ２３３のうち４月１日〜４月３０日に作成されたものをJNLデータ２３３S１として第２のストレージシステム１６１にコピーし、さらに、復元されたP-VOL１８７P１をP-VOL１８７Sとして第２のストレージシステム１６１にコピーする。
【０３０９】
これによって、第２のストレージシステム１６１は、第１のストレージシステム１２５から切り離されたとしても、少なくとも、４月１日午前０時のP-VOL１８７S、及び、それにJNLデータ２３３S１を反映させることによって作成される５月１日午前０時のP-VOLを提供することができる。
【０３１０】
第１のストレージシステム１２５からは、JNLデータ２３３のうち４月１日〜４月３０日に作成されたもの、及び、復元されたP-VOL１８７P１が削除される。これによって、第１のストレージシステム１２５内の空き容量が増加するため、さらに新しい世代のジャーナルデータを格納することができる。
【０３１１】
さらに、１ヶ月が経過すると、第１のストレージシステム１２５は、JNLデータ２３３のうち５月１日〜５月３１日に作成されたものをJNLデータ２３３S２として第２のストレージシステム１６１にコピーする（図２１（Ｂ）参照）。この場合、さらに復元されたP-VOLをコピーする必要はない。既に図２１（Ａ）に示すように、４月１日午前０時のP-VOL１８７Ｓ及び４月１日〜４月３０日に作成されたJNLデータ２３３S１が格納されているため、これらとJNLデータ２３３S２とを用いて６月１日午前０時のP-VOLを復元することができるからである。
【０３１２】
ただし、JNLデータ２３３S２をコピーしようとするときに、P-VOL１８７Ｓ及びJNLデータ２３３S１が第２のストレージシステム１６１に格納されていない場合、第１のストレージシステム１２５は、図２１（A）と同様の手順によって、５月１日午前０時のP-VOLを復元し、第２のストレージシステム１６１にコピーする必要がある。
【０３１３】
あるいは、図２１（B）に示すようにP-VOL１８７Ｓ、JNLデータ２３３S１及びJNLデータ２３３S２が第２のストレージシステム１６１に格納されている場合であっても、現在日時が８月１日午前０時であり、６月１日〜６月３０日に作成されたJNLデータ２３３が第１のストレージシステム１２５及び第２のストレージシステム１６１のいずれからも既に削除されている場合、図２１（Ａ）と同様の手順によってP-VOLを復元してコピーする必要がある。
【０３１４】
具体的には、この場合、第１のストレージシステム１２５は、オンラインのP-VOL１８７Ｐに７月１日〜７月３１日に作成されたJNLデータ２３３を反映させることによって、７月１日午前０時のP-VOL（図示省略）を復元し、それを第２のストレージシステム１６１にコピーする。さらに、７月１日〜７月３１日に作成されたJNLデータ２３３も第２のストレージシステム１６１にコピーされる。この場合、７月１日午前０時のP-VOLの複製と、７月１日〜７月３１日に作成されたJNLデータ２３３とが第２のストレージシステムにおいて一つのペア（図２１（B）の例ではペア２１０１B）として管理される。一方、P-VOL１８７Ｓ、JNLデータ２３３S１及びJNLデータ２３３S２は、別のペア（図２１（B）の例ではペア２１０１A）として管理される。
【０３１５】
次に、Beforeジャーナルが作成される場合について説明する。
【０３１６】
例えば、現在日時が５月１１日午前０時である場合、現在の（すなわちオンラインの）P-VOL１８７Pに、JNLデータ２３３のうち５月１日〜５月１０日に作成されたもの（図示省略）を反映させることによって、４月３０日が終了した時点（すなわち５月１日午前０時）のP-VOL１８７P１を復元することができる（図２１（Ａ）参照）。
【０３１７】
その後、第１のストレージシステム１２５は、JNLデータ２３３のうち４月１日〜４月３０日に作成されたものをJNLデータ２３３S１として第２のストレージシステム１６１にコピーし、さらに、復元されたP-VOL１８７P１をP-VOL１８７Sとして第２のストレージシステム１６１にコピーする。
【０３１８】
これによって、第２のストレージシステム１６１は、第１のストレージシステム１２５から切り離されたとしても、少なくとも、５月１日午前０時のP-VOL１８７S、及び、それにJNLデータ２３３S１を反映させることによって作成される４月１日午前０時のP-VOLを提供することができる。
【０３１９】
第１のストレージシステム１２５からは、JNLデータ２３３のうち４月１日〜４月３０日に作成されたもの、及び、復元されたP-VOL１８７P１が削除される。これによって、第１のストレージシステム１２５内の空き容量が増加するため、さらに新しい世代のジャーナルデータを格納することができる。
【０３２０】
さらに、１ヶ月が経過すると、第１のストレージシステム１２５は、JNLデータ２３３のうち５月１日〜５月３１日に作成されたものをJNLデータ２３３S２として第２のストレージシステム１６１にコピーする（図２１（Ｂ）参照）。この場合、第１のストレージシステム１２５は、上記と同様の手順によって、６月１日午前０時のP-VOL１８７P１を復元し、それを第２のストレージシステム１６１にコピーする必要がある。Beforeジャーナルが作成される場合、JNLデータ２３３S２を用いて５月１日午前０時のP-VOLを復元するためには、６月１日午前０時のP-VOL１８７P１が必要だからである。
【０３２１】
この場合、先にコピーされたP-VOL１８７S（すなわち５月１日午前０時のP-VOL１８７Ｐ１の複製）及びJNLデータ２３３S１が第１のペア（例えばペア２１０１A）トして管理され、後にコピーされた６月１日午前０時のP-VOL１８７P１の複製及びJNLデータ２３３S２が第２のペア（例えばペア２１０１Ｂ）として管理されてもよい。
【０３２２】
あるいは、６月１日午前０時のP-VOL１８７Ｐ１が新たなP-VOL１８７Ｓとして第２のストレージシステム１６１にコピーされてもよい。この場合、先にコピーされた５月１日午前０時のP-VOL１８７Sは削除される。そして、新たなP-VOL１８７Ｓ、JNLデータ２３３S１及びJNLデータ２３３S２が一つのペア（例えばペア２１０１A）として管理されてもよい。
【０３２３】
次に、上記のように復元されたP-VOLが外部ストレージシステムにコピーされた場合に、P-VOL及びジャーナルデータを外部ストレージシステムからリストアする処理について説明する。
【０３２４】
図２２は、本発明の第１の実施形態において実行される、P-VOL及びジャーナルデータを外部ストレージシステムからリストアする処理の概要の説明図である。
【０３２５】
具体的には、図２２は、第２のストレージシステム１６１が第１のストレージシステム１２５から切り離され、第１のストレージシステム１２５と同等の機能を備える第３のストレージシステム２２０１に新たに外部接続された場合の、P-VOL及びジャーナルデータのリストアを示す。
【０３２６】
この場合、管理サーバ１１１は、ホスト計算機１０１を介して、少なくとも、カタログ管理情報テーブル３１１を第３のストレージシステム２２０１に提供し、さらに、過去のある世代のP-VOLのデータを第３のストレージシステム２２０１に要求する。
【０３２７】
第３のストレージシステム２２０１は、要求された世代を復元するために、必要なジャーナルデータ及びP-VOLのデータの送信を第２のストレージシステム１６１に要求する。そして、その要求に従って送信されたジャーナルデータ及びP-VOLのデータを使用して、要求された世代のP-VOLを復元し、要求されたデータを返す。
【０３２８】
図２３は、本発明の第１の実施形態において実行される、P-VOL及びジャーナルデータを外部ストレージシステムからリストアする処理を示すフローチャートである。
【０３２９】
図２３は、図２２に示した処理の詳細を示すものである。
【０３３０】
図２３に示す処理は、図１５を参照して説明した処理とほとんど同じである。具体的には、図２３のS９０１０〜S９１００が、それぞれ、図１５のS５０１０〜S５１００に対応する。
【０３３１】
ただし、図１５においてS５０３０〜S５０９０（S５０６０を除く）が第１のストレージシステム１２５によって実行されるのに対して、図２３のS９０３０〜S９０９０（S９０６０を除く）は、第３のストレージシステム２２０１によって実行される。この場合であっても、管理サーバ１１１が保持するカタログ管理情報テーブル３１１に基づいて、第３のストレージシステム２２０１は、ジャーナルデータの所在を知ることができる。
【０３３２】
さらに、P-VOL／JNLペア管理テーブル２２５が第１のストレージシステム１２５から第３のストレージシステム２２０１にコピーされていれば、第３のストレージシステム２２０１は、P-VOL／JNLペア管理テーブル２２５に基づいて、ジャーナルデータと、そのジャーナルデータを用いてP-VOLを復元するために必要なP-VOLと、の対応関係を知ることができる。このため、S９０３０において、第３のストレージシステム２２０１は、復元のために必要なP-VOLの所在も特定することができる。
【０３３３】
例えば、管理サーバ１１１は、P-VOL／JNLペア管理テーブル２２５の複製を保持し、第２のストレージシステム１６１が新たに第３のストレージシステム２２０１に外部接続されたときに、そのP-VOL／JNLペア管理テーブル２２５の複製を第３のストレージシステム２２０１に送信してもよい。これによって、第３のストレージシステム２２０１は、P-VOL／JNLペア管理テーブル２２５の複製を保持することができる。
【０３３４】
そして、第３のストレージシステム２２０１は、必要なジャーナルデータを格納するための領域に加えて、第２のストレージシステム１６１から転送される、必要なP-VOLを格納するための領域も確保する（S９０４０）。
【０３３５】
そして、第３のストレージシステム２２０１は、必要なジャーナルデータ及び必要なP-VOLの転送を第２のストレージシステム１６１に要求する（S９０５０）。
【０３３６】
この要求を受信した第２のストレージシステム１６１は、要求されたジャーナルデータ及びP-VOLのデータを読み出して第３のストレージシステム２２０１に送信する（S９０６０）。
【０３３７】
第３のストレージシステム２２０１は、第２のストレージシステム１６１から受信したジャーナルデータ及びP-VOLのデータを格納し（S９０７０）、それらを使用してP-VOLを復元する（S９０８０）。
【０３３８】
例えば、第２のストレージシステム１６１が、図２１（Ｂ）に示すようなジャーナルデータ及びP-VOLの複製を格納している場合、第３のストレージシステム２２０１は、JNLデータ２３３S１及び２３３S２を用いて６月１日のP-VOLを復元するために、P-VOL１８７Sが必要であることを知ることができる。そして、S９０６０において、JNLデータ２３３S１及び２３３S２を含むジャーナルデータに加えて、P-VOL１８７Ｓが転送される。
【０３３９】
なお、図２２及び図２３には、第２のストレージシステム１６１から転送されたP-VOL及びジャーナルデータを使用して要求された世代のP-VOLを復元する処理を第３のストレージシステム２２０１が実行する例を示したが、第２のストレージシステムが要求された世代のP-VOLを復元してもよい。その場合、第２のストレージシステムは、復元したP-VOLを第３のストレージシステム２２０１にコピーしてもよいし、第３のストレージシステム２２０１が管理サーバ１１１から要求されたデータのみを第３のストレージシステム２２０１に送信してもよい。
【０３４０】
具体的には、第３のストレージシステム２２０１は、S９０５０において、S９０２０で受信した要求と同様の要求を第２のストレージシステム１６１に送信してもよい。この要求には、必要なジャーナルデータ及び必要なP-VOLの所在を示す情報が含まれる。この情報は、カタログ管理情報テーブル３１１に基づいて作成される。
【０３４１】
図１５の場合と同様、カタログ管理情報テーブル３１１と同等の情報が第３のストレージシステム２２０１に保持されてもよい。その場合、必要なジャーナルデータ及び必要なP-VOLの所在を示す情報は、第３のストレージシステム２２０１に保持された情報に基づいて作成されてもよい。第２のストレージシステムは、受信した要求に基づいて、P-VOLを復元する。
【０３４２】
上記のように第２のストレージシステム１６１がP-VOLを復元する場合、S９０４０及びS９０８０を実行する必要はない。
【０３４３】
以上、図１６から図２３を参照して説明したように、ジャーナルデータに加えて、復元されたP-VOLの複製も外部ストレージシステムに移動すれば、外部ストレージシステムは、第１のストレージシステム１２５から切り離された後、ホスト計算機１０１に、直接、又は第３のストレージシステム２２０１を介して、一つ以上の世代のP-VOLを提供することができる。これによって、外部ストレージシステムをオフラインバックアップ又はアーカイブとして使用することができる。
【０３４４】
次に、世代間差分データ等のマージについて説明する。
【０３４５】
図２４及び図２５を参照して説明するように、本実施形態では、複数の世代分の世代間差分データ及び差分BMのマージをマージすることができる。これによって、消費される記憶容量を削減することができる。以下、マージ後の世代間差分データを「マージ差分データ」と記載する。
【０３４６】
図２４は、本発明の第１の実施形態において実行される、世代間差分データをマージする処理を示すフローチャートである。
【０３４７】
図２５は、本発明の第１の実施形態において実行されるマージ処理に関するデータ要素の動きを示す説明図である。
【０３４８】
以下、図２４及び図２５を参照して、マージ処理を説明する。
【０３４９】
図２５に示すように、JNLマージプログラム２０８（図２参照）は、或る世代数分（例えば（m＋１）世代、すなわち、世代（N）から世代（N＋m）までの世代）の世代間差分データが格納されていることを検出したときに、（m＋１）世代分の世代間差分データをマージ差分データに変換するマージ処理を開始する。
【０３５０】
なお、マージ処理は、上記のように、（m＋１）世代分の世代間差分データが溜まっていることが検出されたことを契機として開始されてもよい。しかし、この契機は一例にすぎず、他の契機に基づいてマージ処理が開始されてもよい。例えば、直前回のマージ処理から所定期間が経過したことを契機としてマージ処理が開始されてもよい。
【０３５１】
JNLマージプログラム２０８は、JNL情報テーブル２３１のうち、マージ対象の世代（N）〜世代（N＋m）の［状態］（図示せず）を“マージ中”に更新する。そして、JNLマージプログラム２０８は、マージ対象の最古の世代（N）の世代間差分データを、対象として選択する（S１７００１）。
【０３５２】
JNLマージプログラム２０８は、対象の世代間差分データに対応した差分BM（N）（すなわち、第（Ｎ）世代の差分BM４４３）の先頭ビットを参照位置として決定する（S１７００２）。
【０３５３】
JNLマージプログラム２０８は、差分BM（N）について参照位置と決定されたビットがオンであれば、S１７００４を実行し、そのビットがオフであれば、S１７００９を実行する。以下、図２４及び図２５の説明において、その参照位置と決定されたビットを「対象ビット」と記載し、そのビットがオンであれば「対象オンビット」と記載し、そのビットがオフであれば「対象オフビット」と記載する。
【０３５４】
JNLマージプログラム２０８は、今回作成するマージ差分データに対応する差分BM（以下、図２４及び図２５の説明において、「マージ差分BM」と記載する）について、上記対象ビットと同じ位置にあるビットがオフであれば、S１７００５を実行し、そのビットがオンであれば、S１７００９を実行する。
【０３５５】
JNLマージプログラム２０８は、差分BM（N）における対象オンビットに対応するデータ格納アドレスを探し（S１７００５）、そのアドレスを特定する（S１７００６）。そして、JNLマージプログラム２０８は、そのアドレスが示すセグメントに記憶されている世代間差分データ要素を、そのセグメントから、今回作成されるマージ差分データに対応したJNLサブエリア内のセグメント（すなわち、直前回のコピー先のセグメントの次のセグメント）にコピーする（S１７００７）。そして、JNLマージプログラム２０８は、マージ差分BMにおける、上記対象ビットと同じ位置にあるビットを、オンにする（S１７００８）。
【０３５６】
JNLマージプログラム２０８は、差分BM（N）において、これまでの参照位置の次の位置に未参照のビットがあるか否かを判定する（S１７００９）。これまでの参照位置の次の位置に未参照のビットがあれば（すなわちS１７００９で「Y」と判定された場合）、次のビットを新たな参照位置に決定して（S１７０１０）、S１７００３を実行する。
【０３５７】
一方、次の位置に未参照のビットが無ければ（すなわちS１７００９で「N」と判定された場合）、その世代（N）についての処理が終了する（S１７０１１）。そして、JNLマージプログラム２０８は、次の世代があるか否かを判定する。次の世代があれば（すなわちS１７０１２で「Y」と判定された場合）、JNLマージプログラム２０８は、次の世代（N＋１）について、S１７００１を実行する。もし、次の世代が無ければ（すなわち、直前回に処理された世代が（N＋m）であれば（S１７０１２で「N」）、マージ
処理が終了する。
【０３５８】
以上の流れによれば、図２５に示すように、マージ対象の世代（N）〜（N＋m）のうちの古い世代に対応した世代間差分データから先に処理される。世代間差分データに対応した差分BMではオンビットであって、マージ差分BMにおいて、そのオンビットに対応したビットがオフであれば、そのオンビットに対応した世代間差分データ要素が、マージ差分データに対応したJNLサブエリアにコピーされる。一方、世代間差分データに対応した差分BMではオンビットであり、マージ差分BMにおいても、そのオンビットに対応したビットがオンであれば、世代間差分データに対応した差分BM内のオンビットに対応したデータ要素はコピーされない。
【０３５９】
要するに、古い世代に対応した世代間差分データ要素ほど、優先的に、マージ差分データに対応したJNLサブエリアにコピーされる。具体的には、例えば、図２５によれば、世代（N）と世代（N＋m）（m＝２の場合、世代（N＋２））の２つの世代について、P-VOLの先頭ブロックに対応した世代間差分データ要素“A”及び“G”が存在している。この場合、前述したように、古い世代に対応した世代間差分データ要素ほど優先されるので、世代（N）についてのデータ要素“A”は、マージ差分データに対応したJNLサブエントリにコピーされるが、その世代（N）よりも新しい世代についてのデータ要素“G”は、そのJNLサブエントリにはコピーされない。
【０３６０】
なお、このマージ処理では、古い世代から先に処理されるが、新しい世代から先に処理されてもよい。但し、この場合、世代間差分データに対応した差分BMではオンビットであり、マージ差分BMにおいても、そのオンビットに対応したビットがオンであれば、世代間差分データに対応した差分BM内のオンビットに対応したデータ要素が、マージ差分データに対応したJNLサブエリアに記憶されている、オンビットに対応したマージ差分データ要素に上書きされてもよい。
【０３６１】
また、マージ差分データが作成された場合、そのマージ差分データの基になった複数世代分の世代間差分データは、マージ差分データの作成完了の直後に、又は計算機（例えば、ホスト計算機１０１又は管理サーバ１１１）からの指示に応答して、削除されてもよい。
【０３６２】
また、世代間差分データやマージ差分データが古い世代から削除されてもよい。この場合、例えば、JNL削除プログラム（図示省略）が、削除対象の世代に対応したJNL制御情報及びJNLデータを解放し、それらが格納されていた領域を空き領域として管理する。また、JNL削除プログラムは、第一のJNL管理テーブル２２４から、削除対象の世代に対応したエントリを削除する。
【０３６３】
例えば、第１のストレージシステム１２５が、上記のように、自身に格納されている差分をマージしてから、マージされた差分（すなわちマージされたジャーナルデータ）を第２のストレージシステム１６１へバックアップしてもよい。
【０３６４】
ここで、図９を参照して、世代のマージの具体例を説明する。説明を簡単にするため、現在時刻が、世代N＋２が確定した時点であると仮定する。すなわち、現時点のオンラインのP-VOL１８７Pは、確定した世代N＋２のP-VOL１８７Ｐと同一である。
【０３６５】
この場合において、世代N＋１と世代N＋２とをマージする処理について説明する。
【０３６６】
マージが実行される前の時点で、世代N＋２に対応する差分データとして、JNLデータ要素２７０２Ｃ及び２７０２Ｅが保持されている。これらは、世代N＋２のP-VOL１８７Ｐに基づいて世代N＋１のP-VOL１８７Pを復元するために必要な差分データである。さらに、世代N＋１に対応する差分データとして、JNLデータ要素２７０２Ａ及び２７０２Ｂが保持されている。これらは、世代N＋１のP-VOL１８７Pに基づいて世代ＮのP-VOL１８７Pを復元するために必要な差分データである。
【０３６７】
世代N＋１と世代N＋２とをマージする処理とは、世代N＋２のP-VOL１８７Pに基づいて世代ＮのP-VOL１８７Pを復元するために必要な差分データ（言い換えると、世代N＋２のP-VOL１８７Pと、世代ＮのP-VOL１８７Pとの差分データ）を残し、その他のデータを削除する処理である。
【０３６８】
図９の例では、データ２７０１Gが格納されたブロックに対応する二つの差分データ、すなわち、世代N＋２のJNLデータ要素２７０２Ｅ及びJNLデータ要素２７０２Aが保持されている。この場合、より古い世代のJNLデータ要素２７０２Aが残され、JNLデータ要素２７０２Eは削除される。JNLデータ要素２７０２Eは、世代N＋１のP-VOL１８７Pを復元するためには必要であるが、世代ＮのP-VOL１８７Pを復元するためには必要ないからである。
【０３６９】
同様に、JNLデータ要素２７０２B及びJNLデータ要素２７０２Cが残される。
【０３７０】
上記のように世代をマージすることによって、世代N＋１のP-VOL１８７Pを復元するためだけに必要なJNLデータ要素２７０２Eが削除されるため、空き記憶領域が増加するかわりに、世代N＋１のP-VOL１８７Pを復元することはできなくなる。すなわち、世代をマージすることによって、保存する必要性の低い世代を復元するためだけに必要なジャーナルデータを削除することができ、これによって、ジャーナルデータを格納するための記憶領域の容量を削減することができる。
【０３７１】
次に、外部ストレージシステムへのジャーナルデータの移動の別の例について、図２６から図２８を参照して説明する。
【０３７２】
図２６は、本発明の第１の実施形態において、外部ストレージシステムがジャーナルデータを階層管理する場合のジャーナルデータの移動の説明図である。
【０３７３】
本実施形態の第２のストレージシステム１６１は、第１のストレージシステム１２５とは異なる種類の記憶媒体を備えてもよい。例えば、第１のストレージシステム１２５が一つ以上のHDDを備えるのに対して、第２のストレージシステム１６１は、HDDに加えて磁気テープ記憶装置（例えばテープライブラリ）３１０１を備えてもよい。この場合、第２のストレージシステム１６１は、HDDに格納されるジャーナルデータと磁気テープ記憶装置３１０１に格納されるジャーナルデータとを階層管理することができる。
【０３７４】
なお、図２６の例において磁気テープ記憶装置３１０１は一例に過ぎず、磁気テープ記憶装置３１０１がその他の種類の記憶装置によって置き換えられてもよい。
【０３７５】
例えば、既に説明したように、アクセス頻度が所定の値（第１の値）より低いジャーナルデータが第１のストレージシステム１２５から第２のストレージシステム１６１に移動する場合、第２のストレージシステム１６１に移動したジャーナルデータのうち、アクセス頻度が第２の値より低いジャーナルデータが磁気テープ記憶装置３１０１に格納される。ただし、第２の値は、第１の値より低いアクセス頻度を示す。
【０３７６】
古い世代のジャーナルデータほどアクセス頻度が低い場合、第１のストレージシステム１２５に格納されたジャーナルデータのうち比較的古い世代のものが第２のストレージシステムに移動し、第２のストレージシステムに移動したジャーナルデータの中で比較的古い世代のものが磁気テープ記憶装置３１０１に格納される。
【０３７７】
図１６等を参照して説明したように、第２のストレージシステム１６１にP-VOLの複製が格納されてもよい。その場合、磁気テープ記憶装置３１０１にもP-VOLの複製が格納されてもよい。あるいは、第２のストレージシステム１６１にオンラインのP-VOLが格納されてもよい。
【０３７８】
図２７は、本発明の第１の実施形態において、外部ストレージシステムが磁気テープ記憶装置を備える場合のジャーナルデータの移動の説明図である。
【０３７９】
具体的には、図２７は、図２６の例において第２のストレージシステムに内蔵される記憶装置が磁気テープ記憶装置３１０１である場合の、テープへのジャーナルデータの格納の例を示す。
【０３８０】
図２７の例では、一つの世代のジャーナルデータが一つ（すなわち１巻）のテープ記憶媒体に格納される。具体的には、図２７の例において、第１のストレージシステム１２５のJNL関連エリア１８８には、世代１から世代４までの４世代のジャーナルデータが、それぞれ、識別番号（識別子）「１」から「４」までで識別される四つの論理ボリュームに格納される。以下の説明において、これらの四つの論理ボリュームを、それぞれ、J−VOL＃１〜Ｊ−VOL＃４と記載する。
【０３８１】
JNL関連エリア１８８内の一つの論理ボリュームに格納されたジャーナルデータは、第２のストレージシステム１６１内の一つの論理ボリュームに移動する。そして、第２のストレージシステム１６１内の一つの論理ボリュームに格納されたジャーナルデータは、１巻のテープ記憶媒体に格納される。
【０３８２】
図２７の例では、第２のストレージシステム１６１内に、ジャーナルデータの移動先として三つの論理ボリューム、すなわち、識別番号「１００」から「１０２」までで識別される三つの論理ボリュームが格納される。以下の説明において、これらの三つの論理ボリュームを、それぞれ、VOL＃１００〜VOL＃１０２と記載する。さらに、図２７の磁気テープ記憶装置３１０１は、それぞれ識別番号「１」から「３」までで識別される三つのテープ記憶媒体を備える。以下の説明において、これらの三つのテープ記憶媒体を、それぞれ、テープ＃１〜テープ＃３と記載する。
【０３８３】
ただし、JNL関連エリア１８８内の一つの論理ボリュームに格納されたジャーナルデータが、第２のストレージシステム１６１内の一つの論理ボリュームに移動した後、さらにJNL関連エリア１８８内の別の論理ボリュームに格納されたジャーナルデータが第２のストレージシステム１６１内の同じ論理ボリュームに移動する場合がある。
【０３８４】
図２７の例では、世代１のジャーナルデータが、J−VOL＃１からVOL＃１００に移動し、さらに、テープ＃１に格納される。世代２のジャーナルデータが、J−VOL＃２からVOL＃１０１に移動し、さらに、テープ＃２に格納される。同様に、世代３のジャーナルデータが、J−VOL＃３からVOL＃１０２に移動する。しかし、その後、世代４のジャーナルデータがJ−VOL＃４からVOL＃１０２に移動する。このとき、先に移動した世代３のジャーナルデータはVOL＃１０２から消去される。このため、テープ＃３には、世代４のジャーナルデータが格納される。
【０３８５】
管理サーバ１１１は、どのテープ記憶媒体にどの世代のジャーナルデータが格納されているかを示す情報も管理する。
【０３８６】
第２のストレージシステム１６１内の論理ボリュームに、動的に記憶領域が割り当てられてもよい。すなわち、各論理ボリュームのうち、データが書き込まれた領域のみに物理的な記憶領域が割り当てられてもよい。この場合、各論理ボリュームが実際に使用している物理的な記憶領域の容量より大きい容量が各論理ボリュームに定義される場合がある。このような場合でも、各論理ボリュームに実際に格納されたデータのみがテープ記憶媒体に格納される。
【０３８７】
図２８は、本発明の第１の実施形態において、外部ストレージシステムに磁気テープ記憶装置が接続される場合のジャーナルデータの移動の説明図である。
【０３８８】
図２８では、図２６及び図２７の例と異なり、第２のストレージシステム１６１に、ネットワークを介して磁気テープ記憶装置１７３が接続される。そのネットワークには、さらにバックアップサーバ１７４が接続される。バックアップサーバ１７４は、第２のストレージシステム１６１の論理ボリュームに格納されたデータの磁気テープ記憶装置へのバックアップを制御する計算機である。
【０３８９】
例えば、図２６の場合と同様、第１のストレージシステム１２５に格納されたジャーナルデータのうち比較的古い世代のものが第２のストレージシステム１６１に移動し、さらに、第２のストレージシステム１６１に移動したジャーナルデータのうち比較的古いものが磁気テープ記憶装置１７３に格納されてもよい。
【０３９０】
第２のストレージシステム１６１には、移動したジャーナルデータを用いてP-VOLを復元するために必要なP-VOLの複製がさらに格納される。第２のストレージシステム１６１が第１のストレージシステム１２５から切り離された場合、第２のストレージシステム１６１に格納されたP-VOLの複製、ジャーナルデータ、及び、磁気テープ記憶装置１７３に格納されたジャーナルデータを用いて、P-VOLを復元することができる。
【０３９１】
磁気テープ記憶装置１７３には、ジャーナルデータのみが格納されてもよいし、ジャーナルデータに加えて、P-VOLの複製が格納されてもよいし、ある世代の論理ボリュームが格納されてもよい。
【０３９２】
本実施形態では、ジャーナルデータを第一のストレージシステム１２５に格納し、バックアップのタイミングで、第一のストレージシステム１２５のジャーナルデータを第二のストレージシステム１６１に格納する第１のパターンで説明したが、第一のストレージシステム１２５が、外部接続機能により第二のストレージシステム１６１のボリュームを仮装化した仮装ボリュームを設け、ジャーナルデータを最初から第二のストレージシステム１６１のボリュームに格納する第２のパターンもある。図２９以降では、第２のパターンを用いることを前提している。
【０３９３】
次に、Post  Process方式によってデータを処理する方法を図２９にしたがって説明する。本実施例は、第２のストレージシステム１６１には、圧縮前JNL（ジャーナルデータ）を格納するS-VOLの実体と圧縮後JNL（ジャーナルデータ）を格納するS-VOLの実体が設けられ、第１のストレージシステム１２５には、外部接続機能によって仮想化された仮想VOLとして、圧縮前JNLに対応した仮想VOLと、圧縮後JNLに対応した仮想VOLが設けられていることを前提として、圧縮前のジャーナルデータを圧縮・暗号化するに先立って、差分データがあることを条件に、データを一旦コピーし、その後データを圧縮・暗号化するものである。
【０３９４】
まず、ホスト計算機１０１からのコマンドを受信した制御プロセッサ１４３は、業務データの入ったオンラインVOLへリードライト要求を出す。オンラインVOLのスナップショットを取る際、スナップショットS-VOLは、外部接続機能により、第２のストレージシステム１６１に実態が存在するS-VOLをペアとして管理する。制御プロセッサ１４３は、差分BM４４３を参照し、オンラインVOLのジャーナルにデータがあるか否かを判定する。差分BM４４３のうち参照先のビットが“０”のときには、オンラインVOLのデータが更新されていないとして、オンラインVOLのデータをS-VOLにコピーする。
【０３９５】
一方、制御プロセッサ１４３は、差分BM４４３のうち参照先のビットが“１”のときには、ジャーナルデータはJNL関連エリア１８８に格納されているとともに、第２のストレージシステム１６１に格納済みであるとして処理する。
【０３９６】
このように、ジャーナルデータを圧縮・暗号化するに先立って、差分のあるデータを第２のストレージシステム１６１にコピーすることで、RTO（Recovery  Time  Objective）を最小化することができるとともに、オンラインVOLを処理する際に、ホスト計算機１０１に対するレスポンス時間を最小にすることができる。
【０３９７】
また、制御プロセッサ１４３は、ジャーナルデータをJNL関連エリア１８８に格納するに際しては、各世代のジャーナルデータのうち各世代で同一のものを一つに纏めるために、重複排除機能を用いることとしている。
【０３９８】
一方、制御プロセッサ１４３は、第２のストレージシステム１６１のS-VOLに格納されたジャーナルデータのうち圧縮前のジャーナルデータを圧縮前JNLとして処理する。
【０３９９】
そして、制御プロセッサ１４３は、圧縮前JNLに対して圧縮・暗号化するに際して、図３０に示すように、圧縮前JNLを、LR１３３を介してキャッシュメモリ１４７に取り込み、取り込んだ圧縮前JNLをキャッシュメモリ１４７間でコピーする。
【０４００】
次に、制御プロセッサ１４３は、キャッシュメモリ１４７内でコピーされた圧縮前JNLに対して重複排除処理を施し、世代間で同じデータを１つにまとめ、一つにもとめた圧縮前JNLをLR１３３に転送する。
【０４０１】
LR１３３は、圧縮前JNLを圧縮回路１３３３で圧縮し、圧縮されたJNLを暗号回路１３３１で、暗号鍵５２４を含む鍵情報５３０を用いて暗号化し、圧縮後に暗号化されたジャーナルデータを圧縮後JNLとして、第２のストレージシステム１６１に転送する。なお、ジャーナルデータを圧縮・暗号化するに際しては、LR１３３で行う代わりに、制御プロセッサ１４３が、圧縮プログラム２１２、暗号・復号プログラム２３１を用いてジャーナルデータを圧縮・暗号化することもできる。
【０４０２】
この際、各世代のジャーナルデータが全て圧縮・暗号化され、圧縮後JNLとして第２のストレージシステム１６１に格納されたときには、制御プロセッサ１４３は、図３１に示すように、JNL情報テーブル２３１の先頭アドレス４３２に対するマッピング変更処理を行う。この場合、制御プロセッサ１４３は、圧縮後JNL用のJNL制御情報テーブル２３２のマッピングを変更し、その後、圧縮前JNL用のJNL制御情報テーブル２３２の差分BM４４３を削除する。
【０４０３】
また、圧縮は、一般的にある一定のサイズ、例えば、ユーザ指定の可能なサイズごとに行われる。このため、ジャーナルデータを圧縮する場合、１つの世代を複数回に分けて行うことなる。この場合、暗号も同様に１つの世代を複数回に分けて行うことになる。
【０４０４】
一方、第２のストレージシステム１６１に格納されたS-VOLのデータに対しては、図３２に示すように、制御プロセッサ１４３は、S-VOLのデータをLR１３３を介してキャッシュメモリ１４７に取り込み、取り込んだS-VOLのデータをLR１３３に転送する。LR１３３は、S-VOLのデータを暗号回路１３３１と鍵情報５３０を用いて暗号化し、暗号化されたS-VOLのデータを第２のストレージシステム１６１に転送する。
【０４０５】
本実施例によれば、差分のデータを第１のストレージシステム１２５から第２のストレージシステム１６１に一旦コピーし、第２のストレージシステム１６１に格納されている圧縮前JNLを圧縮・暗号化するときには、第２のストレージシステム１６１に格納されている圧縮前JNLを第１のストレージシステム１２５に転送し、第１のストレージシステム１２５でジャーナルデータを圧縮して暗号化し、圧縮後に暗号化されたジャーナルデータを第２のストレージシステム１６１に格納するようにしたため、第２のストレージシステム１６１に格納されるジャーナルデータの容量を少なくすることができるとともに、RTOを最小化し、且つホスト計算機１０１に対するレスポンス時間を最小にすることができる。
【０４０６】
次に、第２の方式である、On  The   Fly方式によってデータを処理する方法を図３３にしたがって説明する。本実施例は、ジャーナルデータを圧縮してから暗号化し、圧縮後に暗号化されたジャーナルデータを第２のストレージシステム１６１へ転送するものである。
【０４０７】
まず、制御プロセッサ１４３は、差分BM４４３を参照し、差分BM４４３のうち参照先のビットが“０”のときには、オンラインVOLのデータをS-VOLにコピーするに際して、オンラインVOLのデータをLR１３３に転送する。LR１３３は、暗号回路１３３１で鍵情報５３０を用いてオンラインVOLのデータを暗号化し、暗号されたデータを第２のストレージシステム１６１に転送する。これにより、オンラインVOLのデータが暗号化された後、S-VOLのデータとして第２のストレージシステム１６１にコピーされる。
【０４０８】
一方、制御プロセッサ１４３は、差分BM４４３の参照先のビットが“１”のときには、ジャーナルデータに重複排除処理を施した後、このジャーナルデータをJNL関連エリア１８８に格納するとともにLR１３３に転送する。LR１３３は、ジャーナルデータを圧縮回路１３３３で圧縮し、圧縮されたジャーナルデータを暗号回路１３３１で鍵情報５３０に従って暗号化し、圧縮後に暗号化されたジャーナルデータを第２のストレージシステム１６１に転送する。これにより、圧縮後に暗号化されたジャーナルデータは第２のストレージシステム１６１に格納される。
【０４０９】
本実施例によれば、ジャーナルデータを圧縮して暗号化し、圧縮後に暗号化されたジャーナルデータを第２のストレージシステム１６１に格納するようにしたため、第２のストレージシステム１６１に格納されるジャーナルデータの容量を少なくすることができる。
【０４１０】
また、本実施例によれば、ジャーナルデータを圧縮・暗号化した後、第２のストレージシステム１６に転送するようにしているため、第１の方式よりもホスト計算機１０１に対するレスポンス時間は長くなるが、制御プロセッサ１４３に余裕がある場合、ユーザの操作が容易となる。
【０４１１】
なお、本実施例は、ホストIOと同期してバックアップを取る必要があるため、第１の方式を用いた実施例よりも、IO性能は低下する。
【０４１２】
次に、第３方式として、第１の方式と第２の方式を併用して、データを処理する方法を図３４および図３５にしたがって説明する。
【０４１３】
本実施例は、ジャーナルデータを第１のストレージシステム１２５で暗号化した後、第２のストレージシステム１６１に転送し、その後、暗号化されたジャーナルデータを第１のストレージシステム１２５に戻し、第１のストレージシステム１２５でジャーナルデータを復号化し、復号化されたジャーナルデータを圧縮して暗号化し、圧縮後に暗号化されたジャーナルデータを再び第２のストレージシステム１６１に格納するようにしたものである。
【０４１４】
まず、制御プロセッサ１４３は、差分BM４４３を参照し、参照先のビットが“０”のときには、オンラインVOLのデータをS-VOL（仮想）のデータとしてコピーし、コピーされたS-VOLのデータをLR１３３に転送する。LR１３３は、暗号回路１３３１が鍵情報５３０にしたがってS-VOLのデータを暗号化し、その後、暗号化されたS-VOLのデータを第２のストレージシステム１６１に転送する。これにより、S-VOLのデータは第２のストレージシステム１６１に格納される。
【０４１５】
一方、制御プロセッサ１４３は、差分BM４４３を参照し、参照先のビットが“１”のときには、ジャーナルデータに対して重複排除処理を施した後、このジャーナルデータを圧縮前JNLに対応する仮想VOLに格納するとともに、LR１３３に転送する。LR１３３は、暗号回路１３３１が鍵情報５３０を用いてジャーナルデータを暗号化し、暗号化されたジャーナルデータを圧縮前JNLとして、第２のストレージシステム１６１に転送する。これにより、第２のストレージシステム１６１には、圧縮前JNLが格納される。
【０４１６】
この場合、第２のストレージシステム１６１に信頼性の低いものを用いても、ジャーナルデータを一旦暗号化してから第２のストレージシステム１６１に格納しているため、より安全にジャーナルデータを第２のストレージシステム１６１に格納することができる。
【０４１７】
次に、制御プロセッサ１４３は、図３５に示すように、第２のストレージシステム１６１に格納された圧縮前JNLをLR１３３に戻すための処理を行う。この際、LR１３３は、復号回路１３３２が暗号・復号プログラム２１３にしたがって圧縮前JNLを復号化し、復号化されたジャーナルデータをキャッシュメモリ１４７に転送する。
【０４１８】
この後、制御プロセッサ１４３は、復号化されたジャーナルデータに対してキャッシュ間コピーを行い、コピーされたジャーナルデータをLR１３３に転送する。
【０４１９】
この後、LR１３３は、復号化されたジャーナルデータを圧縮回路１３３３で圧縮し、圧縮されたジャーナルデータを暗号回路１３３１で暗号化し、圧縮後に暗号化されたジャーナルデータを第２のストレージシステム１６１に転送する。これにより、第２のストレージシステム１６１には、圧縮後に暗号化されたジャーナルデータが圧縮後JNLとして格納される。
【０４２０】
この際、圧縮されたジャーナルデータはデータ長が変更されるため、圧縮前JNLとは異なる領域に格納される。そして各世代のジャーナルデータが全て圧縮されて、圧縮後JNLとして、第２のストレージシステム１６１に格納されたときには、制御プロセッサ１４３は、JNL情報テーブル２３１のマッピングを変更するための処理を行う。
【０４２１】
本実施例によれば、ジャーナルデータを圧縮して暗号化し、圧縮後に暗号化されたジャーナルデータを第２のストレージシステム１６１に格納するようにしたため、第２のストレージシステム１６１に格納されるジャーナルデータの容量を少なくすることができる。
【０４２２】
また、本実施例によれば、第２のストレージシステム１６１に信頼性の低いものを用いても、より安全にジャーナルデータを第２のストレージシステム１６１に格納することができる。
【０４２３】
次に、第１の方式を用いてデータを処理するときに、第１のストレージシステム１２５の外部に配置された暗号化装置を用いて、データを暗号化するときの処理方法を図３６にしたがって説明する。
【０４２４】
本実施例は、第１の方式を用いてデータを処理するときに、第１のストレージシステム１２５の外部に配置された暗号化装置１９０を用いて、データを暗号化するものである。暗号化装置１９０は、外部装置として、暗号回路１３３１と同一の機能を有する暗号回路１９１を備え、第３のネットワーク１０８を介して第１のストレージシステム１２５と第２のストレージシステム１６１に接続されている。
【０４２５】
まず、第１の方式を用いてデータを処理するに際して、制御プロセッサ１４３は、第２のストレージシステム１６１に格納された圧縮前JNLを、LR１３３を介してキャッシュメモリ１４７に戻し、圧縮前JNLに対してキャッシュ間コピーを行った後、コピーされた圧縮前JNLをLR１３３に戻す。
【０４２６】
LR１３３は、圧縮回路１３３３が圧縮前JNLを圧縮し、圧縮されたジャーナルデータを暗号化装置１９０に転送する。
【０４２７】
暗号化装置１９０は、圧縮されたジャーナルデータを暗号回路１９１が暗号化し、圧縮後に暗号化されたジャーナルデータを第２のストレージシステム１６１に転送する。これにより、第２のストレージシステム１６１には、圧縮後に暗号化されたジャーナルデータが圧縮後JNLとして格納される。
【０４２８】
この際、制御プロセッサ１４３は、各世代のデータが全て圧縮後に暗号化されたときには、JNL情報テーブル２３１のマッピングを変更するための処理を行う。
【０４２９】
本実施例によれば、外部の暗号化装置１９０がジャーナルデータを暗号化するようにしたため、制御プロセッサ１４３の処理を軽減することができる。
【０４３０】
次に、第２の方式を用いてデータを処理するときに、外部の暗号化装置１９０を用いてデータを暗号化するときの処理方法を図３７にしたがって説明する。
【０４３１】
本実施例は、第２の方式を用いてジャーナルデータを圧縮・暗号化する過程で、ジャーナルデータの暗号化処理を外部の暗号化装置１９０で行うようにしたものである。
【０４３２】
まず、制御プロセッサ１４３は、差分BM４４３を参照し、参照先のビットが“０”のときには、オンラインVOLのデータをS-VOL(仮想)にコピーしたあと、暗号化回路１９０に転送する。
【０４３３】
暗号化装置１９０は、S-VOLのデータに対して暗号回路１９１を用いて暗号化し、暗号化されたS-VOLのデータを第２のストレージシステム１６１に転送する。これにより、第２のストレージシステム１６１には、S-VOLのデータが格納される。
【０４３４】
次に、制御プロセッサ１４３は、差分BM４４３を参照し、参照先のビットが“１”のときには、ジャーナルデータに対して重複排除処理を施した後、このジャーナルデータを、圧縮後JNLに対応する仮想VOLに格納したあとLR１３３に転送する。LR１３３は、圧縮回路１３３３がジャーナルデータを圧縮し、圧縮されたジャーナルデータを暗号化装置１９０に転送する。
【０４３５】
暗号化装置１９０は、圧縮されたジャーナルデータを暗号回路１９１が暗号化し、圧縮後に暗号化されたジャーナルデータを第２のストレージシステム１６１に転送する。これにより、第２のストレージシステム１６１には、圧縮後に暗号化されたジャーナルデータが圧縮後JNLとして格納される。
【０４３６】
本実施例によれば、外部の暗号化装置１９０がジャーナルデータを暗号化するようにしたため、制御プロセッサ１４３の処理を軽減することができる。
【０４３７】
次に、第３の方式を用いてデータを処理するときに、外部の暗号化装置１９０を用いてデータを暗号化するときの処理方法を図３８にしたがって説明する。
【０４３８】
本実施例は、第３の方式を用いてデータを処理する過程で、ジャーナルデータを外部の暗号化装置１９０で暗号化するようにしたものである。
【０４３９】
まず、制御プロセッサ１４３は、キャッシュメモリ１４７からジャーナルデータを取り込んで、重複排除処理を施し、その後、重複排除処理が施されたジャーナルデータを暗号化装置１９０に転送する。暗号化装置１９０は、暗号回路１９１がジャーナルデータを暗号化し、暗号化されたジャーナルデータを第２のストレージシステム１６１に転送する。これにより、第２のストレージシステム１６１には、暗号化されたジャーナルデータが圧縮前JNLとして格納される。
【０４４０】
次に、制御プロセッサ１４３は、第２のストレージシステム１６１に格納された圧縮前JNLを、暗号化装置１９０を介して第１のストレージシステム１２５に戻すための処理を行う。この際、暗号化装置１９０は、圧縮前JNLを、復号回路（図示せず）を用いて復号化し、復号化されたジャーナルデータをキャッシュメモリ１４７へ転送する。
【０４４１】
この後、制御プロセッサ１４３は、復号化されたジャーナルデータに対してキャッシュメモリ１４７上でキャッシュ間コピーを行い、コピーされたジャーナルデータをLR１３３に転送する。
【０４４２】
LR１３３は、復号化されたジャーナルデータを圧縮回路１３３３が圧縮し、圧縮されたジャーナルデータを暗号化装置１９０に転送する。
【０４４３】
暗号化装置１９０は、圧縮されたジャーナルデータを暗号回路１９１が暗号化し、暗号化されたジャーナルデータを第２のストレージシステム１６１に転送する。これにより、第２のストレージシステム１６１には、圧縮後に暗号化されたジャーナルデータが圧縮後JNLとして格納される。
【０４４４】
なお、ジャーナルデータを、暗号化装置１９０を介して第２のストレージシステム１６１へ転送するか否かは第１のストレージシステム１２５で管理することとしている。
【０４４５】
本実施例によれば、外部の暗号化装置１９０がジャーナルデータを暗号化するようにしたため、制御プロセッサ１４３の処理を軽減することができる。
【０４４６】
次に、リストア処理を図３９にしたがって説明する。本実施例は、第２のストレージシステム１６１に格納されたデータを、暗号化装置１９０を介して第１のストレージシステム１２５にリストアするものである。
【０４４７】
まず、制御プロセッサ１４３は、データのリストア先の領域を第１のストレージシステム１２５内に確保するに際して、ジャーナルデータを確保するためのエリアとある世代のVOL（その時点でのオンラインVOL（＝P-VOL）分のデータが格納できるコピー先VOL）を確保する。
【０４４８】
次に、制御プロセッサ１４３は、リストア対象の世代に対応するデータとして、第２のストレージシステム１６１に格納されている、ある世代のS-VOLのデータを暗号化装置１９０の復号化回路で復号化した後、LR１３３の伸長回路１３３４で伸長し、伸長されたS-VOLのデータをキャッシュメモリ１４７上に戻す。この際、キャッシュメモリ１４７のうち戻し先VOLに対応した領域に、伸長されたS-VOLのデータを戻す。
【０４４９】
さらに、制御プロセッサ１４３は、第２のストレージシステム１６１に格納された圧縮後JNLを暗号化装置１９０に戻す。暗号化装置１９０は、復号化回路で圧縮後JNLを復号化し、復号化されたジャーナルデータをLR１３３に転送する。LR１３３は、復号化されたジャーナルデータを伸長回路１３３４で伸長した後、キャッシュメモリ１４７に転送する。この際、制御プロセッサ１４３は、キャッシュメモリ１４７のエリアのうち戻し先VOLに対応した領域を用いて処理する。
【０４５０】
次に、プロセッサ１４３は、ある世代のオンラインVOLのデータとジャーナルデータを基に、ユーザから要求のあった時点のVOLのデータを再現する。
【０４５１】
なお、S-VOLとして取得したものがスナップショットの場合は、現在のP-VOLのデータを参照することもあるため、P-VOLは必要であるが、S-VOLのレプリカを取得した場合は、P-VOLのデータは不要である。すなわち、S-VOLのレプリカを取得した場合、S-VOLのデータとジャーナルデータを基に、ユーザから要求のあった時点のVOLのデータを再現することができる。
【０４５２】
本実施例によれば、ある世代のオンラインVOLのデータとジャーナルデータを基に、ユーザから要求のあった時点のVOLのデータを再現することができる。
【０４５３】
次に、第１のストレージシステム１２５を第２のストレージシステム１６１から切り離した後、オンラインVOLとジャーナルデータを構築する方法を図４０にしたがって説明する。
【０４５４】
本実施例は、第１のストレージシステム１２５を第２のストレージシステム１６１から切り離すに際して、暗号鍵を含む鍵情報５３０を管理サーバ１１１に退避したあと、第１のストレージシステム１２５を第２のストレージシステム１６１から切り離したあと第３のストレージシステム２２０１を第２のストレージシステム１６１に接続し、第３のストレージシステム２２０１で鍵情報５３０を基にオンラインVOLとジャーナルデータを構築するようにしたものである。
【０４５５】
具体的には、第１のストレージシステム１２５を第２のストレージシステム１６１から切り離すに先立って、図４０（ａ）に示すように、鍵情報５３０を、LR１３３を介して管理サーバ１１１に退避する。この処理は、管理サーバ１１１または第１のストレージシステム１２５によって行うことができる。
【０４５６】
次に、第１のストレージシステム１２５を第２のストレージシステム１６１から切り離し、第１のストレージシステム１２５を、例えば、第１のストレージシステム１２５と同一の機能を有する第３のストレージシステム２２０１に入れ替えるためのリプレースを行う。
【０４５７】
この後、図４０（ｂ）に示すように、第３のストレージシステム２２０１と第２のストレージシステム１６１とを接続する。次に、第３のストレージシステム２２０１の制御プロセッサは、鍵情報５３０を退避先の管理サーバ１１１から取得する。この後、管理サーバ１１１は、第２のストレージシステム１６１内のデータを第３のストレージシステム２２０１が認識できるように、第３のストレージシステム２２０１に対するセッティング処理を行う。
【０４５８】
次に、第３のストレージシステム２２０１の制御プロセッサは、第２ストレージシステム１６１に格納された、古いオンラインVOLのデータや古いジャーナルデータを、LR１３３を介して取り込み、取り込んだデータを基にオンラインVOLのデータとジャーナルデータを構築する。
【０４５９】
なお、鍵情報５３０を管理サーバ１１１に退避させるに際しては、暗号化開始時点、第１のストレージシステム１２５を第２のストレージシステム１６１から切り離しするタイミングの前、定期的に、あるいは鍵情報テーブル更新時などを契機として実行することができる。
【０４６０】
本実施例によれば、第１のストレージシステム１２５を第２のストレージシステム１６１から切り離し、その後、第３のストレージシステム２２０１を第２のストレージシステム１６１に接続しても、第３のストレージシステム２２０１で鍵情報５３０を基にオンラインVOLとジャーナルデータを構築することができる。
【０４６１】
次に、第１のストレージシステム１２５を第２のストレージシステム１６１から切り離した後、オンラインVOLとジャーナルデータを構築するときの他の処理方法を図４１に従って説明する。
【０４６２】
本実施例は、第１のストレージシステム１２５を第２のストレージシステム１６１から切り離し、第１のストレージシステム１２５の代わりに、例えば、第１のストレージシステム１２５と同一の機能を有する第３のストレージシステム２２０１を用い、第２のストレージシステム１６１内のデータを暗号化装置１９０を介して第３のストレージシステム２２０１に戻すようにしたものである。
【０４６３】
具体的には、図４１（ａ）に示すように、第２のストレージシステム１６１に、どの世代のデータが格納されているかのカタログ情報を第１のストレージシステム１２５以外のところに退避済みであることを条件に、第１のストレージシステム１２５と第２のストレージシステム１６１とを切り離す。
【０４６４】
次に、図４１（ｂ）に示すように、第１のストレージシステム１２５の代わりの第３のストレージシステム２２０１を第２のストレージシステム１６１に接続する。この後、第３のストレージシステム２２０１の制御プロセッサは、退避されていたカタログ情報を取得する。その後、管理サーバ１１は、第３のストレージシステム２２０１が、第２のストレージシステム１６１内のデータを認識するためのセッティング処理を行う。
【０４６５】
次に、第３のストレージシステム２２０１の制御プロセッサは、第２のストレージシステム１６１に格納されている、古いオンラインVOLのデータや古いジャーナルデータを取り込み、カタログ情報を基にオンラインVOLやジャーナルデータを構築するための処理を行う。
【０４６６】
本実施例によれば、第１のストレージシステム１２５を第２のストレージシステム１６１から切り離し、第１のストレージシステム１２５の代わりに、第３のストレージシステム２２０１を用いたときに、第２のストレージシステム１６１内のデータを暗号化装置１９０を介して第３のストレージシステム２２０１に戻すようにしたため、第３のストレージシステム２２０１においてオンラインVOLやジャーナルデータを構築することができる。
【０４６７】
次に、鍵情報管理方法を図４２および図４３にしたがって説明する。
【０４６８】
本実施例は、第１のストレージシステム１２５内に保持されている鍵情報５３０が紛失した場合に、データの復旧を目的として、鍵情報５３０を第１のストレージシステム１２５外へバックアップすることを可能としたものである。また別の目的として、第２のストレージシステム１６１が第１のストレージシステム１２５から切り離されても、第２のストレージシステム１６１内のデータを他のストレージシステムにリストアできるように、鍵情報を管理するためのものである。
【０４６９】
この処理では、第１のストレージシステム１２５の入れ替え（リプレース）を契機として、保守管理端末１５３の操作を基に鍵情報５３０を保守管理端末１５３のHDDへ格納することとしている。なお、鍵情報５３０の格納先としては、管理サーバ１１１とすることもできる。
【０４７０】
まず、第１のストレージシステム１２５でデータを暗号化する場合、データのバックアップの実施可能な権限は、セキュリティ権限がある一定レベル、例えば、設定レベルより高いレベルのユーザとするように、権限を設定する。
【０４７１】
まず、保守管理端末１５３は、バックアップ指示として、データ暗号鍵保護鍵派正用のパスワード５４０を第１のストレージシステム１２５に送信する。
【０４７２】
第１のストレージシステム１２５は、パスワード５４０を受信すると、パスワード５４０と擬似乱数５４１とからデータ暗号鍵保護鍵５４２を派生させる。この際、制御メモリ１４５に格納されている暗号鍵５２４は固定鍵で暗号化されている。このため、制御プロセッサ１４３は、この暗号鍵５２４を一旦復号化し、復号化された暗号鍵５２４をデータ暗号鍵保護鍵５４２で再度暗号化して、暗号鍵５２４を生成し、暗号化された暗号鍵５２４と鍵属性情報を保守管理端末１５３に出力する。これにより、保守管理端末１５３のHDD１５３Aには、暗号化された暗号鍵５２４と鍵属性情報が格納される。
【０４７３】
暗号鍵５２４を保守管理端末１５３に出力する際には、オンラインVOL（P-VOL)単位に設定することができる。また暗号鍵５２４は制御メモリ１４５上に格納しておくことができるとともに、他の記憶領域、例えばパッケージ上のフラッシュメモリ（FM）などにバックアップしておくこともできる。
【０４７４】
次に、第１のストレージシステム１２５内に格納しておいた固定鍵変換用暗号鍵５２４を、その格納先から取得できなくなったとき、あるいは、第２のストレージシステム１６１が第１のストレージシステム１２５から切り離された場合、保守管理端末１５３にバックアップされていた鍵情報を用いて第１のストレージシステム１２５に暗号鍵５２４をリストアするときの処理を説明する。
【０４７５】
具体的には、第１のストレージシステム１２５に暗号鍵５２４をリストアする必要が生じた場合、図４３に示すように、暗号鍵５２４のリストア指示をユーザが保守管理端末１５３を用いて行う。この際、リストア指示が可能な権限は、バックアップと同様のレベルの権限とする。そしてストレージ管理者が保守管理端末１５３を用いて、バックアップファイルとバックアップ時に指定したパスワード５４０を第１のストレージシステム１２５に送信する。
【０４７６】
第１のストレージシステム１２５の制御プロセッサ１４３は、パスワード５４０と擬似乱数５４１を用いてデータ暗号鍵保護鍵５４２を派生する。さらに制御プロセッサ１４３は、保守管理端末１５３のHDD１５３Aに格納されている暗号鍵５２４を取り込み、取り込んだ暗号鍵５２４を用いて、データ暗号鍵保護鍵５４２を復号化して暗号鍵５２４の復号を行う。
【０４７７】
この後、制御プロセッサ１４３は、復号化された暗号鍵５２４を制御メモリ１４５にリストアする。
【０４７８】
この際、制御プロセッサ１４３は、バックアップした装置とは別の装置に誤って暗号鍵５２４がリストアされるのを防止する目的で、バックアップ情報に格納された装置番号とリストアを実行する装置番号が一致しているか否かをチェックする。そして、制御プロセッサ１４３は、装置番号が一致している場合には、リストア処理を行い、装置番号が一致しなかったときには、リストア処理を中止する。ただし、装置入れ替えによる復旧を考慮し、保守員からの操作では、装置番号チェックを行わずに、強制モードによってリストア処理を行うこともできる。
【０４７９】
本実施例によれば、固定鍵変換用暗号鍵５２４を、第１のストレージシステム１２５の格納先から取得できなくなったとき、あるいは第２のストレージシステム１６１が第１のストレージシステム１２５から切り離されたときでも、保守管理端末１５３にバックアップされていた鍵情報を用いて第１のストレージシステム１２５に暗号鍵５２４をリストアすることができる。
【０４８０】
また、データを圧縮・暗号化するに際しては、図４４に示すように、第１のストレージシステム１２５でデータを圧縮し、第２のストレージシステム１６１でデータを暗号化することもできる。また、図４５に示すように、データを圧縮・暗号化するに際しては、第１のストレージシステム１２５でデータの圧縮・暗号化処理を行うことなく、第２のストレージシステム１６１でデータの圧縮・暗号化処理を行うこともできる。さらに、図４６に示すように、データの圧縮・暗号化処理を行うに際して、第１のストレージシステム１２５でデータの圧縮・暗号化処理を行うとともに、圧縮後に暗号化されたデータを第１のストレージシステム１２５に格納する構成を採用することもできる。
【０４８１】
次に、図４７に、ボリューム単位のレプリケーション、領域単位のレプリケーションのデータを圧縮および暗号化する場合の例を示す。
【０４８２】
ボリューム単位のレプリケーション、領域単位のレプリケーションのデータを圧縮・暗号化するに際して、キャッシュメモリ１４７上にコピーされたデータをLR１３３で圧縮した後、暗号化し、圧縮後に暗号化されたデータを物理記憶デバイス１５１に格納する。この際、オンラインVOL（P-VOL）に対して、S-VOLは実VOLとなる。
【０４８３】
次に、図４８に、Copy  On  Writeする過程で、データを圧縮・暗号化するときの例を示す。ホスト計算機１０１から第１のストレージシステム１２５のP-VOLとS-VOL（仮想VOL）が認識できているときに、COWの動作が行われる。
【０４８４】
例えば、図４８（ａ）に示すように、ホスト計算機１０１から第１のストレージシステム１２５に対して、制御プロセッサ１４３は、P-VOLへのライト要求を受け取ったときには、ライト箇所がプールにデータを退避済み箇所か否かを判定する。ライト箇所がプールに退避済みでないと判定したときには、制御プロセッサ１４３は、プール領域を割り当てる。この後、制御プロセッサ１４３は、キャッシュヒットか否かを判定し、キャッシュヒットの場合は、キャッシュメモリ１４７上でデータをコピーし、キャッシュミスの場合は、P-VOLのディスクからプールVOLのキャッシュ領域へデータを読み上げる。このようにして、既存データをプール領域へ退避する。
【０４８５】
データが退避されたときには、制御プロセッサ１４３は、ライトデータをP-VOLのディスクへ格納し、プールVOLのキャッシュデータをプールVOLのディスクへ格納する。データをディスクへ格納するに際して、制御プロセッサ１４３は、プールVOLのデータを圧縮した後、暗号化し、一方、オンラインVOLのデータに対しては圧縮のみを行う。
【０４８６】
次に、ホスト計算機１０１からS-VOLへのリード要求を受けた場合、図４８ (ｂ)に示すように、制御プロセッサ１４３は、リード箇所がプールにデータを退避済み箇所か否かを判定する。この際、S-VOLは仮想VOLであるため、実データはP-VOLかプールVOLに格納されている。このため、制御プロセッサ１４３は、リード要求の対象となるデータがいずれのVOLに格納されているかを検索する。そして、P-VOLにリード対象のデータがあるときには、制御プロセッサ１４３は、P-VOLのディスク領域からデータをコピーし、プールVOLにデータが存在するときには、プールVOLからデータをコピーする。
【０４８７】
この後、制御プロセッサ１４３は、キャッシュメモリ１４７上でヒットするか否かを判定し、キャッシュヒットであれば、キャッシュメモリ１４７上でキャッシュ間コピーを行い、キャッシュミスのときには、P-VOLのディスクからプールVOLのキャッシュ領域へデータを読み上げる。この後、制御プロセッサ１４３は、リード要求で指定されたデータをリードデータとしてホスト計算機１０１へ転送する。
【０４８８】
次に、図４９に、P-VOLがシンプロビジョニングの場合の例を示す。シンプロビジョニングは、一般的なシンプロビジョニング技術を前提としており、この例では、データを圧縮・暗号化する場合について説明する。
【０４８９】
P-VOLのデータをプールVOLに格納するに際して、制御プロセッサ１４３は、P-VOLのデータをキャッシュメモリ１４７の領域のうちプールVOLに対応した領域に直接書き込み、キャッシュメモリ１４７上に書き込まれたP-VOLのデータをLR１３３で圧縮した後、暗号化し、圧縮後に暗号化されたデータをシンプロビジョニングのプールVOLに格納する。この際、制御プロセッサ１４３は、図５０に示すように、P-VOL管理情報テーブル２２７のマッピング先を更新するための処理を行う。
【０４９０】
P-VOL管理情報テーブル２２７は、ページ＃５７１とアドレス＃５７２から構成されている。P-VOL管理情報テーブル２２７には、P-VOLのページ番号５７１ごとに、実際にデータが格納されている場所、すなわちプール内の領域のアドレス（どのプールVOLのどこかを示すアドレス）が格納されている。
【０４９１】
次に、本発明の第２の実施形態について説明する。
【０４９２】
図５１は、本発明の第２の実施形態の計算機システムの構成を示すブロック図である。
【０４９３】
第２の実施形態の計算機システムは、第２のストレージシステム１６１が第４のストレージシステム１２８によって置き換えられている点、第１のストレージシステム１２５がリモートコピー（RC）用ポート１３４を備える点、及び、第１のストレージシステム１２５と第４のストレージシステム１２８とが第４のネットワーク１２４を介して接続される点を除き、第１の実施形態の計算機システムと同様である。
【０４９４】
第４のストレージシステム１２８は、例えば、第１のストレージシステム１２５と同等の構成及び機能を備えるストレージシステムである。第１のストレージシステム１２５のRC用ポート１３４は、第４のネットワーク１２４を介して、第４のストレージシステム１２８のRC用ポート（図示省略）に接続される。
【０４９５】
本実施形態の第１のストレージシステム１２５及び第４のストレージシステム１２８は、いわゆるリモートコピー機能を備える。すなわち、第１のストレージシステム１２５内の論理ボリュームと、第４のストレージシステム１２８内の論理ボリュームとがコピーペアを構成することができる。コピーペアに属する第１のストレージシステム１２５内の論理ボリュームにデータが書き込まれた場合、そのデータが、そのコピーペアに属する第４のストレージシステム１２８内の論理ボリュームにコピーされる。これによって、一つのコピーペアに属する二つの論理ボリュームに同一のデータが格納される。
【０４９６】
上記のようにリモートコピー機能を備えるストレージシステムを含む計算機システムにおいても、第４のストレージシステム１２８を第１の実施形態の外部ストレージシステムとして扱うことによって、第１の実施形態と同様のジャーナルデータの移動及び復元を実行することができる。
【０４９７】
さらに、第１のストレージシステム１２５と第４のストレージシステム１２８との間でリモートコピーが実行される場合、第４のストレージシステム１２８もカタログ管理情報３１１を保持する。このため、第４のストレージシステム１２８が第１のストレージシステム１２５から切り離された場合、図１９Aに示す切り離しの処理を実行することができる。この場合、図１９Aの第２のストレージシステム１６１が第４のストレージシステム１２８によって置き換えられる。
【０４９８】
前記各実施例においては、ジャーナルデータを圧縮して暗号化し、圧縮後に暗号化されたジャーナルデータを第２のストレージシステム１６１に格納するものについて述べたが、第１のストレージシステム１２５から第２のストレージシステム１６１に、バックアップ対象のデータとしてジャーナルデータを送信し、第２のストレージシステム１６１において、ジャーナルデータを圧縮して暗号化し、圧縮後に暗号化されたジャーナルデータを第２のストレージシステム１６１に格納する構成をしても、第２のストレージシステム１６１に格納されるジャーナルデータの容量を少なくすることができる。
【符号の説明】
【０４９９】
１０１  ホスト計算機
１１１  管理サーバ
１２５  第１のストレージシステム
１４０  第１のコントローラ
１６１  第２のストレージシステム
１６５  第２のコントローラ
１８７  P-VOL
１８８  JNL関連エリア
２２１  デバイス構成管理テーブル
２２２  LU管理テーブル
２２３  P-VOL構成管理テーブル
２２４  JNL管理テーブル
２２５  P-VOL／JNLペア管理テーブル
２３１  JNL情報テーブル
２３２  JNL制御情報テーブル
２３３  JNLデータ
３１１  カタログ管理情報テーブル
４４３  差分BM
４５１  JNLデータ要素
２２０１  第３のストレージシステム
【図１】
0005367086.tif 000002
【図２】
0005367086.tif 000003
【図３】
0005367086.tif 000004
【図４Ａ】
0005367086.tif 000005
【図４Ｂ】
0005367086.tif 000006
【図４Ｃ】
0005367086.tif 000007
【図４Ｄ】
0005367086.tif 000008
【図４Ｅ】
0005367086.tif 000009
【図５】
0005367086.tif 000010
【図６】
0005367086.tif 000011
【図７】
0005367086.tif 000012
【図８】
0005367086.tif 000013
【図９】
0005367086.tif 000014
【図１０】
0005367086.tif 000015
【図１１】
0005367086.tif 000016
【図１２】
0005367086.tif 000017
【図１３】
0005367086.tif 000018
【図１４】
0005367086.tif 000019
【図１５】
0005367086.tif 000020
【図１６】
0005367086.tif 000021
【図１７】
0005367086.tif 000022
【図１８】
0005367086.tif 000023
【図１９Ａ】
0005367086.tif 000024
【図１９Ｂ】
0005367086.tif 000025
【図１９Ｃ】
0005367086.tif 000026
【図１９Ｄ】
0005367086.tif 000027
【図２０】
0005367086.tif 000028
【図２１】
0005367086.tif 000029
【図２２】
0005367086.tif 000030
【図２３】
0005367086.tif 000031
【図２４】
0005367086.tif 000032
【図２５】
0005367086.tif 000033
【図２６】
0005367086.tif 000034
【図２７】
0005367086.tif 000035
【図２８】
0005367086.tif 000036
【図２９】
0005367086.tif 000037
【図３０】
0005367086.tif 000038
【図３１】
0005367086.tif 000039
【図３２】
0005367086.tif 000040
【図３３】
0005367086.tif 000041
【図３４】
0005367086.tif 000042
【図３５】
0005367086.tif 000043
【図３６】
0005367086.tif 000044
【図３７】
0005367086.tif 000045
【図３８】
0005367086.tif 000046
【図３９】
0005367086.tif 000047
【図４０】
0005367086.tif 000048
【図４１】
0005367086.tif 000049
【図４２】
0005367086.tif 000050
【図４３】
0005367086.tif 000051
【図４４】
0005367086.tif 000052
【図４５】
0005367086.tif 000053
【図４６】
0005367086.tif 000054
【図４７】
0005367086.tif 000055
【図４８】
0005367086.tif 000056
【図４９】
0005367086.tif 000057
【図５０】
0005367086.tif 000058
【図５１】
0005367086.tif 000059