(57)【要約】【課題】コピー関係を用いて論理ボリュームを第１記憶場所から第２記憶場所に再配置するための方法、コンピュータ・システム、及びプログラムが提供される。【解決手段】論理ボリュームを第１記憶場所から第２記憶場所に移すオペレーションが開始される。論理ボリューム内のデータを第１記憶場所から第２記憶場所にコピーするために第１及び第２記憶場所の間で１つの関係が確立される。論理ボリューム内のデータを第１記憶場所から第２記憶場所にコピーしている間に論理ボリューム内のデータに対する読み出しリクエストが受信される。該読み出しリクエストに応じて、その要求されたデータが第１記憶場所内の該論理ボリュームの第１コピーに存するか、それとも第２記憶場所内の該論理ボリュームの第２コピーに存するかが判定される。要求されたデータは、該論理ボリュームが第１記憶場所から第２記憶場所にコピーされている間に、判定された該論理ボリュームの第１又は第２のコピーから戻される。【選択図】図１
2008009978.tif 000002
【特許請求の範囲】
【請求項１】
論理ボリュームを第１記憶場所から第２記憶場所に移すオペレーションを開始するステップと、
前記論理ボリューム内のデータを前記第１記憶場所から前記第２記憶場所にコピーする前記第１及び第２記憶場所間の関係を確立するステップと、
前記論理ボリューム内の前記データを前記第１記憶場所から前記第２記憶場所にコピーしている間に前記論理ボリューム内のデータに対する読み出しリクエストを受信するステップと、
前記読み出しリクエストに応じて、その要求されたデータが前記第１記憶場所内の前記論理ボリュームの第１コピーに存するか、それとも前記第２記憶場所内の前記論理ボリュームの第２コピーに存するか判定するステップと、
前記論理ボリュームが前記第１記憶場所から前記第２記憶場所にコピーされている間に前記論理ボリュームの判定された第１又は第２コピーから前記要求されたデータを戻すステップと、
を含む、方法。
【請求項２】
前記論理ボリューム内の前記データを前記第１コピーから前記第２コピーにコピーしている間に前記論理ボリュームにデータを書き込むリクエストを受信するステップと、
前記書き込みデータを前記第２記憶場所に存する前記論理ボリュームの前記第２コピーに書き込むステップと、
を更に含む、請求項１に記載の方法。
【請求項３】
前記論理ボリュームはデータ・ユニットを含み、
前記関係は、前記論理ボリューム内のデータ・ユニットについて前記論理ボリュームの前記第１コピー内の前記データ・ユニットが前記論理ボリュームの前記第２コピーにコピーされたか否かを示し、
前記方法は、１つのデータ・ユニットが前記論理ボリュームの前記第１コピーから前記論理ボリュームの前記第２コピーにコピーされたことを、前記データを前記論理ボリュームの前記第２コピーに書き込むことに応答して、示すステップ、を更に含む、請求項２に記載の方法。
【請求項４】
前記論理ボリュームはデータ・ユニットを含み、前記関係は前記論理ボリューム内の各データ・ユニットについて前記論理ボリュームの前記第１コピー内の前記データ・ユニットが前記論理ボリュームの前記第２コピーにコピーされたか否かを示し、前記要求されたデータが前記論理ボリュームの前記第１コピーにおいて維持されているのか、それとも前記第２コピーにおいて維持されているのかを判定するステップは、
前記要求されたデータを含む前記データ・ユニットが前記論理ボリュームの前記第１コピーから前記論理ボリュームの前記第２コピーにコピーされたことを前記関係が示すか否かを判定するステップを含み、前記要求されたデータを含む前記データ・ユニットが前記第１コピーから前記第２コピーにコピーされていないことを前記関係が示していると判定することに応答して前記要求されたデータは前記第１コピーに存すると判定され、前記要求されたデータを含む前記データ・ユニットが前記第１コピーから前記第２コピーにコピーされたことを前記関係が示していると判定することに応答して前記要求されたデータは前記第２コピーに存すると判定される、請求項１に記載の方法。
【請求項５】
前記論理ボリュームの前記第１コピーから前記論理ボリュームの前記第２コピーにコピーされたデータ・ユニットにより使用されている空間を、そのデータ・ユニットを前記論理ボリュームの前記第２コピーにコピーする動作の完了に応答して、前記論理ボリュームについての前記データ・ユニットの全てが前記論理ボリュームの前記第２コピーにコピーされる前に、解放するステップを更に含む、請求項１に記載の方法。
【請求項６】
前記データ・ユニットの全てを前記論理ボリュームの前記第１コピーから前記論理ボリュームの前記第２コピーにコピーする動作の完了に応答して、前記論理ボリュームの前記第１コピー内のデータ・ユニットにより使用されている空間を解放するステップを更に含む、請求項１に記載の方法。
【請求項７】
前記論理ボリューム内のデータが前記第１記憶場所から前記第２記憶場所にコピーされつつあることを前記関係が示している間、前記論理ボリュームのアドレスに対する読み出しリクエストを前記論理ボリュームの前記判定された第１又は第２コピーにマッピングするステップと、
前記論理ボリュームの前記第１コピーを前記第２コピーにコピーする動作の完了に応答して前記論理ボリュームのアドレスに対する読み出しリクエストを前記第２記憶場所に存する前記論理ボリュームの前記第２コピーにマッピングするステップと、
を更に含む、請求項１に記載の方法。
【請求項８】
前記論理ボリューム内のデータを前記第１記憶場所から前記第２記憶場所にコピーする前記関係は、ポイント・イン・タイム・コピー関係を含む、請求項１に記載の方法。
【請求項９】
前記コピー関係を確立する動作に応答して、前記論理ボリュームの前記第１コピーのデータ・ユニットを前記論理ボリュームの前記第２コピーの対応するデータ・ユニットにコピーするオペレーションを開始するステップと、
前記論理ボリュームの前記第１コピーを前記論理ボリュームの前記第２コピーにコピーする動作に応答して一データ・ユニットがコピーされたことを示すステップとを更に含む請求項１に記載の方法において、データ・ユニットは、そのデータ・ユニットが前記論理ボリュームの前記第２コピーにコピーされていないと示されていれば、前記論理ボリュームの前記第１コピーに存すると判定され、データ・ユニットは、そのデータ・ユニットが前記論理ボリュームの前記第２コピーにコピーされたと示されていれば、前記論理ボリュームの前記第２コピーに存すると判定される、請求項１に記載の方法。
【請求項１０】
第１及び第２記憶場所と通信するシステムであって、前記システムは
プロセッサと、
オペレーションを実行するように前記プロセッサにより実行されるプログラムと、を含んでおり、前記オペレーションは、
論理ボリュームを第１記憶場所から第２記憶場所に移すリクエストを受信するステップと、
前記論理ボリューム内のデータを前記第１記憶場所から前記第２記憶場所にコピーする前記第１及び第２記憶場所間の関係を確立するステップと、
前記論理ボリューム内の前記データを前記第１記憶場所から前記第２記憶場所にコピーしている間に前記論理ボリューム内のデータに対する読み出しリクエストを受信するステップと、
前記読み出しリクエストに応じて、その要求されたデータが前記第１記憶場所内の前記論理ボリュームの第１コピーに存するか、それとも前記第２記憶場所内の前記論理ボリュームの第２コピーに存するか判定するステップと、
前記論理ボリュームが前記第１記憶場所から前記第２記憶場所にコピーされている間に前記論理ボリュームの判定された第１又は第２コピーから前記要求されたデータを戻すステップと、
を含む、システム。
【請求項１１】
前記オペレーションは、更に、
前記論理ボリューム内の前記データを前記第１コピーから前記第２コピーにコピーしている間に前記論理ボリュームにデータを書き込むリクエストを受信するステップと、
前記第２記憶場所に存する前記論理ボリュームの前記第２コピーに前記書き込みデータを書き込むステップと、
を更に含む、請求項１０に記載のシステム。
【請求項１２】
前記論理ボリュームはデータ・ユニットを含み、
前記関係は、前記論理ボリューム内の各データ・ユニットについて前記論理ボリュームの前記第１コピー内の前記データ・ユニットが前記論理ボリュームの前記第２コピーにコピーされたか否かを示し、
前記オペレーションは、１つのデータ・ユニットが前記論理ボリュームの前記第１コピーから前記論理ボリュームの前記第２コピーにコピーされたことを、前記データを前記論理ボリュームの前記第２コピーに書き込むことに応答して、示すステップ、を更に含む、請求項１１に記載のシステム。
【請求項１３】
前記論理ボリュームはデータ・ユニットを含み、前記関係は前記論理ボリューム内の各データ・ユニットについて前記論理ボリュームの前記第１コピー内の前記データ・ユニットが前記論理ボリュームの前記第２コピーにコピーされたか否かを示し、前記要求されたデータが前記論理ボリュームの前記第１コピーにおいて維持されているのか、それとも前記第２コピーにおいて維持されているのかを判定するステップは、
前記要求されたデータを含む前記データ・ユニットが前記論理ボリュームの前記第１コピーから前記論理ボリュームの前記第２コピーにコピーされたことを前記関係が示すか否かを判定するステップを含み、前記要求されたデータを含む前記データ・ユニットが前記第１コピーから前記第２コピーにコピーされていないことを前記関係が示していると判定することに応答して前記要求されたデータは前記第１コピーに存すると判定され、前記要求されたデータを含む前記データ・ユニットが前記第１コピーから前記第２コピーにコピーされたことを前記関係が示していると判定することに応答して前記要求されたデータは前記第２コピーに存すると判定される、請求項１０に記載のシステム。
【請求項１４】
前記オペレーションは、
前記論理ボリューム内のデータが前記第１記憶場所から前記第２記憶場所にコピーされつつあることを前記関係が示している間、前記論理ボリュームのアドレスに対する読み出しリクエストを前記論理ボリュームの前記判定された第１又は第２コピーにマッピングするステップと、
前記論理ボリュームの前記第１コピーを前記第２コピーにコピーする動作の完了に応答して前記論理ボリュームのアドレスに対する読み出しリクエストを前記第２記憶場所に存する前記論理ボリュームの前記第２コピーにマッピングするステップと、
を更に含む、請求項１０に記載のシステム。
【請求項１５】
前記オペレーションは、
前記コピー関係を確立する動作に応答して、前記論理ボリュームの前記第１コピーのデータ・ユニットを前記論理ボリュームの前記第２コピーの対応するデータ・ユニットにコピーするオペレーションを開始するステップと、
前記論理ボリュームの前記第１コピーを前記論理ボリュームの前記第２コピーにコピーする動作に応答して一データ・ユニットがコピーされたことを示すステップとを更に含んでおり、データ・ユニットは、そのデータ・ユニットが前記論理ボリュームの前記第２コピーにコピーされていないと示されていれば、前記論理ボリュームの前記第１コピーに存すると判定され、データ・ユニットは、そのデータ・ユニットが前記論理ボリュームの前記第２コピーにコピーされたと示されていれば、前記論理ボリュームの前記第２コピーに存すると判定される、請求項１０に記載のシステム。
【請求項１６】
第１及び第２記憶場所に関してオペレーションを実行するためにコンピュータに、
論理ボリュームを第１記憶場所から第２記憶場所に移すオペレーションを開始するステップと、
前記論理ボリューム内のデータを前記第１記憶場所から前記第２記憶場所にコピーする前記第１及び第２記憶場所間の関係を確立するステップと、
前記論理ボリューム内の前記データを前記第１記憶場所から前記第２記憶場所にコピーしている間に前記論理ボリューム内のデータに対する読み出しリクエストを受信するステップと、
前記読み出しリクエストに応じて、その要求されたデータが前記第１記憶場所内の前記論理ボリュームの第１コピーに存するか、それとも前記第２記憶場所内の前記論理ボリュームの第２コピーに存するか判定するステップと、
前記論理ボリュームが前記第１記憶場所から前記第２記憶場所にコピーされている間に前記論理ボリュームの判定された第１又は第２コピーから前記要求されたデータを戻すステップと、
を含むオペレーションを実行させるプログラム。
【請求項１７】
前記オペレーションは更に、
前記論理ボリューム内の前記データを前記第１コピーから前記第２コピーにコピーしている間に前記論理ボリュームにデータを書き込むリクエストを受信するステップと、
前記書き込みデータを前記第２記憶場所に存する前記論理ボリュームの前記第２コピーに書き込むステップと、
を更に含む、請求項１６に記載のプログラム。
【請求項１８】
前記論理ボリュームはデータ・ユニットを含み、
前記関係は、前記論理ボリューム内のデータ・ユニットについて前記論理ボリュームの前記第１コピー内の前記データ・ユニットが前記論理ボリュームの前記第２コピーにコピーされたか否かを示し、
前記オペレーションは、１つのデータ・ユニットが前記論理ボリュームの前記第１コピーから前記論理ボリュームの前記第２コピーにコピーされたことを、前記データを前記論理ボリュームの前記第２コピーに書き込むことに応答して、示すステップ、を更に含む、請求項１７に記載のプログラム。
【請求項１９】
前記論理ボリュームはデータ・ユニットを含み、前記関係は前記論理ボリューム内の各データ・ユニットについて前記論理ボリュームの前記第１コピー内の前記データ・ユニットが前記論理ボリュームの前記第２コピーにコピーされたか否かを示し、前記要求されたデータが前記論理ボリュームの前記第１コピーにおいて維持されているのか、それとも前記第２コピーにおいて維持されているのかを判定するステップは、
前記要求されたデータを含む前記データ・ユニットが前記論理ボリュームの前記第１コピーから前記論理ボリュームの前記第２コピーにコピーされたことを前記関係が示すか否かを判定するステップを含み、前記要求されたデータを含む前記データ・ユニットが前記第１コピーから前記第２コピーにコピーされていないことを前記関係が示していると判定することに応答して前記要求されたデータは前記第１コピーに存すると判定され、前記要求されたデータを含む前記データ・ユニットが前記第１コピーから前記第２コピーにコピーされたことを前記関係が示していると判定することに応答して前記要求されたデータは前記第２コピーに存すると判定される、請求項１６に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コピー関係を用いて論理ボリュームを第１記憶場所から第２記憶場所へ再配置（ｒｅｌｏｃａｔｉｎｇ）するための方法、システム、及びプログラムに関する。
【背景技術】
【０００２】
ネットワーク計算環境では、ホスト・システムは、入出力（“Ｉ／Ｏ”）リクエストの対象となるデータをその下に有する記憶システムへのアクセスを管理する記憶装置コントローラにＩ／Ｏリクエストを伝えることができる。記憶装置コントローラは、記憶空間を、ホスト・システムに使用されるべく与えられる論理的装置番号（Ｌｏｇｉｃａｌ  Ｕｎｉｔ  Ｎｕｍｂｅｒ  （ＬＵＮ））、パーティションなどの論理ボリュームに設定する。ホストは、その後、論理ボリューム内のアドレス指定可能な場所にＩ／Ｏリクエストを向ける。記憶装置コントローラはホストのために記憶装置内のアドレス指定可能な場所に対して該Ｉ／Ｏリクエストを実行する。企業記憶装置サーバとしても知られている企業レベル記憶装置コントローラのユーザは、企業サーバによって管理されるデータの高度の可用性及び連続的アクセスを期待する。
【０００３】
動作中に、システム管理者は、性能又はスペース上の理由から論理ボリュームを１つの記憶場所から他の記憶場所へ移すことを望むことがある。例えば、異なる記憶場所間でＩ／Ｏアクセスを平均させるために、システム管理者は論理ボリュームを頻繁にアクセスされる記憶域からＩ／Ｏトラフィックのより少ない記憶域へ移すことを望むことがある。更に、該管理者は、記憶装置故障の影響を最小にするために複数の論理ボリュームを異なる記憶装置に分散させることを望むことがある。
【０００４】
多くのシステムで、論理ボリュームへのホストＩ／Ｏアクセスは、該論理ボリュームが再配置されて新しい記憶場所で利用可能となるまで遅らされる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
当該技術分野には、論理ボリュームを新しい記憶場所へ再配置するための改良された技術に対するニーズがある。
【課題を解決するための手段】
【０００６】
コピー関係を用いて論理ボリュームを第１記憶場所から第２記憶場所に再配置するための方法、システム、及び製造物品が提供される。論理ボリュームを第１記憶場所から第２記憶場所に移すオペレーションが開始される。論理ボリューム内のデータを第１記憶場所から第２記憶場所にコピーするために第１及び第２記憶場所の間で１つの関係が確立される。論理ボリューム内のデータを第１記憶場所から第２記憶場所にコピーしている間に論理ボリューム内のデータに対する読み出しリクエストが受信される。該読み出しリクエストに応じて、その要求されたデータが第１記憶場所内の該論理ボリュームの第１コピーに存するか、それとも第２記憶場所内の該論理ボリュームの第２コピーに存するかが判定される。要求されたデータは、該論理ボリュームが第１記憶場所から第２記憶場所にコピーされている間に、判定された該論理ボリュームの第１又は第２のコピーから戻される。
【発明を実施するための最良の形態】
【０００７】
図１は、計算環境の一実施態様を示す。複数のホスト（図示されていない）は、記憶装置４ａ，４ｂ内のデータへのアクセスを管理する記憶装置コントローラ２に対して入出力（Ｉ／Ｏ）リクエストを提示することができる。記憶装置コントローラ２は、記憶装置４ａ，４ｂに関するＩ／Ｏオペレーションを管理するべく実行されるコードを有するＩ／Ｏマネージャ６を含む。各記憶装置４ａ，４ｂは、例えば論理的装置番号（ＬＵＮ）、論理装置、論理パーティション、論理ドライブ、バーチャル・ディスクなどの１つ以上の論理ボリュームで構成される。記憶装置４ａ内の論理ボリューム８を他の記憶装置４ｂ内の他の論理ボリューム１０へ再配置するために、Ｉ／Ｏマネージャ６は、再配置される第１（又はソース）論理ボリューム８と、論理ボリューム８がそれへ再配置される第２（すなわち、ターゲット）論理ボリューム１０との間に、コピー関係１２を確立する。論理ボリュームをコピーするコピー・オペレーションは、ＩＢＭ社のＦｌａｓｈＣｏｐｙ（登録商標）オペレーションのようなポイント・イン・タイム・コピー・オペレーション（ｐｏｉｎｔ−ｉｎ−ｔｉｍｅ  ｃｏｐｙ  ｏｐｅｒａｔｉｏｎ）を含むことができる。コピー関係１２はソース・データ及びターゲット・データの対を含み、１つのソース・データ及びターゲット・データの対についてコピー関係が確立された後に、ソース・データのポイント・イン・タイム・コピーを提供するためにソース・データがターゲット・データにコピーされる。コピー関係の下に置かれるデータは、１つの量の複数の連続するトラック又は単一のトラック（又は固定されたブロック）を含むことができる。ソース・データ及びターゲット・データは、記憶装置４ａ，４ｂ内に設定された１つ以上のボリューム内に配置され得る。代替実施態様において、論理ボリューム８を論理ボリューム１０にコピーするために異なるタイプのコピー・オペレーションが使用され得る。
【０００８】
記憶装置コントローラ２は、ＩＢＭ社のＥｎｔｅｒｐｒｉｓｅ  Ｓｔｏｒａｇｅ  Ｓｅｒｖｅｒ（ＥＳＳ）（Ｅｎｔｅｒｐｒｉｓｅ  Ｓｔｏｒａｇｅ  ＳｅｒｖｅｒはＩＢＭ社の登録商標である）のような、当該技術分野で知られている記憶装置コントローラ又はサーバを含み得る。或いは、記憶装置コントローラは、ハイエンドの企業記憶装置サーバとは対照的にローエンドの記憶装置サーバを含み得る。記憶装置４ａ，４ｂは、複数の記憶装置のアレイ、ジャスト・ア・バンチ・オブ・ディスクス（Ｊｕｓｔ  ａ  Ｂｕｎｃｈ  ｏｆ  Ｄｉｓｋｓ  （ＪＢＯＤ））、ダイレクト・アクセス・ストレージ・デバイス（Ｄｉｒｅｃｔ  Ａｃｃｅｓｓ  Ｓｔｏｒａｇｅ  Ｄｅｖｉｃｅ  （ＤＡＳＤ））、リダンダント・アレイ・オブ・インディペンデント・ディスクス（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙ  ｏｆ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｄｉｓｋｓ  （ＲＡＩＤ））アレイ、仮想化装置（ｖｉｒｔｕａｌｉｚａｔｉｏｎ  ｄｅｖｉｃｅ）、テープ記憶装置、フラッシュ・メモリーなどのような複数の別々の装置を含み得る。或いは、記憶装置４ａ，４ｂは単一の記憶装置の複数の部分を含み得る。
【０００９】
別の実施態様では、記憶装置４ａ，４ｂは、ネットワークを介して通信する異なる記憶装置コントローラに接続され得る。別の実施態様では、１つの記憶装置コントローラ及び記憶装置が主記憶装置コントローラ及び主記憶装置を含むことができ、そのデータがソース・データであって副記憶装置内のターゲット・データに格納されるべく副記憶装置コントローラにコピーされる。その様な主及び副（ｐｒｉｍａｒｙ  ａｎｄ  ｓｅｃｏｎｄａｒｙ）サイト実施態様では、主及び副サイトの間でのターゲット・データのソース・データへのコピー操作を主コントローラ上のＩ／Ｏマネージャ又は独立のデータ転送システムが管理することができる。
【００１０】
図２はコピー関係１２のような１つのコピー関係のためのコピー関係情報５０の実施態様を示しており、これは、コピー関係識別子（ｃｏｐｙ  ｒｅｌａｔｉｏｎ  ｉｄｅｎｔｉｆｉｅｒ）５２と、該関係の下に置かれる第１論理ボリューム８のソース・データ５４及び第２論理ボリューム１０のターゲット・データ５６と、論理ボリューム８を再配置論理ボリューム１０にコピーするために該コピー関係の下に置かれるトラック、固定ブロック、或る量の複数のトラック又はブロックなどのような各データ・ユニットについてのコピー・ビット５８とを含む。
【００１１】
図３は、論理ボリューム１０の新しいコピーへの論理ボリューム８の再配置を開始する（ｉｎｉｔｉａｔｅ  ｔｈｅ  ｒｅｌｏｃａｔｉｏｎ）ためにＩ／Ｏマネージャ６によって実行されるオペレーションの実施態様を示す。図３のオペレーションは、記憶装置４ｂが記憶装置４ａよりも論理ボリューム８のために適すると判断したシステム管理者によって開始され得る。論理ボリューム８を第１記憶場所４ａから第２記憶場所４ｂに再配置するオペレーションを開始すると（ブロック１００で）、Ｉ／Ｏマネージャ６は、論理ボリューム８の第１（初期）コピー内のデータを第２の８記憶場所内の論理ボリューム１０の第２（再配置された）コピーにコピーするコピー関係１２を第１記憶場所４ａと第２記憶場所４ｂとの間に確立する（ブロック１０２で）。Ｉ／Ｏマネージャ６は（ブロック１０４で）、関係１２において示されているデータ・ユニットを初期論理ボリューム８から論理ボリューム１０の再配置されたコピーにコピーするオペレーションを開始する。Ｉ／Ｏマネージャ６は、データ・ユニットを論理ボリューム８から論理ボリューム１０にコピーするためにコピー・ビット５８を処理することができる。Ｉ／Ｏマネージャは、データを論理ボリューム１０に順次にコピーすることができる。Ｉ／Ｏマネージャ６は、始めにコピー・ビット５８を読み取る（ブロック１０６で）。もし（ブロック１０８で）読み取られたコピー・ビット５８が該データ・ユニットがコピーされたことを示し、且つ（ブロック１１０で）考慮すべき更なるコピー・ビット５８があれば、Ｉ／Ｏマネージャ６は、コピーされるべき次のデータ・ユニットに対応する次のコピー・ビット５８を読み取り（ブロック１１２で）、そしてブロック１０８に戻って、読み取られたコピー・ビットに対応するデータ・ユニットをコピーするべきか否か判定する。もし（ブロック１０８で）読み取られたコピー・ビット５８が対応するデータ・ユニットがコピーされていないことを示すならば、Ｉ／Ｏマネージャ６は、コピー・ビット５８によって表されるデータ・ユニットを論理ボリューム８の第１コピーから第２コピー１０にコピーして（ブロック１１４で）、該データがコピーされたことを示すようにコピー・ビット５８をセットする（ブロック１１６で）。
【００１２】
ブロック１１６から、コントロールはブロック１１０及びその次に進んで、考慮するべき更なるコピー・ビット５８があるか否か判定する。もし（ブロック１１０で）考慮するべき更なるコピー・ビットが無ければ、すなわち、ソース論理ボリューム８の全てのデータ・ユニットがターゲットにコピーされたならば、Ｉ／Ｏマネージャ６は、再配置された論理ボリュームのためのコピー関係１２を除去して、再配置された論理ボリューム８のための第１記憶場所４ａ内のスペースを解放することができる。この記載されている実施態様では、Ｉ／Ｏマネージャ６は、関係１２を確立し、データ・ユニットをソース論理ボリューム８からターゲット論理ボリューム１０にコピーする動作を開始し、該関係を除去して該記憶空間を解放するオペレーションを実行した。Ｉ／Ｏマネージャ６は、１つ以上のコマンドに応答してこれらのオペレーションを実行し、コピー関係を確立して論理ボリュームを再配置することができる。一代替実施態様では、システム管理者はコマンド又はユーザ・インターフェースを通してこれらのオペレーションを開始することができる。
【００１３】
一代替実施態様では、論理ボリューム８の第１コピー内のデータ・ユニットのための空間は、該論理ボリューム全体がコピーされた後にブロック１１８に従って解放される代わりに、該データ・ユニットを論理ボリューム１０の第２コピーにコピーした後にブロック１１６の後に解放される。或る実施態様では、論理ボリュームは大きなサブエレメントから構成され得る。例えば、或る記憶システム・アーキテクチャでは、論理ボリュームを表す論理的記憶装置は、バーチャル化された記憶装置インクリメント（ｉｎｃｒｅｍｅｎｔｓ）又はエクステント（ｅｘｔｅｎｔｓ）から構成される。記憶装置をバーチャル化する記憶システムは、ＲＡＩＤアレイのような論理記憶エンティティーを固定サイズのサブエレメントに分割することができる。例えば、３００ギガバイト（ＧＢ）ＲＡＩＤアレイは３００個の１ＧＢサブエレメントに分割され得る。これらのサブエレメントは、論理ボリュームを作るために使用される。例えば、１０個の１ＧＢサブエレメントから構成される１つの１０ＧＢ論理ボリュームを作ることができ、１つの論理ボリュームは１０個の１ＧＢサブエレメントを関連付ける論理関係を含む。その様なバーチャル化実施態様では、１つの１ＧＢサブエレメントのための全てのデータ・ユニットを図３のオペレーションによってコピーした後、第１論理ボリューム８内のコピーされた１ＧＢサブエレメントのために記憶装置４ａにおいて使われた空間は、システムによる更なる使用のために解放され得る。この様に、論理ボリュームの各サブエレメントがコピーされると、第１論理ボリューム８内のそのサブエレメントのための記憶装置４ａ内の空間が解放される。
【００１４】
図４は、論理ボリューム内のデータに対する読み出しリクエストを処理するためにＩ／Ｏマネージャ６によって実行されるオペレーションの実施態様を示す。読み出しリクエストを受信したとき（ブロック１３０で）、もし（ブロック１３２で）その読み出しリクエストに従う関係が論理ボリューム８については存在しなければ、そのリクエストに対して戻すために該データが該論理ボリュームからアクセスされる（ブロック１３４で）。関係１２が無ければ、該論理ボリュームは、進行中の再配置オペレーションを受けない。Ｉ／Ｏマネージャ６は、そのリクエストが向けられた論理ボリューム８がコピー関係１２におけるソース・データ５４（図２）であるか否かを判定することによって関係の存在を判定することができる。特定の論理ボリュームがアクティブな再配置オペレーションを受けることを信号するために他のフラグ及びインジケータが使用され得る。もし（ブロック１３２で）論理ボリューム８についてアクティブなコピー関係１２があるならば、すなわち論理ボリューム８が論理ボリューム１０への進行中の再配置オペレーションを受けるのであれば、Ｉ／Ｏマネージャ６は（ブロック１３６で）要求されたデータを含むデータ・ユニットが論理ボリューム８の第１コピーから第２コピー１０にコピーされたことを関係１２が示すか否かを判定する。該判定は、読み出しリクエストの対象とされたデータ・ユニットについてのコピー・ビット５８（図２）が、要求されたデータ・ユニットが論理ボリューム１０の新しいコピーにコピーされたことを示すか否か調べることによって行われ得る。もし（ブロック１３６で）要求されたデータ・ユニットがコピーされていたならば、Ｉ／Ｏマネージャ６は（ブロック１３８で）該リクエストに対して戻すために要求されたデータを論理ボリューム１０の第２コピーからアクセスする。さもなければ、もし（ブロック１３６で）要求されたデータについてのコピー・ビット５８により示されるように要求されたデータ・ユニットがコピーされていなければ、要求されたデータは論理ボリューム８の初期コピーからアクセスされる。
【００１５】
データがターゲット・ボリュームに移されたことを示すようにコピー・ビット５８がセットされたならば、書き込み更新がターゲット・ボリュームに向けられてソース・ボリューム・データを陳腐化したかもしれないので、全ての読み出しはターゲット・ボリュームに向けられるべきである。
【００１６】
図５は、論理ボリューム内の１つ以上のデータ・ユニットに対する書き込みリクエストを処理するためにＩ／Ｏマネージャ６によって実行されるオペレーションの実施態様を示す。該書き込みリクエストを（ブロック１５０で）受信したとき、もし（ブロック１５２で）該書き込みリクエストを受ける論理ボリューム８について関係が存在しなければ、該書き込みは論理ボリューム１０内のターゲット・アドレスに対して適用される（ブロック１５４で）。書き込みは、例えばトラック、ブロックなどのデータ・ユニット・サイズ未満に対するものであり得る。前述のように、Ｉ／Ｏマネージャ６は該リクエストが向けられた論理ボリューム８がコピー関係１２におけるソース・データ５４（図２）であるか否か判定することによって関係の存在を判定することができる。もし（ブロック１５２で）論理ボリューム８についてアクティブなコピー関係１２が存在すれば、すなわち論理ボリューム８が論理ボリューム１０への進行中の再配置オペレーションを受けているならば、Ｉ／Ｏマネージャ６は（ブロック１５６で）該データを第２記憶場所４ｂに存する論理ボリューム１０の再配置されたコピーに書き込む。Ｉ／Ｏマネージャ６は、（ブロック１５８で）該データが書かれるデータ・ユニットが論理ボリュームの第１コピー８から第２コピー１０にコピーされたことを示す。Ｉ／Ｏマネージャ６は、論理ボリューム１０の新しいコピーにおいて更新されたデータ・ユニットについてコピー・ビット５８をセットすることによって、再配置オペレーションを受ける論理ボリューム８のデータ・ユニットがコピーされたこと或いは再配置された論理ボリューム１０内に存在することを示すことができる。
【００１７】
第２論理ボリューム１０が書き込みで更新されるときにデータ・ユニットがコピーされたことを示すようにコピー・ビット５８をセットすることによって、Ｉ／Ｏマネージャ６は、図３で開始されたコピー・オペレーションが論理ボリューム８に存する古いデータをコピーして書き込みオペレーションの一部として論理ボリューム１０に書き込まれているデータにオーバーライトすることを防止する。
【００１８】
図５の代替実施態様では、書き込みが向けられている論理ボリュームについてコピー関係があるならば、データが第１論理ボリューム８コピーから第２論理ボリューム１０コピーにコピーされたか否かを判定するためにチェックが行われ得る。もし肯定ならば、書き込みデータは第２論理ボリューム１０コピーに書き込まれる。更新するデータがコピーされていなければ、該データは第１論理ボリューム８コピーに書き込まれ得る。この実施態様では、書き込みデータは後に図３の一般的コピー・プロセスの一部として第１論理ボリューム８から第２論理ボリューム１０にコピーされる。
【００１９】
図５の更に別の実施態様では、書き込みが向けられている論理ボリュームについてコピー関係があるならば、コピー関係１２のコピー・ビット５８（図２）を調べることによってデータが第１論理ボリューム８コピーから第２論理ボリューム１０コピーにコピーされたか否か判定するためにチェックが行われ得る。もし更新するデータ・ユニットがコピーされているならば、データは論理ボリューム１０の第２コピーに書き込まれる。もし更新するデータ・ユニットがコピーされていなければ、データ・ユニットは第１論理ボリューム８コピーから第２論理ボリューム１０コピーにコピーされ、コピー・ビット５８はコピー関係１２データ構造において更新される。その後、新しい書き込みデータ・ユニットが第２論理ボリューム１０に書き込まれる。
【００２０】
記述された実施態様では、Ｉ／Ｏマネージャは、進行中の再配置オペレーションを受ける論理ボリューム内のアドレスに対する読み出しリクエストを論理ボリューム８の初期コピー又は新しい再配置されたコピー１０にマッピングする。該アドレスがマッピングされる論理ボリューム８，１０は、アドレス指定されたデータ・ユニットが再配置された論理ボリューム１０にコピーされたか否かを示すコピー関係１２情報により決定され得る。ターゲット論理ボリューム１０にコピーされたとコピー・ビット５８によって示されるデータ・ユニットについての全ての読み出しリクエストはターゲット論理ボリューム１０に向けられる。
【００２１】
記述された実施態様は、ポイント・イン・タイム・コピー・オペレーションを用いて論理ボリュームを１つの記憶場所から他の記憶場所に再配置する手法を提供する。記述された実施態様では、異なる記憶場所に存する新しい論理ボリュームにコピーされつつある論理ボリュームに対するＩ／Ｏリクエストは、受信され中断無しに処理され続け得る。記述された実施態様は、要求されたデータに関するコピー情報の状態に応じて、コピーされる論理ボリューム８の初期コピーに又はポイント・イン・タイム・コピー・オペレーションにより確立されている再配置された論理ボリューム１０に存するアドレスにＩ／Ｏリクエストをマッピングする。この様に、記述された実施態様は、再配置オペレーションを受ける論理ボリュームへのＩ／Ｏアクセスの中断を回避する。
【００２２】
付加的実施態様の詳細
記述されたオペレーションは、ソフトウェア、ファームウェア、ハードウェア、又はこれらの任意の組み合わせを作る標準的なプログラミング及びエンジニアリングのうちの少なくとも一方の技術を用いる方法、装置又は製造物品として実現され得る。記述されたオペレーションは“コンピュータにより読み出され得る媒体”で維持されるコードとして実現され得、この場合、プロセッサがコンピュータにより読み出され得る媒体から該コードを読み出して実行することができる。コンピュータにより読み出され得る媒体は、磁気記憶媒体（例えば、ハードディスク・ドライブ、フレキシブル・ディスク、テープなど）、光学式記憶装置（ＣＤ−ＲＯＭ、ＤＶＤ、光ディスクなど）、揮発性及び不揮発性の記憶装置（例えば、ＥＥＰＲＯＭ、ＲＯＭ、ＰＲＯＭ、ＲＡＭ、ＤＲＡＭ、ＳＲＡＭ、フラッシュ・メモリー、ファームウェア、プログラマブル論理など）などのような媒体を含み得る。記述されたオペレーションを実現するコードは、更にハードウェア論理（例えば、集積回路チップ、プログラマブル・ゲート・アレイ（ＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）など）で実現され得る。更に、記述されたオペレーションを実行するコードは“伝送信号”で実現され得、伝送信号は空間、或いは光ファイバ、銅線などの伝送媒体を通って伝播することができる。コード又は論理が符号化される伝送信号は、更に無線信号、衛星通信、電波、赤外線信号、ブルートゥース（商標）などを含むことができる。コード又は論理が符号化される伝送信号は送信局により送信されて受信局により受信されることができ、送信信号において符号化されたコード又は論理は受信側及び送信側の局又は装置で復号されハードウェアに又はコンピュータにより読み出され得る媒体に格納され得る。“製造物品”は、コードがそれにおいて実現され得るコンピュータにより読み出され得る媒体、ハードウェア論理、及び伝送信号のうちの少なくとも１つを含む。オペレーションの記述された実施態様を実現するコードがそれにおいて符号化される装置は、コンピュータにより読み出され得る媒体又はハードウェア論理を含むことができる。もちろん、本発明の範囲から逸脱せずにこの構成に多くの改変をなし得ること、及び、製造物品が当該技術分野で知られている適切な情報担持媒体を含み得ることを当業者は認めるであろう。
【００２３】
“実施態様”という用語は、特に別様に明示されていない限り、“本発明の１つ以上の（しかし、全部ではない）実施態様”を意味する。
【００２４】
“含む”、“有する”という用語及びその変化形は、特に別様に明示されていない限り、“含むが限定はされない”を意味する。
【００２５】
列挙されているアイテムの一覧は、特に別様に明示されていない限り、それらのアイテムのいずれか又は全部が相互に排他的であることを示唆するものではない。
【００２６】
特に別様に明示されていない限り、“１つの”及び“該”などの用語は、“１つ以上の”を意味する。
【００２７】
互いに通信する装置は、特に別様に明示されていない限り、必ずしも互いに連続的に通信しなくても良い。更に、互いに通信する装置は、直接に、又は１つ以上の媒介を通して間接的に、通信することができる。
【００２８】
互いに通信する数個のコンポーネントを有する実施態様についての記述は、その様なコンポーネントの全てが必要とされることを示唆しない。反対に、本発明の可能な多様な実施態様を例証するために多様な随意のコンポーネントが記載されている。
【００２９】
プロセス・ステップ、方法ステップ、アルゴリズムなどが順番に記載されていても、その様なプロセス・ステップ、方法及びアルゴリズムは代わりの順序で働くように構成され得る。換言すれば、記載され得るステップの順序又は順番は、必ずしもそれらのステップがその順序で実行されなければならないという必要条件を示すものではない。本書に記載されているプロセスのステップは、現実的な任意の順序で実行され得る。更に、或るステップは同時に実行されても良い。
【００３０】
本書において単一の装置又は物品が記載されるとき、単一の装置／物品の代わりに２つ以上の装置／物品（それらが協力してもしなくても）が使用されても良いことは明白であろう。同様に、２つ以上の装置又は物品が本書において記載されている場合（それらが協力してもしなくても）、その２つ以上の装置又は物品の代わりに単一の装置／物品が使用され得ること、或いは示された数の装置又はプログラムの代わりに異なる数の装置／物品が使用され得ることは明白であろう。装置の機能及び特徴のうちの少なくとも一方は、その様な機能／特徴を持っていると明確に記載されていない１つ以上の他の装置によって代わりに具体化され得る。従って、本発明の他の実施態様は該装置自体を含んでいなくても良い。
【００３１】
図３，４、及び５に示されているオペレーションは、一定の順序で起こるイベントを示している。代わりの実施態様では、或るオペレーションは異なる順序で実行され、改変され、或いは除去され得る。更に、ステップが上記論理に付け加えられ、なお上記実施態様に従うことができる。更に、本書に記載されているオペレーションは順番に行われ得、或いは或るオペレーションは並行して処理され得る。更に、オペレーションは単一の処理ユニットによって或いは分散されている複数の処理ユニットによって実行され得る。
【００３２】
本発明の種々の実施態様についての以上の記述は例証及び説明を目的として示されている。網羅的であることや、開示された正確な形に発明を限定することは意図されていない。上記教示を考慮すれば多くの改変及び変形が可能である。この詳細な説明ではなくて、ここに添付されている請求項によって発明の範囲が限定されるべきことが意図されている。上記明細書、例及びデータは本発明の構成の製造及び使用についての完全な説明を提供する。本発明の範囲から逸脱せずに本発明の多くの実施態様が作られ得るので、本発明は添付されている請求項に存する。
【図面の簡単な説明】
【００３３】
【図１】計算環境の一実施態様を示す。
【図２】コピー関係についての情報を示す。
【図３】論理装置を他の場所に再配置するオペレーションを開始するオペレーションの実施態様を示す。
【図４】再配置オペレーションを受ける論理装置に対する読み出しリクエストを処理するオペレーションの実施態様を示す。
【図５】再配置オペレーションを受ける論理装置に対する書き込みリクエストを処理するオペレーションの実施態様を示す。
【符号の説明】
【００３４】
５０  コピー関係情報
【図１】
2008009978.tif 000003
【図２】
2008009978.tif 000004
【図３】
2008009978.tif 000005
【図４】
2008009978.tif 000006
【図５】
2008009978.tif 000007