(57)【特許請求の範囲】
【請求項１】
第１の記憶装置システムと、
前記第１の記憶装置システムに接続された第２の記憶装置システムと、
前記第１及び第２の記憶装置システムに接続されたホストコンピュータを含む上位装置と
を有し、
前記第１の記憶装置システムは、
前記ホストコンピュータに認識される第１の上位論理ボリュームである移行元ボリュームと、
前記移行元ボリュームに関連付けられておりシンプロビジョニングに従う仮想的な論理ボリュームであり複数の仮想領域で構成された第１の下位論理ボリュームと、
それぞれが複数の第１の物理領域で構成されアクセス性能の異なる複数の記憶階層を有する記憶領域である第１のプールと、
前記移行元ボリュームの第１のシンプロビジョニング情報と
を有し、
前記第１のシンプロビジョニング情報は、前記第１の下位論理ボリュームの仮想領域毎にどの第１の物理領域が割り当てられているかを前記第１のプールの記憶階層毎に表す情報を含んだ情報であり、
前記第１の記憶装置システムは、前記移行元ボリュームを指定したライト要求を受けた場合、前記移行元ボリュームの前記第１の下位論理ボリュームにおけるライト先の仮想領域に前記第１のプールから前記第１の物理領域を割り当て、その第１の物理領域にライト対象のデータを書き込み、前記第１のシンプロビジョニング情報を更新し、
前記第２の記憶装置システムは、
前記ホストコンピュータに認識される第２の上位論理ボリュームである移行先ボリュームと、
前記移行先ボリュームに関連付けられている仮想的な論理ボリュームである第２の下位論理ボリュームと、
前記移行先ボリュームとペアを構成し前記移行先ボリュームをコピー元とした第３の上位論理ボリュームであるコピー先ボリュームと、
前記コピー先ボリュームに関連付けられておりシンプロビジョニングに従う仮想的な論理ボリュームであり複数の仮想領域で構成された第３の下位論理ボリュームと、
それぞれが複数の第２の物理領域で構成されアクセス性能の異なる複数の記憶階層を有する記憶領域である第２のプールと、
を有し、
（Ａ）前記第２の記憶装置システムが、ストレージ仮想化技術に従い前記第２の下位論理ボリュームに前記移行元ボリュームをマッピングし、
（Ｂ）前記上位装置が、前記ホストコンピュータからのアクセスパスを、前記移行元ボリュームへのアクセスパスから、前記移行先ボリュームへのアクセスパスへ切り替え、それにより、前記第２の記憶装置システムが、前記移行先ボリュームを指定したアクセス要求を前記ホストコンピュータから受信した場合、そのアクセス要求に従うアクセスが、前記第２の下位論理ボリュームを介して前記移行元ボリュームに対して行われ、
（Ｃ）前記第２の記憶装置システムが、前記第１のシンプロビジョニング情報が有する情報を取得し、
（Ｄ）前記第２の記憶装置システムが、前記移行元ボリュームから前記移行先ボリュームにデータを移行しそのデータを前記移行先ボリュームから前記コピー先ボリュームを通じて前記第３の下位論理ボリュームにコピーするコピー処理を実行し、
（Ｅ）前記第２の記憶装置システムが、前記コピー処理の完了後、前記移行先ボリュームに、前記第２の下位論理ボリュームに代えて前記第３の下位論理ボリュームを関連付け、
前記第２の記憶装置システムは、前記コピー処理の最中であっても、前記移行先ボリュームを指定したライト要求を前記ホストコンピュータから受け付けており、前記コピー処理の最中に前記移行先ボリュームを指定したライト要求を前記ホストコンピュータから受けた場合、前記移行元ボリュームを指定したライト要求を前記第１の記憶装置システムに転送し、
前記コピー処理において、前記第２の記憶装置システムが、前記移行対象のデータが無効なデータであるか否かを判断し、その判断の結果が肯定的の場合に、前記移行対象のデータを前記コピー先ボリュームの第３の下位論理ボリュームに書き込むことなく破棄し、
前記コピー処理では、前記（Ｃ）で取得した情報を基に、第１の物理領域が割り当てられている仮想領域が特定され、その仮想領域に割り当てられている第１の物理領域内のデータが移行され、第１の物理領域が割り当てられていない仮想領域についてデータは移行されず、
前記特定された仮想領域は、前記コピー処理においてデータが未だ１度も移行されていない仮想領域、又は、データが移行された後に前記ホストコンピュータから前記移行先ボリュームを通じて新たにデータの書込み先とされた仮想領域であり、
前記コピー処理では、前記第３の下位論理ボリュームの未割当ての仮想領域がデータのコピー先とされた場合、その仮想領域に前記第２のプールから未割当ての第２の物理領域が割り当てられ、割り当てられた第２の物理領域に移行対象のデータが書き込まれ、
前記（Ｃ）と前記（Ｄ）の間に、下記の（Ｐ）が行われ、
（Ｐ）前記第２の記憶装置システムが、前記（Ｃ）で取得した情報を基に、前記移行元ボリュームに割当てられた１以上の第１の物理領域の記憶容量を、前記第１のプールの記憶階層毎に特定し、前記第１のプールの記憶階層毎の特定された記憶容量を基に、前記第１のプールの複数の記憶階層に対応する、前記第２のプールの複数の記憶階層の各々について、前記第２のプールに必要な空き容量を算出し、前記第２のプールの複数の記憶階層の各々について、算出された空き容量分の１以上の第２の物理領域を予約し、
前記コピー処理では、前記第２のプールの複数の記憶階層の各々について、前記（Ｐ）で予約された第２の物理領域が、前記コピー先ボリュームの仮想領域に割り当てられる、
データ移行システム。
【請求項２】
請求項１記載のデータ移行システムであって、
前記（Ｐ）では、前記第２の記憶装置システムが、前記（Ｃ）で取得した情報から、前記第１の下位論理ボリュームに割り当てられている第１の物理領域の数と、第１の物理領域のサイズとを特定し、第１の物理領域の数と、第１の物理領域のサイズと、第２の物理領域のサイズとを基に、前記第２のプールに必要な空き容量を算出する、
データ移行システム。
【請求項３】
請求項１又は２記載のデータ移行システムであって、
前記第１及び第２の記憶装置システムは、それぞれ、ライト要求に従うライト対象のデータを一時的に記憶するキャッシュメモリを有し、
前記（Ａ）において、前記第２の記憶装置システムが、前記移行先ボリュームを指定したライト要求に従うライト対象データを前記第２の記憶装置システムのキャッシュメモリに書き込むことであるキャッシュメモリ動作を抑止し、
前記（Ｂ）と前記（Ｃ）との間で、前記第２の記憶装置システムが、前記キャッシュメモリ動作の抑止を解除する、
データ移行システム。
【請求項４】
請求項１乃至３のうちのいずれか１項に記載のデータ移行システムであって、
前記コピー処理では、前記第２の記憶装置システムが、前記（Ｃ）で取得した情報を基に、前記第３の下位論理ボリュームの仮想領域に物理領域を割り当てる、
データ移行システム。
【請求項５】
請求項１乃至４のうちのいずれか１項に記載のデータ移行システムであって、
前記コピー先ボリュームは、前記（Ａ）の後に動的に定義された論理ボリュームであり、
前記（Ｅ）において、前記第２の記憶装置システムが、前記コピー先ボリュームの定義を解除する、
データ移行システム。
【請求項６】
請求項１乃至５のうちのいずれか１項に記載のデータ移行システムであって、
前記上位装置は、前記ホストコンピュータの他に、前記ホストコンピュータと前記第１及び第２の記憶装置システムとの間に介在するスイッチ装置を含み、
前記（Ｂ）では、前記スイッチ装置が、前記ホストコンピュータからのアクセスパスを、前記移行元ボリュームへのアクセスパスから、前記移行先ボリュームへのアクセスパスへ切り替える、
データ移行システム。
【請求項７】
第１の記憶装置システムとそれに接続された第２の記憶装置システムと前記第１及び第２の記憶装置システムに接続されたホストコンピュータとを含む計算機システムでのデータ移行方法であって、
前記第１の記憶装置システムは、
前記ホストコンピュータに認識される第１の上位論理ボリュームである移行元ボリュームと、
前記移行元ボリュームに関連付けられておりシンプロビジョニングに従う仮想的な論理ボリュームであり複数の仮想領域で構成された第１の下位論理ボリュームと、
それぞれが複数の第１の物理領域で構成されアクセス性能の異なる複数の記憶階層を有する記憶領域である第１のプールと、
前記移行元ボリュームの第１のシンプロビジョニング情報と
を有し、
前記第１のシンプロビジョニング情報は、前記第１の下位論理ボリュームの仮想領域毎にどの第１の物理領域が割り当てられているかを前記第１のプールの記憶階層毎に表す情報を含んだ情報であり、
前記第１の記憶装置システムは、前記移行元ボリュームを指定したライト要求を受けた場合、前記移行元ボリュームの前記第１の下位論理ボリュームにおけるライト先の仮想領域に前記第１のプールから前記第１の物理領域を割り当て、その第１の物理領域にライト対象のデータを書き込み、前記第１のシンプロビジョニング情報を更新し、
前記第２の記憶装置システムは、
前記ホストコンピュータに認識される第２の上位論理ボリュームである移行先ボリュームと、
前記移行先ボリュームに関連付けられている仮想的な論理ボリュームである第２の下位論理ボリュームと、
前記移行先ボリュームとペアを構成し前記移行先ボリュームをコピー元とした第３の上位論理ボリュームであるコピー先ボリュームと、
前記コピー先ボリュームに関連付けられておりシンプロビジョニングに従う仮想的な論理ボリュームであり複数の仮想領域で構成された第３の下位論理ボリュームと、
それぞれが複数の第２の物理領域で構成されアクセス性能の異なる複数の記憶階層を有する記憶領域である第２のプールと、
を有し、
前記データ移行方法では、以下の（Ａ）〜（Ｅ）を行い、
（Ａ）ストレージ仮想化技術に従い前記第２の下位論理ボリュームに前記移行元ボリュームをマッピングする、
（Ｂ）前記ホストコンピュータからのアクセスパスを、前記移行元ボリュームへのアクセスパスから、前記移行先ボリュームへのアクセスパスへ切り替え、それにより、前記第２の記憶装置システムが、前記移行先ボリュームを指定したアクセス要求を前記ホストコンピュータから受信した場合、そのアクセス要求に従うアクセスが、前記第２の下位論理ボリュームを介して前記移行元ボリュームに対して行われる、
（Ｃ）前記第１のシンプロビジョニング情報が有する情報が前記第２の記憶装置システムに送られる、
（Ｄ）前記移行元ボリュームから前記移行先ボリュームにデータを移行しそのデータを前記移行先ボリュームから前記コピー先ボリュームを通じて前記第３の下位論理ボリュームにコピーするコピー処理を実行する、
（Ｅ）前記コピー処理の完了後、前記移行先ボリュームに、前記第２の下位論理ボリュームに代えて前記第３の下位論理ボリュームを関連付ける、
前記第２の記憶装置システムは、前記コピー処理の最中であっても、前記移行先ボリュームを指定したライト要求を前記ホストコンピュータから受け付けており、前記コピー処理の最中に前記移行先ボリュームを指定したライト要求を前記ホストコンピュータから受けた場合、前記移行元ボリュームを指定したライト要求を前記第１の記憶装置システムに転送し、
前記コピー処理において、前記第２の記憶装置システムが、前記移行対象のデータが無効なデータであるか否かを判断し、その判断の結果が肯定的の場合に、前記移行対象のデータを前記コピー先ボリュームの第３の下位論理ボリュームに書き込むことなく破棄し、
前記コピー処理では、前記（Ｃ）で取得した情報を基に、第１の物理領域が割り当てられている仮想領域が特定され、その仮想領域に割り当てられている第１の物理領域内のデータが移行され、第１の物理領域が割り当てられていない仮想領域についてデータは移行されず、
前記特定された仮想領域は、前記コピー処理においてデータが未だ１度も移行されていない仮想領域、又は、データが移行された後に前記ホストコンピュータから前記移行先ボリュームを通じて新たにデータの書込み先とされた仮想領域であり、
前記コピー処理では、前記第３の下位論理ボリュームの未割当ての仮想領域がデータのコピー先とされた場合、その仮想領域に前記第２のプールから未割当ての第２の物理領域が割り当てられ、割り当てられた第２の物理領域に移行対象のデータが書き込まれ、
前記（Ｃ）と前記（Ｄ）の間に、下記の（Ｐ）が行われ、
（Ｐ）前記第２の記憶装置システムが、前記（Ｃ）で取得した情報を基に、前記移行元ボリュームに割当てられた１以上の第１の物理領域の記憶容量を、前記第１のプールの記憶階層毎に特定し、前記第１のプールの記憶階層毎の特定された記憶容量を基に、前記第１のプールの複数の記憶階層に対応する、前記第２のプールの複数の記憶階層の各々について、前記第２のプールに必要な空き容量を算出し、前記第２のプールの複数の記憶階層の各々について、算出された空き容量分の１以上の第２の物理領域を予約し、
前記コピー処理では、前記第２のプールの複数の記憶階層の各々について、前記（Ｐ）で予約された第２の物理領域が、前記コピー先ボリュームの仮想領域に割り当てられる、
データ移行方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶装置システム間でデータを移行する技術に関する。
【背景技術】
【０００２】
第１の記憶装置システムから第２の記憶装置システムへデータを移行するデータ移行技術が知られている。例えば、記憶装置システムが新たに導入された場合、既存の記憶装置システムから新たに導入された第１の記憶装置システムへデータを移行することがある。また、記憶装置システムを使用中に、高負荷の記憶装置システムから低負荷の記憶装置システムへデータを移行することがある。データ移行は、記憶装置システム間の他、記憶装置システム内の記憶装置間でも行うことがある。
【０００３】
特許文献１には、記憶装置システム間において、ホストからのアクセスを維持したまま、ホストコンピュータ（以下、ホスト）に透過的に、データを移行する技術が開示されている。特許文献１によれば、ホストと第２の記憶装置システム（データ移行元となる既存の記憶装置システム）との間に、第１の記憶装置システム（データ移行先となる記憶装置システム）が接続される。第１の記憶装置システムが、ホストから移行対象データに対するアクセス要求（リード要求及び／又はライト要求）を受け付けながら、第２の記憶装置システムから第１の記憶装置システムへの移行対象データの移行が行われる。第１の記憶装置システムが、未だ移行されていない移行対象データに対しアクセス要求を受領した場合、受領したアクセス要求の処理に必要な部分のデータを読み出すために第２の記憶装置システムへリード要求を発行する。第１の記憶装置システムは、そのリード要求に応答して取得されたデータを用いて、上記受領したアクセス要求を処理する。
【０００４】
また、例えば、ストレージ仮想化技術が知られている。ストレージ仮想化技術によれば、第１の記憶装置システムに第２の記憶装置システムが接続され、第２の記憶装置システムの記憶領域が、第１の記憶装置システムの記憶領域としてホストに提供される。第１の記憶装置システムが、ホストからアクセス要求を受信した場合、そのアクセス要求に従うアクセス先が第１の記憶装置システムの記憶領域か第２の記憶装置システムの記憶領域かを特定し、特定したアクセス先が第２の記憶装置システムの記憶領域の場合、第２の記憶装置システムへアクセス要求を転送する。
【０００５】
また、例えば、シンプロビジョニングが知られている。シンプロビジョニングによれば、複数の仮想ページ（仮想的な記憶領域）で構成された仮想的な論理ボリューム（以下、ＴＰボリューム）と、複数の物理ページ（物理的な記憶領域）で構成されたプールが定義される。未割当ての仮想ページへの書き込みに応答して、その仮想ページに、未割当ての物理ページが割り当てられる。
【０００６】
特許文献２は、シンプロビジョニング機能を有する第２の記憶装置システムの記憶領域を、ストレージ仮想化技術を用いて第１の記憶装置システムで利用する技術を開示している。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】米国特許第６１０８７４８号明細書
【特許文献２】特開２０１０−０５５５５７号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００８】
以下の説明では、ホストにとって意味の無いデータ（例えば、全ビットが０で構成されたデータであるゼロデータのような、ホストで実行されるアプリケーションプログラムにとってリード及び／又はライトされていない初期値データ）を「無効データ」と言い、ホストにとって意味のあるデータ（例えば、ホストで実行されるアプリケーションプログラムにとってリード及び／又はライトされるデータ）を「有効データ」と言う。
【０００９】
ＴＰボリュームからデータを移行する場合、移行元ボリュームの未割当の仮想ページについては、移行元の記憶装置システムから移行先の記憶装置システムへ、無効データが転送される。このため、ＴＰボリュームに割り当てられている１以上の物理ページが記憶するデータの総量がＴＰボリュームより少なくても、ＴＰボリュームの容量分のデータが移行されることになる。
【００１０】
また、移行先ボリュームもＴＰボリュームの場合、移行先の仮想ページへ転送されるデータが無効データであっても、移行先の仮想ページに、物理ページが割り当てられる。移行先記憶装置システムにおいて消費される記憶容量が無駄に大きくなってしまう。
【００１１】
本発明の目的は、第２の記憶装置システム内の外部ボリュームに対応付けられた第１の記憶装置システム内の論理ボリュームから第２の記憶装置システム内のＴＰボリュームへのデータ移行において、移行対象データの総量、及び、移行先の記憶装置システムで消費される記憶容量を削減し、且つ、そのデータ移行を、ホストから移行対象データへのアクセス要求を受け付けながら実行できるようにすることにある。
【課題を解決するための手段】
【００１２】
データ移行システムは、第１の記憶装置システムと、第１の記憶装置システムに接続された第２の記憶装置システムと、第１及び第２の記憶装置システムに接続されたホストコンピュータを含む上位装置とを有する。
【００１３】
第１の記憶装置システムは、ホストコンピュータに認識される第１の上位論理ボリュームである移行元ボリュームと、移行元ボリュームに関連付けられておりシンプロビジョニングに従う仮想的な論理ボリュームであり複数の仮想領域で構成された第１の下位論理ボリュームと、複数の第１の物理領域で構成された記憶領域である第１のプールと、移行元ボリュームの第１のシンプロビジョニング情報とを有する。第１のシンプロビジョニング情報は、第１の下位論理ボリュームの仮想領域毎にどの第１の物理領域が割り当てられているかを表す情報を含んだ情報である。第１の記憶装置システムは、移行元ボリュームを指定したライト要求を受けた場合、移行元ボリュームの第１の下位論理ボリュームにおけるライト先の仮想領域に第１のプールから第１の物理領域を割り当て、その第１の物理領域にライト対象のデータを書き込み、第１のシンプロビジョニング情報を更新する。
【００１４】
第２の記憶装置システムは、ホストコンピュータに認識される第２の上位論理ボリュームである移行先ボリュームと、移行先ボリュームに関連付けられている仮想的な論理ボリュームである第２の下位論理ボリュームと、移行先ボリュームとペアを構成し移行先ボリュームをコピー元とした第３の上位論理ボリュームであるコピー先ボリュームと、コピー先ボリュームに関連付けられておりシンプロビジョニングに従う仮想的な論理ボリュームであり複数の仮想領域で構成された第３の下位論理ボリュームと、複数の第２の物理領域で構成された記憶領域である第２のプールとを有する。
【００１５】
データ移行システムでは、以下の処理が行われる。
（Ａ）第２の記憶装置システムが、ストレージ仮想化技術に従い第２の下位論理ボリュームに前記移行元ボリュームをマッピングする。
（Ｂ）上位装置が、ホストコンピュータからのアクセスパスを、前記移行元ボリュームへのアクセスパスから、前記移行先ボリュームへのアクセスパスへ切り替える。それにより、第２の記憶装置システムが、移行先ボリュームを指定したアクセス要求をホストコンピュータから受信した場合、そのアクセス要求に従うアクセスが、第２の下位論理ボリュームを介して前記移行元ボリュームに対して行われる。
（Ｃ）第２の記憶装置システムが、第１のシンプロビジョニング情報が有する情報を取得する。
（Ｄ）第２の記憶装置システムが、コピー処理を実行する。コピー処理では、移行元ボリュームから移行先ボリュームにデータを移行することと、そのデータを移行先ボリュームからコピー先ボリュームを通じて第３の下位論理ボリュームにコピーすることを含む処理が行われる。
（Ｅ）第２の記憶装置システムが、コピー処理の完了後、移行先ボリュームに、第２の下位論理ボリュームに代えて第３の下位論理ボリュームを関連付ける。
【００１６】
第２の記憶装置システムは、コピー処理の最中であっても、移行先ボリュームを指定したライト要求をホストコンピュータから受け付けており、コピー処理の最中に移行先ボリュームを指定したライト要求をホストコンピュータから受けた場合、移行元ボリュームを指定したライト要求を第１の記憶装置システムに転送する。
【００１７】
コピー処理では、上記（Ｃ）で取得した情報を基に、第１の物理領域が割り当てられている仮想領域が特定され、その仮想領域に割り当てられている第１の物理領域内のデータが移行される。コピー処理では、第１の物理領域が割り当てられていない仮想領域についてデータは移行されない。特定された仮想領域は、コピー処理においてデータが未だ１度も移行されていない仮想領域、又は、データが移行された後にホストコンピュータから移行先ボリュームを通じて新たにデータの書込み先とされた仮想領域である。
【００１８】
記憶装置システム間でデータを移行する１つの方法として、同期型リモートコピーがある。同期型リモートコピーは、例えば次のとおりである。すなわち、或る記憶装置システムＸの或る論理ボリュームＸと別の記憶装置システムＹの或る論理ボリュームＹとの間でペアが構成される。記憶装置システムＸが、ホストコンピュータから論理ボリュームＸを指定したライト要求を受けた場合、そのライト要求に対する応答を、下記の（ａ）及び（ｂ）が完了したときに、ホストコンピュータに対して返すことができる。
（ａ）記憶装置システムＸが、論理ボリュームＸ（又は記憶装置システムＸのキャッシュメモリ）にライト対象のデータを書き込む。
（ｂ）記憶装置システムＸが、ライト対象のデータを記憶装置システムＹに転送し、記憶装置システムＹから所定の応答を受領する。
【００１９】
同期型リモートコピーが並行して行われるペアの数は、制限されることが好ましい。なぜなら、同期型リモートコピーが並行して行われるペアの数が多いと、記憶装置システムＸのアクセス性能（例えば、単位時間当りに処理できるアクセス要求の数）が低下するからである。また、外部接続と内部コピーの組み合わせの場合、移行元ボリュームを有する記憶装置システムの機能適用状況による移行可否の制限を受けにくいということがある。リモートコピー機能は性能等の理由により、コピーペア数に制限があり、移行元ボリュームに既にリモートコピー機能が適用されていた場合、移行のためにリモートコピー機能を追加適用するのが困難な場合がある。
【００２０】
そこで、本発明の１つの観点によれば、外部接続（ストレージ仮想化技術に従うボリュームマッピング）と内部コピー（第２の記憶装置システムにおける、移行先ボリュームからコピー先ボリュームへのコピー）との組み合わせで、記憶装置システム間のデータ移行が行われる。外部接続の数、及び、内部コピーが並行して行われるペアの数は、同期型リモートコピーが並行して行われるペアの数より多くて良い。このため、ストレージ仮想化環境においてデータ移行が効率的に行われることが期待される。
【発明の効果】
【００２１】
本発明によれば、第２の記憶装置システム内の外部ボリュームに対応付けられた第１の記憶装置システム内の論理ボリュームから第２の記憶装置システム内のＴＰボリュームへのデータ移行において、移行対象データの総量、及び、移行先の記憶装置システムで消費される記憶容量を削減し、且つ、そのデータ移行を、ホストから移行対象データへのアクセス要求を受け付けながら実行することができる。
【図面の簡単な説明】
【００２２】
【図１】本発明の実施例１の概要を示す。
【図２】記憶装置システム２ａ（２ｂ）の構成を示す。
【図３】記憶装置システム２ａ（２ｂ）が有する管理情報を示す。
【図４】論理ボリューム管理情報６０の構成を示す。
【図５】仮想ボリューム管理情報６１の構成を示す。
【図６】ドライブグループ管理情報６２の構成を示す。
【図７】外部ボリューム管理情報６３の構成を示す。
【図８】外部ボリュームパス情報６３１の構成を示す。
【図９】記憶階層管理情報６４の構成を示す。
【図１０】プール管理情報６５の構成を示す。
【図１１】ページ管理情報６５１の構成を示す。
【図１２】マッピング管理情報６６の構成を示す。
【図１３】各種管理情報６０、６１、６２、６５、６６及び６３の関連性を示す。
【図１４】コピー管理情報６７の構成を示す。
【図１５】ゼロデータ破棄管理情報６８の構成を示す。
【図１６】ボリューム移行処理の流れの概要を示す。
【図１７】プール空き容量確認処理の流れを示す。
【図１８】プール空き容量確認メイン処理の流れを示す。
【図１９】コピー処理の流れを示す。
【図２０】通常コピー処理の流れを示す。
【図２１】シンプロビジョニング（ＴＰ）情報活用コピー処理（個別）の流れを示す。
【図２２】ＴＰ情報活用コピー処理（一括）の流れを示す。
【図２３】記憶装置システム２ａ（２ｂ）で実行されるリード処理を示す。
【図２４】通常ボリュームリード処理の流れを示す。
【図２５】ＴＰボリュームリード処理の流れを示す。
【図２６】ライト処理を示す。
【図２７】通常ボリュームライト処理の流れを示す。
【図２８】ＴＰボリュームライト処理の流れを示す。
【図２９】非同期ライト処理の流れを示す。
【図３０】ＴＰ情報参照処理を示す。
【図３１】ゼロデータ破棄処理の流れを示す。
【図３２】本発明の実施例２に係る計算機システムの構成を示す。
【発明を実施するための形態】
【００２３】
以下、図面を参照して、本発明の幾つかの実施例を説明する。
【００２４】
なお、以下の説明では、「ｘｘｘテーブル」或いは「ｘｘｘリスト」の表現にて各種情報を説明することがあるが、各種情報は、テーブル及びリスト以外のデータ構造で表現されていてもよい。データ構造に依存しないことを示すために「ｘｘｘテーブル」及び「ｘｘｘリスト」を「ｘｘｘ情報」と呼ぶことができる。
【００２５】
また、以下の説明では、種々の対象の識別情報として、番号が使用されるが、番号以外種類の識別情報（例えば、英字や符号を含んだ識別子）も採用可能である。
【００２６】
また、以下の説明では、「プログラム」を主語として処理を説明する場合があるが、プログラムは、プロセッサ（例えばＣＰＵ（Central  Processing  Unit））によって実行されることで、定められた処理を、適宜に記憶資源（例えばメモリ）及び／又は通信インタフェース装置（例えば通信ポート）を用いながら行うため、処理の主語がプロセッサとされてもよい。プログラムを主語として説明された処理は、記憶装置システム或いはそのコントローラが行う処理としても良い。また、プロセッサは、プロセッサが行う処理の一部又は全部を行うハードウェア回路を含んでも良い。コンピュータプログラムは、プログラムソースから各計算機にインストールされても良い。プログラムソースは、例えば、プログラム配布サーバ又は記憶メディアであっても良い。
【実施例１】
【００２７】
図１は、本発明の実施例１の概要を示す。なお、以下の説明では、シンプロビジョニングを「ＴＰ」と略す。
【００２８】
データの移行元となる移行元記憶装置システム２ａと、データの移行先となる移行先記憶装置システム２ｂが、ホストコンピュータ（以下、ホスト）１と接続されている。また、移行元記憶装置システム２ａ、移行先記憶装置システム２ｂ、及びホスト１は、管理端末４に接続されている。管理端末４は、ホスト１、記憶装置システム２ａ及び２ｂを管理する。
【００２９】
ホスト１では、アプリケーションプログラム１１とパス切替えプログラム１２が動作する。パス切替えプログラム１２は、アプリケーションプログラム１１からのアクセス要求の発行先となるボリュームを、切り替える。その切り替えは、アプリケーションプログラム１１に透過的に（アプリケーションプログラム１１に意識されることなく）、行われる。
【００３０】
記憶装置システム２ａ（２ｂ）は、論理ボリュームに書き込まれるデータ又は論理ボリュームから読み出されたデータを一時的に記憶するキャッシュメモリ２１５ａ（２１５ｂ）を有する。
【００３１】
実施例１に係るデータ移行の概要は、次の通りである。
（１）移行元記憶装置システム２ａの移行元ボリューム２３ａが、移行先記憶装置システム２ｂの移行先ボリューム２３ｂとして定義される。具体的には、ストレージ仮想化技術に従い、移行元ボリューム２３ａが、外部ボリュームとして、移行先ボリューム２３ｂの仮想ボリューム２４ｂにマッピングされる。
（２）ホスト１からのアクセス先が、移行元ボリューム２３ａから移行先ボリューム２３ｂに切り替えられる。具体的には、パス切替えプログラム１２が、アプリケーションプログラム１１に認識されるＬＵ（論理ユニット）に対応付けられる論理ボリュームを、移行元ボリューム２３ａから移行先ボリューム２３ｂに切り替える。
（３）移行先ボリューム２３ｂのコピー先として或る論理ボリューム（以下、コピー先ボリューム）２３ｃが定義される。
（４）移行元の記憶装置システム２ａ内のＴＰ情報（以下、移行元ＴＰ情報）を基に、移行元ボリューム２３ａに関連付けられている仮想ボリューム２４ａから、移行先ボリューム２３ｂに関連付けられている仮想ボリューム２４ｂに、データが移行される。移行元のＴＰ情報に基づいてデータが移行されるので、移行されるデータは、有効データのみ（すなわち、仮想ボリューム２４ａに割り当てられている物理ページ内のデータのみ）である。仮想ボリューム２４ａには、移行元の記憶装置システム２ａ内のプール（以下、移行元のプール）２５ａから物理ページが割り当てられる。移行元のプール２５ａは、例えば、１以上の実ボリューム２６ａから構成されている。各実ボリューム２６ａが、１以上の物理ページに分割される。なお、実施例１において、「実ボリューム」は、記憶装置システム内の物理記憶デバイス（以下、ドライブ）に基づく論理ボリュームである。プールを構成する実ボリュームを「プールボリューム」と言うことがある。また、実施例１において、「仮想ボリューム」は、記憶装置システム２内のボリューム管理単位である。ＴＰボリュームである仮想ボリュームもある。ＴＰボリュームは、ＴＰに従う仮想的な論理ボリュームであり、複数の仮想ページで構成されている。また、「ＴＰ情報」は、どの仮想ページにどの物理ページが割り当てられているかを表す情報を含む。本実施例では、ＴＰボリュームは、仮想ボリューム２４ａ及び２４ｃである。
（５）移行先ボリューム２３ｂに関連付けられている仮想ボリューム２３ｂに移行したデータが、移行先ボリューム２３ｂからコピー先ボリューム２３ｃにコピーされる。それにより、コピー先ボリューム２３ｃに関連付けられている仮想ボリューム２４ｃに、データが書き込まれる。それに伴い、仮想ボリューム２４ｃに、移行先の記憶装置システム２ｂ内のプール（以下、移行先のプール）２５ｂから物理ページが割り当てられ、その物理ページにデータが書き込まれる。その際、移行先の記憶装置システム２ｂ内のＴＰ情報（以下、移行先ＴＰ情報）が更新される。
（６）移行先ボリューム２３ｂからコピー先ボリューム２３ｃへのデータのコピーが完了した後、仮想ボリューム切替え（論理ボリュームと仮想ボリュームとの関連付けの変更）が行われる。具体的には、コピー先ボリューム２３ｃに関連付けられている仮想ボリューム２４ｃが、コピー先ボリューム２３ｃに代えて、移行先ボリューム２３ｂに関連付けられる。一方、移行先ボリューム２３ｂに関連付けられている仮想ボリューム２４ｂが、移行先ボリューム２３ｂに代えて、コピー先ボリューム２３ｃに関連付けられる。
【００３２】
以上の（１）〜（６）により、移行元プール２５ａにおける、仮想ボリューム２４ａに割り当てられていた物理ページ内のデータが、移行先プール２５ｂに移行される。
【００３３】
図２は、記憶装置システム２ａ（２ｂ）の構成を示す。
【００３４】
記憶装置システム２ａ（２ｂ）は、複数の物理記憶デバイスと、それらに接続されたコントローラとを有する。具体的には、例えば、記憶装置システム２ａ（２ｂ）は、記憶装置として、ディスクドライブ２００を格納する記憶装置２０を有する。また、記憶装置システム２ａ（２ｂ）は、記憶制御装置として、記憶制御装置２１を有する。記憶制御装置２１は、例えば、
（＊）ホスト１に接続されるインタフェースパッケージ（フロントエンド）２１０、
（＊）記憶装置２０に接続されるインタフェースパッケージ（バックエンド）２１１、
（＊）１以上のプロセッサ（例えばＣＰＵ）を含んだプロセッサパッケージ２１３、
（＊）キャッシュメモリ２１５をメモリパッケージ２１４、
（＊）プロセッサパッケージに接続される保守端末２１６、
（＊）パッケージ２１０、２１１、２１３及び２１４に接続されパッケージ間の接続を切替えるスイッチ２１２（例えばクロスバスイッチ）、
を有する。スイッチ２１２に代えて他種の接続部（例えばバス）が採用されても良い。保守端末２１６は無くても良い。保守端末２１６は、例えば、管理端末４（図１参照）に接続されていて良い。
【００３５】
記憶装置２０は、１以上のディスクドライブ２００を有する。各ドライブ２００は、入出力ポートを複数持つ。記憶装置システム２ａ（２ｂ）に、記憶装置２０は複数存在しても良い。また、ドライブ２００に代えて又は加えて、他種の物理記憶デバイス（例えば、半導体記憶装置、フラッシュメモリ）が採用されて良い。
【００３６】
フロントエンド２１０は、ホスト１とキャッシュメモリ２１５の間のデータ転送を制御する。フロントエンド２１０は、ホスト１からアクセス要求を受領する他、他の記憶装置システムに対し、アクセス要求を発行してよい。バックエンド２１１は、キャッシュメモリ２１５とドライブ２００の間のデータ転送を制御する。フロントエンド２１０及びバックエンド２１１の内部は、入出力ポートと、ローカルメモリと、データ転送の制御部とを有して良い。フロントエンド２１０及びバックエンド２１１は複数存在しても良い。
【００３７】
プロセッサパッケージ２１３は、複数のプロセッサ、ローカルメモリ、データ転送の制御部を有して良い。ローカルメモリは、プロセッサで実行されるコンピュータプログラムを記憶することができる。具体的には、例えば、ローカルメモリは、例えば、リードプログラム５０、ライトプログラム５１、ＴＰ情報参照プログラム５２、プール空き容量確認プログラム５３、コピープログラム５４、ゼロデータ破棄プログラム５５、非同期ライトプログラム５６を記憶して良い。
【００３８】
メモリパッケージ２１４は、キャッシュメモリ２１５と、データ転送の制御部とを有する。キャッシュメモリ２１５は、記憶装置システム２の管理情報を記憶して良い。キャッシュメモリ２１５は、ドライブ２００（論理ボリュームの基になる物理記憶デバイス）に書き込まれるデータ又はドライブ２００から読み出されたデータを一時的に記憶する。
【００３９】
プロセッサパッケージ２１３、メモリパッケージ２１４は複数存在しても良い。
【００４０】
保守端末２１６は、記憶装置システム２の構成を変更したり、記憶装置システム２の内部状態を参照したりするために使用されて良い。また、保守端末２１６は、管理端末４から記憶装置システム２への指示を中継して良い。保守端末２３は、プロセッサパッケージ２１３に接続されていて良い。
【００４１】
図３は、記憶装置システム２ａ（２ｂ）が有する管理情報を示す。
【００４２】
管理情報は、論理ボリュームの階層管理に関する情報（例えば、論理ボリュームが属する階層を表す情報）を含んだ情報である、管理情報は、例えば、下記の情報、
（＊）論理ボリュームに関する論理ボリューム管理情報６０、
（＊）仮想ボリュームに関する仮想ボリューム管理情報６１、
（＊）ドライブグループに関するドライブグループ管理情報６２、
（＊）外部ボリュームに関する外部ボリューム管理情報６３、
（＊）ＴＰに関するＴＰ情報６９、
（＊）コピー管理に関するコピー管理情報６７、及び、
（＊）ゼロデータ破棄に関するゼロデータ破棄管理情報６８、
を含む。
【００４３】
ＴＰ情報６９は、例えば、下記の情報、
（＊）記憶階層に関する記憶階層管理情報６４、
（＊）プールに関するプール管理情報６５、及び、
（＊）仮想ページと物理ページの対応関係に関するマッピング管理情報６６、
を含む。
【００４４】
図４は、論理ボリューム管理情報６０の構成を示す。
【００４５】
論理ボリューム２３は、記憶装置システム２がホスト１や他の記憶装置システム２に対して提供する記憶領域の単位である。論理ボリューム管理情報６０は、例えば、論理ボリューム毎に存在する情報である。１つの論理ボリューム（図４の説明において「対象論理ボリューム」と言う）を例に採ると、論理ボリューム管理情報６０は、例えば、下記の情報、
（＊）対象論理ボリュームの番号である「論理ボリューム番号」、
（＊）対象論理ボリュームの記憶容量を表す「容量」、
（＊）対象論理ボリュームの状態を表す「状態」（「状態」の値として、例えば、“正常”、“閉塞”、“未使用”）、
（＊）「ホスト定義情報リスト」、
（＊）対象論理ボリュームに関連付けられている仮想ボリュームの番号である「仮想ボリューム番号」、
（＊）対象ボリュームに対するリード及び／又はライトを抑止するか否かを表す「リード／ライト抑止フラグ」、
（＊）対象ボリュームにおける、リード及び／又はライトが抑止される範囲を表す「リード／ライト抑止範囲」、
（＊）対象論理ボリュームが通常ボリュームかプールを構成するプールボリュームかを示す「属性」、
を含む。「ホスト定義情報リスト」は、対象論理ボリュームから見て、アクセス要求元のホスト（図４の説明において「ホスト１」と言う）を特定するための情報（例えば、ホスト１の名称やポート特定情報等）を含んで良い。また、「ホスト定義情報リスト」は、ホスト１から見て、アクセス要求先の対象論理ボリュームを特定するための情報（例えば、対象記憶装置システム２のポートの識別情報や、論理ボリュームのＬＵＮ（Logical  Unit  Number）等）を含んで良い。
【００４６】
図５は、仮想ボリューム管理情報６１の構成を示す。
【００４７】
仮想ボリューム２４は、記憶装置システム２内のボリューム管理単位である。
【００４８】
仮想ボリューム管理情報６１は、例えば、仮想ボリューム毎に存在する情報である。１つの仮想ボリューム（図５の説明において「対象仮想ボリューム」と言う）を例に採ると、仮想ボリューム管理情報６１は、例えば、下記の情報、
（＊）対象仮想ボリュームを識別するための番号である「仮想ボリューム番号」、
（＊）対象仮想ボリュームの記憶容量を表す「容量」
（＊）対象仮想ボリュームの状態を表す「状態」（“正常”、“閉塞”、“未使用”）、
（＊）対象仮想ボリュームに対してリード及び／又はライトされるデータをキャッシュメモリ２１５に保持することが可能か否かを示す「キャッシュメモリ動作状態」、
（＊）対象仮想ボリュームに対応する記憶領域が、対象仮想ボリュームを有する記憶装置システムの内部か外部かを示す「記憶位置」、
（＊）対象仮想ボリュームがＴＰボリュームか否かを示す「ＴＰ属性」、
（＊）対象仮想ボリュームに基づくドライブグループを表す「ドライブグループ番号」、対象仮想ボリュームに対応する外部ボリュームの番号である「外部ボリューム番号」、対象仮想ボリュームに対応するマッピング管理情報６８の番号を表す「マッピング管理番号」、
（＊）対象仮想ボリュームがドライブグループに基づく場合、そのドライブグループの記憶領域のおける、対象仮想ボリュームの先頭と終端のアドレスを表す、「先頭アドレス」及び「終端アドレス」、
（＊）ゼロデータ破棄の実行状態を表す「ゼロデータ破棄実行状態」（“実行中”、“非実行”）、を含む。「ゼロデータ破棄」とは、ＴＰボリュームに割り当てられている物理ページ内のデータがゼロデータか否かを判断し、その判断の結果が肯定的の場合に、その物理ページの割当てを解除することを言う。「ゼロデータ破棄実行状態」の有効な値（例えば“実行中”又は“非実行”）は、対象仮想ボリュームに対応する「ＴＰ属性」の値が“有り”の場合に、設定される。
【００４９】
図６は、ドライブグループ管理情報６２の構成を示す。
【００５０】
「ドライブグループ」とは、論理ボリュームのデータを複数のドライブに分散して格納するための、複数のドライブ２００の領域の集合である。ドライブグループは、例えば、ＲＡＩＤ（Redundant  Array  of  Independent  （or  Inexpensive）  Disks）グループである。
【００５１】
ドライブグループ管理情報６２は、例えば、ドライブグループ毎に存在する情報である。１つのドライブグループ（図６の説明において「対象ドライブグループ」と言う）を例に採ると、ドライブグループ管理情報６２は、例えば、下記の情報、
（＊）対象ドライブグループを識別するための番号である「ドライブグループ番号」、
（＊）対象ドライブグループの記憶容量を表す「容量」、
（＊）対象ドライブグループの状態を表す「状態」（“正常”、“閉塞”、“未使用”）、
（＊）対象ドライブグループに基づく論理ボリュームの番号のリストである「論理ボリュームリスト」、
（＊）対象ドライブグループの構成に関する情報（例えば、ＲＡＩＤ構成情報（ＲＡＩＤレベル、データドライブ数とパリティドライブ数、ストライプサイズ等））を含んだ情報であるドライブグループ属性情報、
（＊）対象ドライブグループを構成するドライブの番号のリストである「ドライブ情報リスト」、
（＊）対象ドライブグループを構成している各ドライブの種別を表す「記憶装置種別」（ＳＳＤ／ＳＡＳ／ＳＡＴＡ等）、
を含む。ドライブ情報リストは、各ドライブ２００において対象ドライブグループに割り当てられた領域の情報であり、例えば、ドライブ番号、対象ドライブ２００における領域の開始アドレス、容量等を含む。
【００５２】
図７は、外部ボリューム管理情報６３の構成を示す。
【００５３】
「外部ボリューム」は、仮想ボリュームの実体が、他の記憶装置システム内の仮想ボリュームであるとして定義された仮想ボリュームである。
【００５４】
外部ボリューム管理情報６３は、例えば、外部ボリューム毎に存在する情報である。１つの外部ボリューム（図７の説明において「対象外部ボリューム」と言う）を例に採ると、外部ボリューム管理情報６３は、例えば、下記の情報、
（＊）対象外部ボリュームを識別するための番号である「外部ボリューム番号」、
（＊）対象外部ボリュームの記憶容量を表す「容量」、
（＊）対象外部ボリュームの状態を表す「状態」（“正常”、“閉塞”、“未使用”）、
（＊）対象外部ボリュームに対応する仮想ボリュームの番号である「仮想ボリューム番号」、（＊）対象外部ボリュームの属性を表す「外部ボリューム属性情報」、
（＊）対象外部ボリュームが存在する記憶装置システムへＴＰ情報を提供できるか否かを表す「ＴＰ情報提供可否」（“可能”、“不可”）、
（＊）対象外部ボリュームへのパスを表す情報である「外部ボリュームパス情報リスト」、を含む。「外部ボリューム属性情報」は、例えば、対象外部ボリュームを一意に特定するための情報（例えば、他の記憶装置システムの製造番号、他の記憶装置システムにおけるボリューム番号）を含んで良い。
【００５５】
図８は、外部ボリュームパス情報６３１の構成を示す。
【００５６】
外部ボリュームパス情報６３１は、図７に示した「外部ボリュームパス情報リスト」に含まれる情報であり、例えば、外部ボリュームへのパス（以下、外部ボリュームパス）毎に存在する情報である。１つの外部ボリュームパス（図８の説明において「対象外部ボリュームパス」と言う）を例に採ると、外部ボリュームパス情報６３１は、例えば、下記の情報、
（＊）対象外部ボリュームを有する記憶装置システムのポートのアドレスを表す「ポートアドレス情報」、
（＊）対象外部ボリュームに関連付けられている論理ボリュームの番号である「ＬＵＮ」、
（＊）対象外部ボリュームに対応する仮想ボリュームを有する記憶装置システムのポートの番号である「自記憶装置システムポート番号」、
（＊）対象外部ボリュームパスの状態を表す「状態」（“正常”、“閉塞”、“未使用”）、
を含む。対象外部ボリュームパスは、例えば、「ポートアドレス情報」、「ＬＵＮ」及び「自記憶装置システムポート番号」で構成されて良い。
【００５７】
図９は、記憶階層管理情報６４の構成を示す。
【００５８】
記憶階層管理情報６４は、この情報６４を有する記憶装置システムにある記憶装置２０、あるいは、その記憶装置システムにストレージ仮想化技術により外部接続されている他記憶装置システム２内記憶装置２０について、アクセス性能別に記憶装置２０を分類した情報である。記憶階層管理情報６４は、記憶階層毎に存在する。１つの記憶階層（図９の説明において「対象記憶階層」と言う）を例に採ると、記憶階層管理情報６４は、例えば、下記の情報、
（＊）対象記憶階層を識別するための番号である「記憶階層番号」、
（＊）対象記憶階層の状態を表す「状態」（“使用”、“未使用”）、
（＊）対象記憶階層に属する記憶装置２０が有するドライブの種別を表す「記憶装置属性」、
（＊）対象記憶階層に属する記憶装置２０を特定するための情報である「ドライブグループ／外部ボリュームリスト」
を含む。例えば、記憶階層０にはＳＳＤ、記憶階層１にはＳＡＳドライブ、記憶階層２にはＳＡＴＡドライブ、記憶階層３には外部ボリュームが分類される。なお、記憶階層（ティア）の種類は、アクセス性能に代えて又は加えて別の観点から定義されても良い。
【００５９】
図１０は、プール管理情報６５の構成を示す。
【００６０】
プール管理情報６５は、プールを構成するプールボリュームの情報と対象プール全体の容量や状態を管理する情報である。プール管理情報６５は、例えば、プール毎に存在する情報である。１つのプール（図１０の説明において「対象プール」と言う）を例に採ると、プール管理情報６５は、例えば、下記の情報、
（＊）対象プールを識別するための番号である「プール番号」、
（＊）対象プールの使用目的を示す「プール属性」（ＴＰ／スナップショット等）、
（＊）対象プールを構成する物理ページのサイズである「ページサイズ」、
（＊）対象プールの状態を表す「状態」（“正常”、“閉塞”、“未使用”）、
（＊）「全体情報」、
（＊）「記憶階層情報」、
（＊）対象プールを構成するプールボリュームの番号のリストである「プールボリュームリスト」、
（＊）対象プールの仮想ボリュームへの割当を管理するための情報（「ページ管理情報空きキューヘッダ」及び「ページ管理情報」、
を含む。「ページ管理情報空きキューヘッダ」は、例えば、未割当ての物理ページ（空きの物理ページ）のキューのヘッダへのポインタである。「ページ管理情報」は、物理ページに関する情報である。「ページ管理情報」の詳細は後述する。
【００６１】
「全体情報」及び「記憶階層情報」は、全体又は記憶階層（この段落の説明において「対象範囲」と言う）について、以下の情報、
（＊）対象範囲の記憶容量を表す「容量」、
（＊）対象範囲における１以上の割当て済みの物理ページの総記憶容量である「使用量」、
（＊）対象範囲において将来割当てが予約されている１以上の物理ページの総記憶容量である「予約量」、
（＊）「容量」に対する「使用量」の割合（使用率）の上限である「使用率閾値（上限）」、
（＊）「容量」に対する「使用量」の割合（使用率）の下限である「使用率閾値（下限）」、
を含む。使用率が「使用率閾値（下限）」を超えると、プールの追加を促すメッセージが保守端末２１６及び／又は管理端末４へ出力される。使用率が「使用量閾値（上限）」を越えると、プール空き容量が枯渇としているという警告が、保守端末２１６及び／又は管理端末４へ出力される。
【００６２】
図１１は、ページ管理情報６５１の構成を示す。
【００６３】
ページ管理情報６５１は、図１０に示した「ページ管理情報」であり、例えば、物理ページ毎に存在する情報である。ページ管理情報６５１とマッピング情報６６を基に、プール２５の仮想ボリューム２４への割当が管理される。１つの物理ページ（図１１の説明において「対象物理ページ」と言う）を例に採ると、ページ管理情報６５１は、例えば、下記の情報、
（＊）対象物理ページを識別するための番号である「ページ番号」、
（＊）対象物理ページの記憶領域の実体（対象物理ページの基になっている物理記憶領域）のアドレスである「ページ実体アドレス情報」、
（＊）対象ページの状態を表す「状態」（“データ有効”、“データ無効”）、
（＊）対象物理ページに対応するこのページ管理情報の次のページ管理情報のポインタである「次ページ管理情報ポインタ」、
を含む。つまり、ページ管理情報は、キューで管理されている。
【００６４】
図１２は、マッピング管理情報６６の構成を示す。
【００６５】
マッピング管理情報６６は、ＴＰボリューム毎に存在する情報である。１つのＴＰボリューム（図１２の説明において「対象ＴＰボリューム」と言う）を例に採ると、マッピング管理情報６６は、例えば、下記の情報、
（＊）対象ＴＰボリュームに対応するこのマッピング管理情報の状態を表す「状態」（“使用中”、“未使用”）、
（＊）対象ＴＰボリュームの番号である「仮想ボリューム番号」、
（＊）対象ＴＰボリュームが関連付けられているプール（対象ＴＰボリュームへの物理ページの割当元のプール）の番号である「プール番号」、
（＊）対象ＴＰボリュームに割り当てられる物理ページが属する記憶階層の割当優先度を表す「記憶階層割当てポリシィ」、
（＊）対象ＴＰボリュームの全体又は記憶階層別の使用率（対象ＴＰボリュームの「容量」に対する、物理ページが割り当てられている１以上の仮想ページの総容量、の割合）を表す「記憶領域使用率」
（＊）対象ＴＰボリュームに割当られた物理ページのページ管理情報のリストである「ページ管理情報アドレスリスト」、
（＊）対象仮想ページ毎のアクセス頻度を表す「ページアクセス頻度情報」、
を含む。「アクセス頻度」は、対象仮想ページに対する単位時間当りのアクセス（Ｉ／Ｏ）の回数（ＩＯＰＳ（I/O  per  Second））である。
【００６６】
図１３は、各種管理情報６０、６１、６２、６５、６６及び６３の関連性を示す。
【００６７】
論理ボリューム管理情報６０と仮想ボリューム管理情報６１が対応する。仮想ボリュームの属性に応じて、仮想ボリューム管理情報６１に、ドライブグループ管理情報６２、マッピング管理情報６６、外部ボリューム管理情報６３のいずれかが対応する。
【００６８】
また、マッピング管理情報６６とページ管理情報６５１を基に、仮想ボリューム２４にプール２５の物理ページが割り当てられる。プール２５を構成するプールボリューム２６の割当て単位である物理ページ毎に設けたページ管理情報６５１は、対象物理ページが仮想ボリュームに割り当てられていない状態では、ページ管理情報空きキューにより管理される。ページ管理情報空きキューは、記憶階層毎にあっても良い。また、物理ページがＴＰボリュームに割当てられた場合、当該物理ページに有効データが格納された後、その物理ページに対応するページ管理情報６５１の状態が“有効”になる。
【００６９】
図１４は、コピー管理情報６７の構成を示す。
【００７０】
コピー管理情報６７は、データ移行時に実行するコピー処理の状態や進捗を管理する情報である。コピー管理情報６７は、コピーペア（コピー元ボリュームとコピー先ボリュームのペア）毎に存在する情報である。１つのコピーペア（図１４の説明において「対象コピーペア」と言う）を例に採ると、コピー管理情報６７は、例えば、下記の情報、
（＊）対象コピーペアにおけるコピー元ボリュームの番号である「コピー元ボリューム番号」、
（＊）対象コピーペアにおけるコピー先ボリュームの番号である「コピー先ボリューム番号」、
（＊）対象コピーペアにおけるコピー処理の実行状態を表す「コピー状態」（“実行中”、“中断”、“未使用”）
（＊）コピー対象範囲においてコピーが必要な領域を特定するためのビットマップである「コピーＢＭ」（“ＯＮ”：差分あり、“ＯＦＦ”：差分なし）、
（＊）コピー終了を判定するためのコピーＢＭのＯＮであるビット数を示す「残差分量」、
（＊）コピー対象がＴＰボリュームであるか否かを示す「コピーモード」（“通常”、“ＴＰ”）、
（＊）コピーモードが“ＴＰ”の場合、ＴＰ情報の参照形態を特定する「ＴＰ情報参照モード」（“個別”、“一括”）、
（＊）コピーモードが“ＴＰ”の場合、ゼロデータ破棄の形態を示す「ゼロデータ破棄モード」（“非実施”、“コピー中実施”、“非同期実施”）、
（＊）コピー開始後、コピー元ボリュームを先頭から終端まで未だ一通りコピーできていないことを示す「初期コピーフラグ」、
を含む。
【００７１】
コピーＢＭを構成する各ビットは、コピー元ボリュームの各論理領域（ブロック或いは仮想ページ）に対応する。コピー元ボリュームの論理領域内のデータとコピー先ボリュームの論理領域内のデータとが異なっている場合、コピー元ボリュームの論理領域に対応したビットが“ＯＮ”（差分あり）となる。コピー元ボリュームとコピー先ボリューム間の差分は、ビットマップ以外の形式の情報で管理されても良い。
【００７２】
また、「残差分量」は、コピーＢＭの更新の際に、“ＯＦＦ”から“ＯＮ”への更新に応じて加算され、“ＯＮ”から“ＯＦＦ”への更新に応じて減算されてよい。
【００７３】
図１５は、ゼロデータ破棄管理情報６８の構成を示す。
【００７４】
ゼロデータ破棄管理情報６８は、データ移行とは非同期に実行するゼロデータ破棄処理（割当て済みの物理ページであってゼロデータを記憶する物理ページの割当てを解除する処理）の実行状態を管理する情報である。ゼロデータ破棄管理情報６８は、例えば、
（＊）ゼロデータ破棄の対象のＴＰボリュームの番号である「ゼロデータ破棄対象ボリューム」、
（＊）ゼロデータ破棄処理の状態を表す「状態」（“実行中”、“中断”、“未使用”）、
（＊）ゼロデータ破棄の対象となっている最新の仮想ページのアドレスを表す「ページ進捗ポインタ」、
（＊）ゼロデータ確認中に対象仮想ページにライトがあったか否かを示す「ページライト有無フラグ」、
を含む。
【００７５】
以下、本実施例で行われる処理の種々の流れを説明する。なお、以下の説明では、移行元記憶装置システム２ａが有する要素には、その要素の参照符号に符号「ａ」を追加し、移行先記憶装置システム２ｂが有する要素には、その要素の参照符号に符号「ｂ」を追加することがある。
【００７６】
図１６は、ボリューム移行処理の流れの概要を示す。
【００７７】
図１６の各ステップでは、管理端末４が、ホスト１、移行元記憶装置システム２ａ、又は移行先記憶装置システム２ｂに指示を出す。
【００７８】
まず、移行先記憶装置システム２ｂが、管理端末４からの指示に従い、移行元ボリューム２３ａを移行先記憶装置システム２ｂの外部ボリュームとして移行先ボリューム２３ｂを定義し、キャッシュメモリ動作を抑止する（ステップ１０００）。具体的には、例えば、管理端末４が、移行先記憶装置システム２ｂへ、移行対象ボリュームの情報として、ホスト１のアクセス先である移行元ボリューム２３ａに関する情報（例えば、移行元記憶装置システム２ａのポート特定情報やＬＵＮ等）を通知する。移行先記憶装置システム２ｂは、未使用の外部ボリューム管理情報６３ｂを確保し、管理端末４から受領した情報を、外部ボリューム管理情報６３ｂの「外部ボリュームパス情報リスト」（図７参照）へ登録する。さらに、移行先記憶装置システム２ｂは、ホスト１がアクセスしている移行元記憶装置システム２ａのポートのＬＵＮに対し、そのＬＵＮが割り当てられている移行元ボリューム２３ａに関する情報を要求し、その要求に対する応答（移行元記憶装置システム２ａからの応答）が有する情報を、外部ボリューム管理情報６３ｂの「外部ボリューム属性情報」（図７参照）に登録する。また、移行先記憶装置システム２ｂは、移行元記憶装置システム２ａへ移行元ボリューム２３ａの容量を問い合わせ、その問合せに対する回答が有する情報（容量、外部ボリューム属性情報）を、外部ボリューム管理情報６３ｂの「容量」及び「外部ボリューム属性情報」として登録する。移行先記憶装置システム２ｂは、未使用の論理ボリューム管理情報６０ｂ、および、未使用の仮想ボリューム管理情報６１ｂを確保し、それらを相互に対応付け、更に、それらを外部ボリューム２４ｂと対応付ける。また、移行先記憶装置システム２ｂは、仮想ボリューム管理情報６１ｂの「キャッシュメモリ動作状態」を“抑止”に設定する。これにより、移行元ボリューム２３ａへのアクセスと移行先ボリューム２３ｂへのアクセスが混在しても、キャッシュ動作は、一律、移行元記憶装置システム２ａで実行される。このため、ホスト１が誤ったデータにアクセスすることを回避することができる。
【００７９】
次に、プール空き容量確認処理が実行される（ステップ１００１）。プール空き容量確認処理については、後に図１７及び図１８を参照して説明する。
【００８０】
次に、移行先記憶装置システム２ｂの外部ボリュームとして、移行先ボリューム２３ｂにホストパスが定義され、それにより、移行先記憶装置システム２ｂがホスト１からアクセス要求を受領できるようになる（ステップ１００２）。具体的には、移行先記憶装置システム２ｂが、論理ボリューム管理情報６１ｂの「ホスト定義情報リスト」に、移行先ボリューム２３ｂへのパス（ホスト１を特定する情報、移行先ボリューム２３ｂのポート特定情報やＬＵＮ等）を登録する。
【００８１】
次に、ホスト１が、使用するアクセスパスを、移行元記憶装置システム２ａの移行元ボリューム２３ａへの第１のアクセスパスから、移行先記憶装置システム２ｂの移行先ボリューム２３ｂへの第２のアクセスパスに切替える（ステップ１００３）。その切り替え時に、パス切り替えプログラム１２は、例えば、下記の処理（１）〜（３）のうちのいずれかの処理、
（１）実行中のアクセス要求（アプリケーションプログラム１１から受領した要求）については、移行元記憶装置システム２ａとの間で処理し、新規にアプリケーションプログラム１１から受領したアクセス要求については、移行先記憶装置システム２ｂへ転送する、
（２）実行中の要求については、移行元記憶装置システム２ａとの間で処理し、新規に受領した要求については、パス切替えプログラム１２内で保留し、実行中の要求がすべて終了後、保留した要求を移行先記憶装置システム２ｂへ転送する、
（３）実行中の要求を一旦全てエラー終了させ、第１のアクセスパスから第２のアクセスパスへの切り替えを行い、リトライ時には、移行先記憶装置システム２ｂへの第２のアクセスパスを通じてアクセス要求を転送する、
を行うことができる。以下、移行先ボリューム２３ｂへのアクセスは、移行先記憶装置システム２ｂを経由して、移行先ボリューム２３ｂの外部ボリュームとして定義された移行元ボリューム２３ａに到達する。ホスト１が複数存在する場合は、順次、全てのホスト１についてアクセスパスが切り替えられる。
【００８２】
次に、移行先記憶装置システム２ｂが、ステップ１０００で抑止していた、キャッシュメモリ動作の抑止を、解除する（ステップ１００４）。
【００８３】
次に、移行先記憶装置システム２ｂが、移行先ボリューム２３ｂのコピー先となるコピー先ボリューム２３ｃを、ＴＰボリュームとして定義する（ステップ１００５）。具体的には、例えば、移行先記憶装置システム２ｂは、未使用の論理ボリューム管理情報６０ｂ、および、未使用の仮想ボリューム管理情報６１ｂを確保し、それらを相互に対応付け、確保した仮想ボリューム管理情報６１ｂの「ＴＰ属性」を“有り”に設定する。更に、未使用のマッピング管理情報を確保し、記憶領域の割当先となるプールを対応づける。更に、移行先記憶装置システム２ｂは、空きのコピー管理情報６７を確保し、「コピー元ボリューム番号」として移行先ボリューム２３ｂの番号を設定し、「コピー先ボリューム番号」としてコピー先ボリューム２３ｃの番号を設定し、「コピー状態」として“中断”を設定する。また、「ＴＰ情報参照モード」及び「ゼロデータ破棄モード」が設定される。
【００８４】
次に、コピー処理が開始される（ステップ１００６）。コピー処理については、後に図１９〜図２２を参照して説明する。
【００８５】
最後に、移行先記憶装置システム２ｂは、コピー先ボリューム２３ｃの定義を解除する（ステップ１００７）。コピー処理の結果、コピー先ボリューム２３ｃには、仮想ボリューム２４ｂが対応付いており、仮想ボリューム２４ｂに対応付いた、移行元ボリューム２３ａへの外部ボリューム定義が、解除される。
【００８６】
図１７は、移行先記憶装置システム２ｂで実行されるプール空き容量確認処理の流れを示す。
【００８７】
管理端末４の指示により、プロセッサパッケージ２１３のプロセッサが、プール空き容量確認プログラム５３を実行する。これにより、図１７に示すプール空き容量確認処理が行われる。
【００８８】
プール空き容量確認プログラム５３が、データ移行処理モードを管理端末４から受領する（ステップ１１００）。具体的には、例えば、プログラム５３は、「ＴＰ情報参照モード」（図１４参照）として、下記の（Ａ）又は（Ｂ）、
（Ａ）“個別”（コピー処理移行前に移行元ボリューム２３ａのＴＰ情報の一部を参照し、必要なＴＰ情報を問い合わせるモード）、
（Ｂ）“一括”（コピー処理移行前に移行元ボリューム２３ａのＴＰ情報の全てを参照するモード）、
を選択する（“一括”モードでも初期コピー後は“個別”モードと同様の動きになる）。
【００８９】
次に、プログラム５３は、移行元記憶装置システム２ａがＴＰ情報を提供可能か否か判断する（ステップ１１０１）。具体的には、例えば、プログラム５３は、「外部ボリューム属性情報」（図７参照）内のメーカ名や製造番号等から、移行元記憶装置システム２ａがＴＰ機能を有しているか否かを判断する。移行元記憶装置システム２ａがＴＰ機能を有しているか否かの特定が難しい場合、プログラム５３は、有していると判断する。
【００９０】
ＴＰ情報の提供が可能な場合（ステップ１１０１のＹ）、プログラム５３は、ステップ１１０２を実行し、ＴＰ情報の提供が不可能な場合（ステップ１１０１のＮ）、ステップ１１０４を実行する。
【００９１】
次に、プログラム５３は、移行元ボリューム２３ａのＴＰ情報を移行元記憶装置システム２ａに要求し（ステップ１１０２）、移行元記憶装置システム２ａから移行元ボリューム２３ａのＴＰ情報を受領するまで処理を中断する（ステップ１１０３）。移行元記憶装置システム２ａは、ステップ１１０２で発行された要求を受け、ＴＰ参照処理を行う。ＴＰ参照処理については、後に図３０を参照して説明する。
【００９２】
次に、プログラム５３は、移行先記憶装置システム２ｂのＴＰ情報を参照し（ステップ１１０４）、プール空き容量を求める。
【００９３】
次に、プログラム５３は、プール空き容量確認メイン処理を実行する（ステップ１１０５）。
【００９４】
図１８は、プール空き容量確認メイン処理の流れを示す。
【００９５】
プログラム５３は、移行元記憶装置システム２ａはＴＰ情報提供可能であったか否か判断する（ステップ１２００）。ステップ１１０２で発行した要求についてエラー終了した場合、ＴＰ情報提供不可と判断する。尚、プログラム５３は、ＴＰ情報提供可否判断の結果を、外部ボリューム管理情報６３に格納しておく。
【００９６】
ＴＰ情報の提供が不可能な場合（ステップ１２００のＮ）、プログラム５３は、移行先記憶装置システム２ｂにおいて移行元ボリューム２３ａの移行時に必要となるプール容量が、移行元ボリューム２３ａの容量であると算出する（ステップ１２０２）。例えば、移行元ボリューム２３ａの容量が１００ＧＢの場合、プール容量が１００ＧＢ、記憶階層はデフォルト（例えば記憶階層２（ＳＡＳ））というような算出がされる。
【００９７】
ＴＰ情報の提供が可能な場合（ステップ１２００のＹ）、プログラム５３は、ステップ１１００で管理端末４から受領したＴＰ情報参照モードは“一括”であるか否か判断する（ステップ１２０１）。
【００９８】
ＴＰ情報参照モードが“一括”でない場合（ステップ１２０１のＮ）、プログラム５３は、移行先記憶装置システム２ｂにおいて移行元ボリューム２３ａの移行時に必要となるプール容量を、移行元ボリューム２３ａのマッピング管理情報６６の記憶階層毎の使用量を基に算出する（ステップ１２０３）。例えば、移行元ボリューム２３ａのマッピング管理情報６６から、記憶階層０（ＳＳＤ）：１０ＧＢ、記憶階層１（ＳＡＳドライブ）:３０ＧＢ、記憶階層２（ＳＡＴＡドライブ）：６０ＧＢが特定された場合、移行時に必要となるプール容量として、記憶階層０（ＳＳＤ）については１０ＧＢ、記憶階層１（ＳＡＳドライブ）については３０ＧＢ、記憶階層２（ＳＡＴＡドライブ）については６０ＧＢがそれぞれ必要な容量であると算出される。
【００９９】
尚、移行元記憶装置システム２ａと移行先記憶装置システム２ｂの記憶階層が異なる場合は、移行元記憶装置システム２ａの記憶階層管理情報６４の「記憶装置属性」を参考として、移行先記憶装置システム２ｂの「記憶装置属性」が近い記憶階層への移行が想定される。
【０１００】
ＴＰ情報参照モードが“一括”である場合（ステップ１２０１のＹ）、プログラム５３は、移行先記憶装置システム２ｂにおいて移行元ボリューム２３ａの移行時に必要となるプール容量を、移行元ボリューム２３ａのマッピング管理情報６６（例えば、仮想ボリューム２４ａに割り当てられている物理ページの数）と、プール管理情報６５の「ページサイズ」とを基に、記憶階層毎に算出する（ステップ１２０４）。具体的には、例えば、プログラム５３は、移行元記憶装置システム２ａの現在割当てられている移行元ボリューム２３ａの全ページ内のデータを、移行先記憶装置システム２ｂにコピーした場合に必要となるプール容量を、移行元記憶装置システム２ａと移行先記憶装置システム２ｂの「ページサイズ」の差異を考慮し算出する。例えば、移行元記憶装置システム２ａの「ページサイズ」よりも移行先記憶装置システム２ｂの「ページサイズ」が大きい場合、Ｘ倍（Ｘ＝（移行先記憶装置システム２ｂのページサイズ）／（移行元記憶装置システム２ａのページサイズ））のプール容量が必要となる可能性があると考えられる。
【０１０１】
次に、プログラム５３は、移行先記憶装置システム２ｂのプール管理情報６５を参照し、プール空き容量として、各階層のプール空き容量と、全階層のプール空き容量総和とを算出する（ステップ１２０５）。
【０１０２】
次に、プログラム５３は、算出した必要プール容量とプール空き容量とを表す情報（以下、表示情報）を管理端末４に表示し、その情報が管理端末４に表示される（ステップ１２０６）。
【０１０３】
具体的には、例えば、ＴＰ情報の提供が不可能な場合（ステップ１２００のＮ）、表示情報は、移行元ボリューム２３ａを移行先記憶装置システム２ａの特定の記憶階層に移行することが可能であるか否かを、必要プール容量（移行元ボリューム２３ａの容量）と各階層のプール空き容量とを比較して示す情報で良い。また、表示情報は、移行対象データ（移行元ボリューム２３ａ内のデータ）を複数の階層に分散すれば移行できるか否かを必要プール容量と全階層のプール空き容量総和を比較して示す情報でも良い。更に、表示情報は、移行対象データを複数の階層に分散して格納する場合の格納案を例示する情報でも良い。例えば、表示情報は、１００ＧＢのデータを、移行先記憶装置システム２ｂの記憶階層２に８０％（８０ＧＢ）、記憶階層３に２０％（２０ＧＢ）に分散するなら格納可能を示す情報でも良い。
【０１０４】
また、例えば、ＴＰ情報の提供が可能な場合（ステップ１２００のＹ）、表示情報は、各記憶階層の必要プール容量と各階層のプール空き容量を比較して示す情報で良い。また、表示情報は、移行対象データの格納先の階層を変更することで格納できるか否かを、全階層の必要プール容量総和と全階層のプール空き容量総和を比較して示す情報でも良い。更に、表示情報は、格納先の階層を変更する場合の具体案を例示する情報でも良い。例えば、移行元記憶装置システム２ａにおいて、移行対象データが、記憶階層０に１０ＧＢ、記憶階層１に３０ＧＢに存在する場合、表示情報は、移行先記憶装置システム２ｂでは、記憶階層１に４０ＧＢなら格納可能を示す情報でも良い。
【０１０５】
以上で、プール空き容量確認メイン処理が終了する。
【０１０６】
再び図１７を参照する。
【０１０７】
プログラム５３は、移行先記憶装置システム２ｂのプールの空き容量が不足しているか判断する（ステップ１１０６）。
【０１０８】
プールの空き容量が不足している場合（ステップ１１０６のＹ）、プログラム５３は、プール容量の拡大を要求するメッセージを管理端末４に表示（送信）し（ステップ１１０７）、移行処理を中断する（ステップ１１１２）。具体的には、例えば、プログラム５３は、ステップ１０００での処理を元に戻す。
【０１０９】
プールの空き容量が不足していない場合（ステップ１１０６のＮ）、プログラム５３は、管理端末４から、ステップ１２０６での表示に対しての割当ポリシィとしてプール空き容量割当指示を受領する（ステップ１１０８）。プログラム５３は、受領した指示が表す情報を、マッピング管理情報６６の「記憶階層割当てポリシィ」に格納する。
【０１１０】
次に、コピー終了後、プログラム５３は、プールの空き容量が容量追加要求閾値以下となるか否か判断する（ステップ１１０９）。
【０１１１】
コピー終了後、プールの空き容量が容量追加要求閾値以下とならない場合（ステップ１１０９のＮ）、プログラム５３は、ステップ１１１３を行う。
【０１１２】
コピー終了後、プールの空き容量が容量追加要求閾値以下となる場合（ステップ１１０９のＹ）、プログラム５３は、コピー後にプール容量の拡大が必要となるメッセージを管理端末４に表示（送信）し（ステップ１１１０）、コピー処理を開始するか否かの最終判断の入力を求める（ステップ１１１１）。
【０１１３】
コピー処理を開始しない（中断する）入力を受領した場合（ステップ１１１１のＮ）、プログラム５３は、ステップ１１１２を行う。
【０１１４】
コピー処理を開始する入力を受領した場合（ステップ１１１１のＹ）、プログラム５３は、コピー先ボリュームに割当て予定のプール空き容量を予約する（ステップ１１１３）。具体的には、例えば、コピー処理中のプール枯渇を低減するため、プログラム５３は、プール管理情報６５の「予約量」に必要プール容量を登録し、プール空き容量算出の際、「予約量」を「使用量」として扱う。
【０１１５】
図１９は、コピー処理の流れを示す。
【０１１６】
管理端末４の指示により、プロセッサパッケージ２１３のプロセッサがコピープログラム５４を実行する。これにより、図１９に示すコピー処理が行われる。
【０１１７】
まず、コピープログラム５４は、「コピーＢＭ」（図１４参照）を構成する全てのビットを“ＯＮ”（差分あり）にする初期化を行う（ステップ１３００）。
【０１１８】
次に、コピープログラム５４は、「初期コピーフラグ」を“ＯＮ”に更新する（ステップ１３０１）。初期コピーフラグは、後述のステップ１３０７のＴＰ情報活用コピー処理（一括）内で参照及び更新される。
【０１１９】
次に、コピープログラム５４は、「コピー状態」を“実行中”に更新する（ステップ１３０２）。
【０１２０】
次に、コピープログラム５４は、外部ボリューム管理情報６３から、移行元記憶装置システム２ａがＴＰ情報提供可能か判断する（ステップ１３０３）。
【０１２１】
ＴＰ情報の提供が不可能の場合（ステップ１３０３のＮ）、コピープログラム５４は、通常コピー処理を実行する（ステップ１３０４）。
【０１２２】
ＴＰ情報の提供が可能の場合（ステップ１３０３のＹ）、コピープログラム５４は、「ＴＰ情報参照モード」は“個別”か否か判断する（ステップ１３０５）。
【０１２３】
ＴＰ情報参照モードが“個別”の場合（ステップ１３０５のＹ）、コピープログラム５４は、ＴＰ情報活用コピー処理（個別）を実行する（ステップ１３０６）。
【０１２４】
ＴＰ情報参照モードが“個別”でない場合（ステップ１３０５のＮ）、コピープログラム５４は、ＴＰ情報活用コピー処理（一括）を実行する（ステップ１３０７）。
【０１２５】
図２０は、通常コピー処理の流れを示す。
【０１２６】
まず、コピープログラム５４は、コピー範囲の差分の有無を判断する（ステップ１４００）。具体的には、コピープログラム５４は、コピー管理情報６７の「残差分量」が“０”であるか否かを判断する。
【０１２７】
コピー範囲の差分が無い場合（ステップ１４００のＹ）、コピープログラム５４は、通常コピー処理を終了する。
【０１２８】
コピー範囲の差分が有る場合（ステップ１４００のＮ）、コピープログラム５４は、「コピーＢＭ」を基に、ビット“ＯＮ”の位置に対応する領域（コピー元ボリューム（移行元ボリューム２３ａ）内の仮想ページ）におけるデータをコピー対象データに決定する（ステップ１４０１）。
【０１２９】
次に、コピープログラム５４は、コピー対象とした範囲に対応する、「コピーＢＭ」内のビットを、“ＯＦＦ”に更新する（ステップ１４０２）。コピー処理実行前に「コピーＢＭ」を更新するのは、コピー処理中にコピー対象範囲にホストからのライトがあった場合、ライト範囲を再度コピー対象とする必要があるからである。
【０１３０】
次に、コピープログラム５４は、コピー対象データをキャッシュメモリ２１５ａへ格納するよう移行元記憶装置システム２ａにリード要求を発行し（ステップ１４０３）、リード要求が終了するまで待つ（ステップ１４０４）。
【０１３１】
次に、コピープログラム５４は、「ゼロデータ破棄モード」を参照し、コピー中にゼロデータ破棄を実施するか判断する（ステップ１４０５）。
【０１３２】
コピー中にゼロデータ破棄を実施しない場合（ステップ１４０５のＮ）、コピープログラム５４は、ステップ１４０７を行う。
【０１３３】
コピー中にゼロデータ破棄を実施する場合（ステップ１４０５のＹ）、コピープログラム５４は、コピー対象データにおけるゼロデータをコピー対象から除外する（ステップ１４０６）。ゼロデータの特定は、ハードウェア又はコンピュータプログラムによって行われて良い。
【０１３４】
次に、コピープログラム５４は、コピー先ボリューム２３ｃに対応するＴＰボリューム（仮想ボリューム）２４ｃにおいて、コピー対象データのコピー先の全ての仮想ページに物理ページが割当て済みか否かを判断する（ステップ１４０７）。
【０１３５】
全ての仮想ページに物理ページが割当て済みの場合（ステップ１４０７のＹ）、コピープログラム５４は、ステップ１４０９を行う。
【０１３６】
全ての仮想ページに未割当ての仮想ページが含まれている場合（ステップ１４０７のＮ）、コピープログラム５４は、全ての未割当ての仮想ページに物理ページを割り当てる（ステップ１４０８）。具体的には、コピープログラム５４は、ステップ１１０８で受領したプール空き容量割当指示に従って、コピー先の仮想ページに物理ページを割当てる。
【０１３７】
次に、コピープログラム５４は、キャッシュメモリ２１５ｂにおけるコピー対象データを、移行先ボリューム２３ｂを通じてコピー先ボリューム２３ｃへコピーする（ステップ１４０９）。コピー先ボリューム２３ｃにコピーされたデータは、非同期ライト処理で、記憶装置２０ｂに書き込まれる。その後、ステップ１４００が行われる。
【０１３８】
図２１は、ＴＰ情報活用コピー処理（個別）の流れを示す。
【０１３９】
通常コピー処理との差異は、コピー対象データのコピー先の記憶領域の割当ての際に、コピープログラム５４が、コピー対象データのＴＰ情報を移行元記憶装置システム２ａに要求し、そのＴＰ情報を利用して、コピー先ボリューム２３ｃのＴＰボリューム（仮想ボリューム）２４ｃに物理ページを割り当てる点である。
【０１４０】
ステップ１５００〜ステップ１５０６、および、ステップ１５１１は、通常コピー処理のステップ１４００〜ステップ１４０６、および、ステップ１４０９と同じであるため、説明を省略する。
【０１４１】
次に、コピープログラム５４は、コピー先ボリューム２３ｃに対応するＴＰボリューム（仮想ボリューム）２４ｃにおいて、コピー対象データのコピー先の全ての仮想ページに物理ページが割当て済みか否かを判断する（ステップ１５０７）。
【０１４２】
全ての仮想ページに物理ページが割当て済みの場合（ステップ１５０７のＹ）、コピープログラム５４は、ステップ１５１１を行う。
【０１４３】
全ての仮想ページに未割当ての仮想ページが含まれている場合（ステップ１５０７のＮ）、コピープログラム５４は、コピー対象データのＴＰ情報を移行元記憶装置システム２ａに要求し（ステップ１５０８）、ＴＰ情報要求の終了を待つ（ステップ１５０９）。
【０１４４】
次に、コピープログラム５４は、移行元ボリューム２３ａのＴＰ情報を利用して、コピー先ボリューム２３ｃのＴＰボリューム２４ｃにおけるコピー先の全ての未割当て仮想ページに物理ページを割当てる（ステップ１５１０）。具体的には、コピープログラム５４は、ステップ１１０８で受領したプール空き容量割当指示に従って、コピー先の仮想ページに物理ページを割当てる。
【０１４５】
図２２は、ＴＰ情報活用コピー処理（一括）の流れを示す。
【０１４６】
ＴＰ情報活用コピー処理（個別）との差異は、コピー開始後、コピー元ボリュームを先頭から終端まで未だ一通りコピーできていない初期コピー状態の場合、コピー元ボリュームのＴＰ情報のマッピング管理情報６６を参照して、未割当の記憶領域（仮想ページ）からのリードを回避する点である。これにより、コピー対象のデータ量を削減することができる。
【０１４７】
ステップ１６００、ステップ１６０３〜ステップ１６１３は、ＴＰ情報活用コピー処理（個別）のステップ１５００、ステップ１５０１〜１５１１と同じであるため説明を省略する。
【０１４８】
コピープログラム５４は、「初期コピーフラグ」（図１４参照）が“ＯＮ”であるか否かを判断する（ステップ１６０１）。「初期コピーフラグ」が“ＯＮ”である場合（ステップ１６０１のＹ）、コピープログラム５４は、移行元ボリューム２３ａのＴＰ情報を基に、物理ページが割り当てられている仮想ページ内のデータを、コピー対象データに決定し、未割当ての仮想ページ内のデータを、コピー対象データから除外する（ステップ１６０２）。
【０１４９】
また、コピープログラム５４は、コピー処理がボリューム終端まで一通りコピーを実行したか判断する（ステップ１６１４）。コピー処理がボリューム終端まで一通りコピーを実行していた場合（ステップ１６１４のＹ）、コピープログラム５４は、「初期コピーフラグ」を“ＯＦＦ”に設定する（ステップ１６１５）。
【０１５０】
再び図１９を参照する。
【０１５１】
コピープログラム５４は、移行先ボリューム２３ｂに対応した「リード／ライト抑止フラグ」を“ＯＮ”に更新する（ステップ１３０８）。リード／ライト抑止の範囲は、ボリューム全体である。これにより、当該ボリュームへのリード／ライト処理が一時的に保留される。
【０１５２】
次に、コピープログラム５４は、コピー範囲の差分の有無を再度判断する（ステップ１３０９）。具体的には、コピープログラム５４は、コピー管理情報６７の「残差分量」が“０”であるか否か判断する。
【０１５３】
コピー範囲の差分が有る場合（ステップ１３０９のＮ）、コピープログラム５４は、ホスト１からのライトのすれ違い有りと判断し、再度コピー処理を実行するため、ステップ１３０３へ戻る。「ライトのすれ違い」というのは、コピー処理中に、コピー元の領域からコピーの領域にデータが移行された後に、コピー元の領域にデータが書き込まれたことである。この場合、コピー元領域からコピー先領域へのデータのコピーが再び必要である。
【０１５４】
コピー範囲の差分が無い場合（ステップ１３０９のＹ）、コピープログラム５４は、移行先ボリューム２３ｂとコピー先ボリューム２３ｃについて、論理ボリュームと仮想ボリューム間のマッピングを変更する（ステップ１３１０）。具体的には、コピープログラム５４は、論理ボリューム（移行先ボリューム）２３ｂ―仮想ボリューム２４ｂ、および、論理ボリューム（コピー先ボリューム）２３ｃ―仮想ボリューム２４ｃであった関連付けを、論理ボリューム（移行先ボリューム）２３ｂ―仮想ボリューム２４ｃ、および、論理ボリューム（コピー先ボリューム）２３ｃ―仮想ボリューム２４ｂという関連付けに変更する。このステップ１３１０以降に、移行先記憶装置システム２ｂが、移行先ボリューム２３ｂを指定したアクセス要求を受けた場合、仮想ボリューム２４ｃ（具体的には、仮想ボリューム２４ｃに割り当てられている、プール２５ｂ内の物理ページ）に対するアクセスを行なうことになる。
【０１５５】
次に、コピープログラム５４は、コピー先ボリューム２３ｃに対応した「リード／ライト抑止フラグ」を“ＯＦＦ”に更新する（ステップ１３１１）。これにより、当該ボリュームへのリード／ライト処理の保留が解除される。
【０１５６】
最後、コピープログラム５４は、「コピー状態」を“中断”に更新する（ステップ１３１２）。
【０１５７】
尚、移行元記憶装置システム２ａの移行元ボリューム２３ａに関するＴＰ情報の全部ではなく一部が移行されても良い。例えば、マッピング管理情報６６ａ内の「ページアクセス頻度情報」が有する情報が、移行元記憶装置システム２ａの「ページサイズ」と移行先記憶装置システム２ｂの「ページサイズ」の差異を基に移行されても良い。例えば、ページサイズが同一ならば、ＴＰ情報がそのまま移行され、移行先記憶装置システム２ｂの「ページサイズ」が移行元記憶装置システム２ａの「ページサイズ」の整数倍ならば、移行元記憶装置システム２ａの複数ページに関する情報Ａが、移行先記憶装置システム２ｂの１ページに関する情報Ｂとして移行されても良い。つまり、情報Ａが、移行先記憶装置システム２ｂにおいて、１ページに関する情報として管理されて良い。
【０１５８】
図２３は、記憶装置システム２ａ（２ｂ）で実行されるリード処理を示す。
【０１５９】
ホスト１、または、他の記憶装置システム２からのリード要求により、プロセッサパッケージ２１３のプロセッサがリードプログラム５０を実行する。それにより、図２３に示すリード処理が行われる。
【０１６０】
リードプログラム５０が、リード要求を受領する（ステップ１７００）。アクセス要求（リード要求及びライト要求）は、アクセス先を表す情報（アクセス先情報）を有する。アクセス先情報は、アクセス先の論理ボリューム番号（例えばＬＵＮ）と、アクセス先の範囲を表す情報（例えば、アドレス（例えばＬＢＡ（Logical  Block  Address））と、アクセス対象のデータの長さとの組み合わせ）とを含む。リード処理では、アクセス先の論理ボリュームは、リード対象ボリュームであり、アクセス先の範囲は、リード対象範囲である。
【０１６１】
次に、リードプログラム５０が、リード対象範囲について、「リード／ライト抑止」があるか否か判断する（ステップ１７０１）。この判断は、リード対象ボリュームに対応した「リード／ライト抑止フラグ」の値と「リード／ライト抑止範囲」の値とを基に行うことができる。
【０１６２】
リード／ライト抑止が無い場合（ステップ１７０１のＮ）、リードプログラム５０が、ステップ１７０３を行う。
【０１６３】
リード／ライト抑止が有る場合（ステップ１７０１のＹ）、リードプログラム５０が、リード／ライト抑止が解除されるまで、リード処理を抑止（保留）する（ステップ１７０２）。
【０１６４】
次に、リードプログラム５０が、リード対象ボリュームに関連付けられている仮想ボリュームに対応した「記憶位置」が“内部”であり（つまりその仮想ボリュームが、リード要求を受けた記憶装置システム内に有り）、且つ、その仮想ボリュームに対応した「ＴＰ属性」が“有り”か否か判断する（ステップ１７０３）。
【０１６５】
ステップ１７０３の判断の結果が否定的の場合（ステップ１７０３のＮ）、リードプログラム５０が、通常ボリュームリード処理を実行する（ステップ１７０４）。
【０１６６】
ステップ１７０３の判断の結果が肯定的の場合（ステップ１７０３のＹ）、リードプログラム５０が、ＴＰボリュームリード処理を実行する（ステップ１７０５）。
【０１６７】
図２４は、通常ボリュームリード処理の流れを示す。
【０１６８】
リードプログラム５０が、リード対象範囲内のリード対象データが全てキャッシュメモリ２１５に存在するか判断する（ステップ１８００）。
【０１６９】
リード対象データが全てキャッシュメモリ２１５に存在する場合（ステップ１８００のＹ）、リードプログラム５０が、ステップ１８０２を行う。
【０１７０】
リード対象データにキャッシュメモリ２１５に存在しないデータが含まれている場合（ステップ１８００のＮ）、リードプログラム５０が、キャッシュメモリ２１５に無いデータを、リード対象ボリュームの実体に応じて、内部記憶装置又は外部ボリュームからキャッシュメモリ２１５へリードする（ステップ１８０１）。
【０１７１】
次に、リードプログラム５０が、キャッシュメモリ２１５にリードしたデータを、リード要求の発行元（ホスト１、又は、リード要求を受領した記憶装置システムとは別の記憶装置システム）へ転送する（ステップ１８０２）。
【０１７２】
次に、リードプログラム５０が、リード要求発行元へリード終了を報告する（ステップ１８０３）。
【０１７３】
次に、リードプログラム５０が、リード対象ボリュームのキャッシュメモリ動作可否（リード対象ボリュームの仮想ボリュームに対応した「キャッシュ動作状態」の値）を判断する（ステップ１８０４）。
【０１７４】
キャッシュメモリ動作可能の場合（ステップ１８０４のＹ）、リードプログラム５０が、リード処理を終了する。
【０１７５】
キャッシュメモリ動作抑止の場合（ステップ１８０４のＮ）、リードプログラム５０が、キャッシュメモリにリードしたリード対象データを破棄する（ステップ１８０５）。
【０１７６】
図２５は、ＴＰボリュームリード処理の流れを示す。
【０１７７】
ステップ１９０１、ステップ１９０３〜ステップ１９０６は、通常ボリュームリード処理のステップ１８０１〜１８０５と同じであるため、説明を省略する。
【０１７８】
リードプログラム５０が、リード対象範囲（物理ページが割当て済みの範囲）について、リード対象データが全てキャッシュメモリ２１５に存在するか判断する（ステップ１９００）。
【０１７９】
また、リードプログラム５０が、リード対象範囲（物理ページが未割当ての範囲）について、リード対象データをキャッシュメモリ２１５のゼロデータ格納領域に設定する（ステップ１９０２）。
【０１８０】
図２６は、記憶装置システム２ａ（２ｂ）で実行されるライト処理を示す。
【０１８１】
具体的には、ホスト１、または、他の記憶装置システム２からのライト要求により、プロセッサパッケージ２１３のプロセッサがライトプログラム５１を実行する。これにより、図２６に示すライト処理が行われる。ライト処理では、アクセス先の論理ボリュームは、ライト対象ボリュームであり、アクセス先の範囲は、ライト対象範囲である。
【０１８２】
ライトプログラム５１は、ライトコマンドを受領する（ステップ２０００）。
【０１８３】
次に、ライトプログラム５１は、ライト対象範囲にリード／ライト抑止があるか判断する（ステップ２００１）。この判断は、ライト対象ボリュームに対応した「リード／ライト抑止フラグ」の値と「リード／ライト抑止範囲」の値とを基に行うことができる。
【０１８４】
リード／ライト抑止が無い場合（ステップ２００１のＮ）、ライトプログラム５１は、ステップ２００３を行う。
【０１８５】
リード／ライト抑止が有る場合（ステップ２００１のＹ）、ライトプログラム５１は、リード／ライト抑止が解除されるまで、ライト処理を抑止（保留）する（ステップ２００２）。
【０１８６】
次に、ライトプログラム５１は、ライト対象ボリュームに対応する「コピー状態」が“実行中”であるか否か判断する（ステップ２００３）。
【０１８７】
「コピー状態」が“実行中”でない場合（ステップ２００３のＮ）、ライトプログラム５１は、ステップ２００５を行う。
【０１８８】
「コピー状態」が“実行中”の場合（ステップ２００３のＹ）、ライトプログラム５１は、ライト対象範囲に対応する全ビット（「コピーＢＭ」におけるビット）を“ＯＮ”に更新する（ステップ２００４）。
【０１８９】
次に、ライトプログラム５１は、ライト対象ボリュームに対応するゼロデータ破棄管理情報６８の「処理状態」が“実行中”、かつ、ライト対象範囲にゼロデータ破棄処理中の仮想ページを含むか否か判断する（ステップ２００５）。ライト対象範囲にゼロデータ破棄処理中の仮想ページが含まれるか否かは、当該管理情報６８内の「ページ進捗ポインタ」を基に判断可能である。
【０１９０】
ステップ２００５の判断の結果が否定的の場合（ステップ２００５のＮ）、ライトプログラム５１は、ステップ２００７を行う。
【０１９１】
ステップ２００５の判断の結果が肯定的の場合（ステップ２００５のＹ）、ライトプログラム５１は、当該管理情報６８内の「ページライト有無フラグ」を“ＯＮ”に更新する（ステップ２００６）。
【０１９２】
次に、ライトプログラム５１は、ライト対象ボリュームに関連付けられている仮想ボリュームに対応した「記憶位置」が“内部”であり（つまりその仮想ボリュームが、ライト要求を受けた記憶装置システム内に有り）、且つ、その仮想ボリュームに対応した「ＴＰ属性」が“有り”か否か判断する（ステップ２００７）。
【０１９３】
ステップ２００７の判断の結果が否定的の場合（ステップ２００７のＮ）、ライトプログラム５１は、通常ボリュームライト処理を実行する（ステップ２００８）。
【０１９４】
ステップ２００７の判断の結果が肯定的の場合（ステップ２００７のＹ）、ライトプログラム５１は、ＴＰボリュームライト処理を実行する（ステップ２００９）。
【０１９５】
図２７は、通常ボリュームライト処理の流れを示す。
【０１９６】
ライトプログラム５１は、ライト要求に従うライト対象データをキャッシュメモリ２１５に格納する（ステップ２１００）。
【０１９７】
次に、ライトプログラム５１は、ライト対象ボリュームのキャッシュメモリ動作可否（ライト対象ボリュームの仮想ボリュームに対応した「キャッシュ動作状態」の値）を判断する（ステップ２１０１）。
【０１９８】
キャッシュメモリ動作可能の場合（ステップ２１０１のＹ）、ライトプログラム５１は、ステップ２１０４を行う。
【０１９９】
キャッシュメモリ動作抑止の場合（ステップ２１０１のＮ）、ライトプログラム５１は、キャッシュメモリ２１５に格納したライト対象データを、ライト対象ボリュームの実体に応じて、内部記憶装置又は外部ボリュームに書き込む（ステップ２１０２）。その際、例えば、ライト対象ボリュームがＲＡＩＤ５又はＲＡＩＤ６のドライブグループに基づく内部の仮想ボリュームであれば、必要に応じて、ライト対象の旧データや旧パリティがキャッシュメモリ２１５にリードされ、それらを基に新パリティが生成され、ライト対象データと共に新パリティがドライブグループに書き込まれて良い。また、例えば、ライト対象ボリュームがＲＡＩＤ１のドライブグループに基づく内部の仮想ボリュームであれば、ライト対象データが二重化されてドライブグループに書き込まれて良い。
【０２００】
次に、ライトプログラム５１は、キャッシュメモリ２１５に格納したライト対象データを破棄する（ステップ２１０３）。
【０２０１】
次に、ライトプログラム５１は、ライト要求の発行元（ホスト１、又は、ライト要求を受領した記憶装置システムとは別の記憶装置システム）へライト終了を報告する（ステップ２１０４）。
【０２０２】
図２８は、ＴＰボリュームライト処理の流れを示す。
【０２０３】
ステップ２２００、ステップ２２０１、ステップ２２０４〜ステップ２２０６は、通常ボリュームライト処理のステップ２１００〜２１０４と同じであるため、説明を省略する。
【０２０４】
ライトプログラム５１は、ライト対象範囲に属する全ての仮想ページに物理ページが割当て済みか判断する（ステップ２２０２）。
【０２０５】
ライト対象範囲に少なくとも１つの未割当ての仮想ページが属している場合（ステップ２２０２のＮ）、ライトプログラム５１は、全ての未割当ての仮想ページに物理ページを割当てる（ステップ２２０３）。
【０２０６】
図２９は、記憶装置システム２ａ（２ｂ）で実行される非同期ライト処理の流れを示す。
【０２０７】
具体的には、例えば、記憶装置システム２ａ（２ｂ）が周期的（又は非周期的）にプロセッサパッケージ２１３の非同期ライトプログラム５６を実行する。これにより、図２９に示す非同期ライト処理が行われる。
【０２０８】
非同期ライトプログラム５６は、非同期ライト対象ボリュームのキャッシュメモリ動作可否を判断する（ステップ２３００）。
【０２０９】
キャッシュメモリ動作抑止の場合（ステップ２３００のＮ）、非同期ライトプログラム５６は、非同期ライト処理を終了する。その理由は、全てのダーティデータがホスト１や他の記憶装置システムからのライト要求に同期して、記憶装置や外部ボリュームへライトされているためである。
【０２１０】
次に、非同期ライトプログラム５６は、非同期ライト対象ボリュームのダーティデータ（キャッシュメモリ２１５における、ドライブに未だ書き込まれていないデータ）から、ライト対象データを決定する（ステップ２３０１）。
【０２１１】
次に、非同期ライトプログラム５６は、非同期ライト対象ボリュームに関連付けられている仮想ボリュームに対応した「記憶位置」が“内部”であり、且つ、その仮想ボリュームに対応した「ＴＰ属性」が“有り”か否か判断する（ステップ２３０２）。
【０２１２】
ステップ２３０２の判断の結果が否定的の場合（ステップ２３０２のＮ）、非同期ライトプログラム５６は、ステップ２３０５を行う。
【０２１３】
ステップ２３０２の判断の結果が肯定的の場合（ステップ２３０２のＹ）、非同期ライトプログラム５６は、ライト対象範囲に属する全ての仮想ページに物理ページが割当て済みか判断する（ステップ２３０３）。
【０２１４】
ライト対象範囲に属する全ての仮想ページに物理ページが割当て済みの場合（ステップ２３０３のＹ）、非同期ライトプログラム５６は、ステップ２３０５を行う。
【０２１５】
ライト対象範囲に少なくとも１つの未割当ての仮想ページがある場合（ステップ２３０３のＮ）、非同期ライトプログラム５６は、それら未割当ての仮想ページに物理ページを割り当てる（ステップ２３０４）。
【０２１６】
次に、非同期ライトプログラム５６は、キャッシュメモリ２１５に格納したライト対象データを、ライト対象ボリュームの実体に応じて、内部記憶装置又は外部ボリュームに書き込む（ステップ２３０５）。
【０２１７】
図３０は、移行元記憶装置システム２ａで実行されるＴＰ情報参照処理を示す。
【０２１８】
具体的には、例えば、他の記憶装置システム２からの要求により、プロセッサパッケージ２１３ａのプロセッサがＴＰ情報参照プログラム５２を実行する。これにより、図３０に示すＴＰ情報参照処理が行われる。
【０２１９】
ＴＰ情報参照プログラム５２は、ＴＰ情報リード要求を受領する（ステップ２４００）。
【０２２０】
次に、ＴＰ情報参照プログラム５２は、ＴＰ情報リード要求の対象ボリュームに対応する仮想ボリューム管理情報６１内の「ＴＰ属性」が“有る”か否か判断する（ステップ２４０１）。
【０２２１】
「ＴＰ属性」が“無い”場合（ステップ２４０１のＮ）、プログラム５２は、ステップ２４０４を行う。
【０２２２】
「ＴＰ属性」が“有る”場合（ステップ２４０１のＹ）、プログラム５２は、ＴＰ情報リード要求の対象ボリュームに対応するＴＰ情報６９を特定し（ステップ２４０２）、そのＴＰ情報６９が有する情報を、ＴＰ情報リード要求の発行元へ転送する（ステップ２４０３）。
【０２２３】
次に、プログラム５２は、ＴＰ情報リード要求の発行元へ要求終了を報告する（ステップ２４０４）。ステップ２４０１のＮの場合、このステップ２４０４では、エラーが報告されて良い。
【０２２４】
図３１は、記憶装置システム２ａ（２ｂ）で実行されるゼロデータ破棄処理の流れを示す。
【０２２５】
具体的には、記憶装置システム２ａ（２ｂ）が周期的（又非周期的）にプロセッサパッケージ２１３のプロセッサでゼロデータ破棄プログラム５５を実行する。これにより、図３１に示すゼロデータ破棄処理が行われる。
【０２２６】
まず、ゼロデータ破棄プログラム５５は、ゼロデータ破棄処理の対象の論理ボリューム（以下、図３１の説明において「対象ボリューム」と言う）に対応する「ページ進捗ポインタ」（図１５参照）を初期化する（ステップ２５００）。
【０２２７】
次に、プログラム５５は、対象ボリュームの終端まで参照したか判断する（ステップ２５０１）。
【０２２８】
対象ボリュームの終端まで参照した場合（ステップ２５０１のＹ）、プログラム５５は、ゼロデータ破棄処理を終了する。
【０２２９】
対象ボリュームの終端まで参照していない場合（ステップ２５０１のＮ）、プログラム５５は、ゼロデータ破棄対象ページについて「ページライト有無フラグ」を初期化（“ＯＦＦ”）する（ステップ２５０２）。
【０２３０】
次に、プログラム５５は、ゼロデータ破棄対象ページのリード対象データをページ進捗ポインタから決定する（ステップ２５０３）。
【０２３１】
次に、プログラム５５は、リード対象データを記憶装置２０からキャッシュメモリ２１５へリードする（ステップ２５０４）。
【０２３２】
次に、プログラム５５は、リード対象データがゼロデータであるか確認する（ステップ２５０５）。
【０２３３】
次に、プログラム５５は、リード対象データが全てゼロデータであるか判断する（ステップ２５０６）。
【０２３４】
リード対象データにゼロデータでない部分がある場合（ステップ２５０６のＮ）、当該ページ内のデータの破棄は不可であるため、プログラム５５は、「ページ進捗ポインタ」を次ページに更新し（ステップ２５０７）、ステップ２５０１を行う。
【０２３５】
リード対象データが全てゼロデータである場合（ステップ２５０６のＹ）、プログラム５５は、ゼロデータ確認中に当該ページにライト無しであるかを「ページライト有無フラグ」から判断する（ステップ２５０８）。
【０２３６】
ゼロデータ確認中に当該ページにライト有りの場合（ステップ２５０８のＮ）、プログラム５５は、当該ページ内のデータの破棄は不可であるため、「ページ進捗ポインタ」を次ページに更新し（ステップ２５０７）、ステップ２５０１を行う。
【０２３７】
ゼロデータ確認中に当該ページにライト無しの場合（ステップ２５０８のＹ）、プログラム５５は、リード対象範囲がページ境界に到達したか判断する（ステップ２５０９）。
【０２３８】
リード対象範囲がページ境界に到達していない場合（ステップ２５０９のＮ）、プログラム５５は、「ページ進捗ポインタ」をリード単位分更新し（ステップ２５１０）、ステップ２５０３を行う。
【０２３９】
リード対象範囲がページ境界に到達している場合（ステップ２５０９のＹ）、プログラム５５は、当該ページのリード／ライトを「リード／ライト抑止フラグ」と「リード／ライト抑止範囲」を更新することで抑止し（ステップ２５１１）、ページ内のデータを破棄し（ステップ２５１２）、当該ページのリード／ライト抑止を解除する（ステップ２５１３）。その後、ステップ２５０７が行われる。
【実施例２】
【０２４０】
以下、本発明の実施例２を説明する。その際、実施例１との相違点を主に説明し、実施例１との共通点については説明を省略或いは簡略する。
【０２４１】
図３２に、本発明の実施例２に係る計算機システムの構成を示す。
【０２４２】
実施例１と異なる点は、移行元記憶装置システム２ａと移行先記憶装置システム２ｂが、パス切替え部３１を持つネットワーク装置３を介してホスト１と接続されている点である。ホスト１のパス切替え時には、管理端末４からの指示でネットワーク装置３がホスト透過に記憶装置システム２へのアクセスパスを切替える。
【０２４３】
以上、本発明の幾つかの実施例を説明したが、本発明は、これらの実施例に限定されるものでなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【０２４４】
例えば、本発明において、移行対象ボリュームのボリューム種別は問わない。例えば、移行対象ボリュームがメインフレームボリュームであってもかまわない。メインフレームボリュームにおいては、アクセス性能向上のため、フォーマットに関する制御情報や、特定種別のレコードのレイアウトを変更するケース等が存在するが、データ移行時に移行元記憶装置システム２ａから別途情報を受領するか、あるいは、移行先記憶装置システム２ｂでデータ移行しつつ、新規に制御情報の作成やレコードのレイアウト変更が実施されても良い。
【０２４５】
また、上述した実施例１及び２では、移行元ボリューム２３ａに関連付けられている仮想ボリューム２４ａが、実質的に移行元ボリュームで良く、移行先ボリューム２３ｂに関連付けられている仮想ボリューム２４ｂが、実質的に移行先ボリュームで良く、コピー先ボリューム２３ｃに関連付けられている仮想ボリューム２４ｃが、実質的にコピー先ボリュームで良い。ホスト１に認識されるボリュームは、例えば、ＬＵＮで良い。
【０２４６】
また、図１６のステップ１００６のコピー処理では、移行先記憶装置システム２ｂは、ＴＰ情報６９ａ（例えばマッピング管理情報６６ａ）から、コピー元に対応する割当て済みの仮想ページを特定し、特定した仮想ページに対応する、ＴＰボリューム２４ｃの仮想ページに、プール２５ｂから物理ページを割り当てて良い。
【符号の説明】
【０２４７】
１…ホスト  ２ａ…移行元記憶装置システム  ２ｂ…移行先記憶装置システム
【図１】
0005595530.tif 000002
【図２】
0005595530.tif 000003
【図３】
0005595530.tif 000004
【図４】
0005595530.tif 000005
【図５】
0005595530.tif 000006
【図６】
0005595530.tif 000007
【図７】
0005595530.tif 000008
【図８】
0005595530.tif 000009
【図９】
0005595530.tif 000010
【図１０】
0005595530.tif 000011
【図１１】
0005595530.tif 000012
【図１２】
0005595530.tif 000013
【図１３】
0005595530.tif 000014
【図１４】
0005595530.tif 000015
【図１５】
0005595530.tif 000016
【図１６】
0005595530.tif 000017
【図１７】
0005595530.tif 000018
【図１８】
0005595530.tif 000019
【図１９】
0005595530.tif 000020
【図２０】
0005595530.tif 000021
【図２１】
0005595530.tif 000022
【図２２】
0005595530.tif 000023
【図２３】
0005595530.tif 000024
【図２４】
0005595530.tif 000025
【図２５】
0005595530.tif 000026
【図２６】
0005595530.tif 000027
【図２７】
0005595530.tif 000028
【図２８】
0005595530.tif 000029
【図２９】
0005595530.tif 000030
【図３０】
0005595530.tif 000031
【図３１】
0005595530.tif 000032
【図３２】
0005595530.tif 000033