(57)【要約】【課題】データのミラー・コピーを提供するための方法、システム、およびプログラムを提供すること。【解決手段】１次側ストレージに対する更新が受信され、第１の転送モードで中間システムに転送される。更新は第２の転送モードで中間システムから２次側ストレージに転送され、２次側ストレージは１次側ストレージに対する更新のミラー・コピーを提供する。
2005539290.tif 000002
【特許請求の範囲】
【請求項１】
第１の転送モードで転送された、１次側ストレージに対する更新を、中間システムで受信するステップと、
前記更新を２次側ストレージに第２の転送モードで転送するステップであって、前記２次側ストレージが前記１次側ストレージに対する更新のミラー・コピーを提供するステップと
を有する、データのミラー・コピーを提供する方法。
【請求項２】
前記第１の転送モードが同期転送モードを有し、前記第２の転送モードが非同期転送モードを有する、請求項１に記載の方法。
【請求項３】
前記更新がアプリケーションから発信され、
前記中間システムによって、前記受信した更新の確認応答を１次側コントローラに返すステップであって、前記中間システムからの前記確認応答を受信したことに応答して、前記１次側コントローラが前記更新に対する確認応答を前記アプリケーションに返すステップ
をさらに有する、請求項１または２に記載の方法。
【請求項４】
前記中間システムが、前記２次側ストレージに前記更新を転送する前に、前記１次側コントローラに前記確認応答を転送する、請求項３に記載の方法。
【請求項５】
前記受信した更新をメモリにバッファするステップであって、前記受信した更新が前記メモリから前記２次側ストレージに転送されるステップ
をさらに有する、請求項１ないし４のいずれかに記載の方法。
【請求項６】
前記メモリにバッファされた、前記１次側ストレージ内で更新済みのトラック、を指示するステップと、
ある更新の前記２次側ストレージへの転送、に対する確認応答を受信ステップと、
前記１次側ストレージ内で更新済みの前記バッファされたトラックの指示であって、それに対する確認応答が受信されたもの、を除去するステップと
をさらに有する、請求項５に記載の方法。
【請求項７】
受信した更新を一慣性グループ内に蓄積するステップであって、完成した一慣性グループに対する更新が前記２次側ストレージに転送されるステップ
をさらに有する、請求項１ないし６のいずれかに記載の方法。
【請求項８】
少なくとも１つのネットワークを介して、１次側ストレージおよび２次側ストレージと通信して、データのミラー・コピーを提供するためのシステムであって、
第１の転送モードで転送された前記１次側ストレージに対する更新を受信する手段と、
第２の転送モードで前記更新を前記２次側ストレージに転送する手段であって、前記２次側ストレージが、前記１次側ストレージに対する更新のミラー・コピーを提供する手段と
を有するシステム。
【請求項９】
前記更新がアプリケーションから発信され、１次側コントローラが前記ネットワークを介して前記１次側ストレージに対する前記更新を転送し、
前記受信した更新の確認応答を１次側コントローラに返す手段であって、前記確認応答を受信したことに応答して、前記１次側コントローラが前記アプリケーションに前記更新に対する確認応答を返す手段
をさらに有する、請求項８に記載のシステム。
【請求項１０】
コンピュータ・システムにロードされそこで実行されたとき、前記コンピュータに請求項１ないし７のいずれかに記載の方法の諸ステップを遂行させるためのコンピュータ・プログラム要素、を含むコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データのミラー・コピーを提供するための方法、システム、およびプログラムに関する。
【背景技術】
【０００２】
データ・ストレージ・システムは、１次側サイトで障害が起きたときに使用するために、リモート・サイトでデータの２次側コピーを維持することができる。このような２重またはシャドウ・コピーは、典型的にはアプリケーション・システムが１次側ストレージ（Primary Storage）・デバイスに新しいデータを書き込むときに行われる。本特許出願の譲受人であるインターナショナル・ビジネス・マシーンズ・コーポレーション（ＩＢＭ（Ｒ））は、２次側サイトでデータのリモート・コピーを維持する２つのシステム、すなわち拡張遠隔コピー（ＸＲＣ：eXtended Remote Copy）、および対等遠隔コピー（ＰＰＲＣ：Peer-to-Peer RemoteCopy）を提供している。これらのシステムは、最後にあった安全なバックアップの後、システム障害までの間に行ったデータ更新のリカバリを行うための方法を提供する。このようにデータをシャドウするシステムは、リモート・サイトでのローカル・アクセスといった、リカバリ以外の目的の追加のリモート・コピーを提供することもできる。このＩＢＭのＸＲＣおよびＰＰＲＣシステムは、ＩＢＭパブリケーション「リモート・コピー：管理者ガイドおよびリファレンス（RemoteCopy: Administrator's Guide and Reference）」、ＩＢＭ資料番号ＳＣ３５−０１６９−０２（ＩＢＭ著作権１９９４、１９９６年）に記載されており、この刊行物を、その全体を参照することにより本明細書で援用する。
【０００３】
このようなバックアップ・システムでは、データは、ボリューム・ペアとして維持される。ボリューム・ペアは、１次側ストレージ・デバイス内のボリュームと、１次側ボリュームに維持されているデータと同一のコピーを含む２次側ストレージ（Secondary Storage）・デバイス内の対応するボリュームとから構成される。通常は、このようなペアのうち１次側ボリュームは、１次側ＤＡＳＤ（直接アクセス・ストレージ・デバイス、DirectAccess Storage Device）に維持され、ペアのうち２次側ボリュームは、１次側ＤＡＳＤ上のデータをシャドウする２次側ＤＡＳＤに維持される。１次側ストレージへのアクセスを制御するために、１次側ストレージ・コントローラを提供することができ、２次側ストレージへのアクセスを制御するために、２次側ストレージ・コントローラを提供することができる。
【０００４】
従来技術のシステムでは、一般的に１次側ストレージ・システムから２次側ストレージ・システムにデータを転送するための２つのモード、すなわち非同期モードおよび同期モードがある。非同期モードでは、ホストが１次側ストレージにデータを転送し、２次側サイト上でデータがコミット（受信確約）される前でも、書込み確認応答（Acknowledgment）が直ちにホストに返される。確認応答を受信した後、更新のコピーが、２次側ストレージに転送される。２次側ストレージにまだ転送されていない更新は、ジャーナル（Jounal：半自動的に記録される通信記や更新履歴）に維持される。非同期技術により、ホストは確認応答を即座に受信するため、ホストでの遅延は最小限に抑えられる。しかし、２次側ストレージ上のデータのミラー・コピーは、１次側ストレージにおける更新と同じ最新状態ではない。
【０００５】
同期モードでは、データが２次側ストレージにコミットされ、確認応答が２次側ストレージによって返されるまで、ホストは確認応答を受信しない。このモードでは、２次側サイトにデータが転送されるまでホストの書込みが完了せず、書込みは１次側ストレージに適用されるのと同じ順序で２次側ストレージに適用されたものとして確認されるため、ミラー・コピーは最新状態である。さらに、同期モードにおけるパフォーマンスは、１次側サイトと２次側サイトの間の距離に大幅に影響されるが、それは、距離が増大するにつれてパフォーマンスが低下するためであり、すなわち、ホスト・アプリケーションでの入出力速度は１次側サイトと２次側サイトの間の距離に依存する。このような距離の増大にしたがって、ホスト・アプリケーション入出力処理速度は大幅に低下するが、それは、２次側サイトが、２次側ストレージ・サイトでのデータ更新を確認応答するのに要する時間が長くなるからである。
【非特許文献１】ＩＢＭパブリケーション、「リモート・コピー：管理者ガイドおよびリファレンス（Remote Copy: Administrator's Guide and Reference）」、ＩＢＭ資料番号ＳＣ３５−０１６９−０２、１９９４、１９９６年
【発明の開示】
【発明が解決しようとする課題】
【０００６】
したがって、当技術分野では、１次側サイトと２次側サイトの間でデータをミラーリングするための改良型の技術が必要とされている。
【課題を解決するための手段】
【０００７】
第１の態様では、本発明は、第１の転送モードで転送された１次側ストレージに対する更新を中間システムで受信するステップと、その更新を２次側ストレージに第２の転送モードで転送するステップであって、前記２次側ストレージが１次側ストレージに対する更新のミラー・コピーを提供するステップとを含む、データのミラー・コピーを提供する方法を提供する。
【０００８】
第１の転送モードは同期転送モードを含み、第２の転送モードは非同期転送モードを含むことが好ましい。
【０００９】
好ましくは、更新はアプリケーションから発信され、この方法はさらに、受信した更新の確認応答を中間システムによって１次側コントローラに返すステップであって、１次側コントローラが、中間システムからの確認応答の受信に応答して、更新に対する確認応答をアプリケーションに返すステップ、を含む。
【００１０】
中間システムは、２次側ストレージに更新を転送する前に、１次側コントローラに確認応答を転送することが好ましい。
【００１１】
この方法は、受信した更新をメモリにバッファするステップであって、受信した更新がメモリから２次側ストレージに転送されるステップ、をさらに含むことができる。
【００１２】
この方法は、メモリにバッファされている、１次側ストレージ内で更新済みのトラックを指示するステップと、ある更新の２次側ストレージへの転送に対する確認応答を受信するステップと、１次側ストレージ内で更新済みのバッファされたトラックの指示であって、それに対する確認応答が受信されたものを除去するステップ、とをさらに含むことができる。
【００１３】
この方法はさらに、追加のストレージ・デバイスに更新を書き込むステップを含むことができる。
【００１４】
この方法は、受信した更新を一慣性グループ（Consistency Group）内に蓄積するステップであって、完成した一慣性グループに対する更新が２次側ストレージに転送されるステップ、をさらに含みことができる。
【００１５】
ある方法は、１次側ストレージに対する更新を受け取るステップと、第１の道程をたどって中間システムに更新を転送するステップと、第２の道程をたどって中間システムから２次側ストレージに更新を転送するステップであって、第１の道程は第２の道程よりも短く、２次側ストレージが１次側ストレージに対する更新のミラー・コピーを提供するステップ、とを含むことができる。
【００１６】
好ましくは、この更新は、中間システムに同期転送モードで転送され、中間システムから２次側ストレージには非同期転送モードで転送される。
【００１７】
１次側ストレージ、中間システム、および２次側ストレージは、異なる電源の領域にあることが好ましい。
【００１８】
１次側ストレージ、中間システム、および２次側ストレージは、異なる建造物に位置することが好ましい。
【００１９】
第２の態様では、本発明は、少なくとも１つのネットワークを介して１次側ストレージおよび２次側ストレージと通信してデータのミラー・コピーを提供するためのシステムであって、第１の転送モードで転送された１次側ストレージに対する更新を受信する手段と、第２の転送モードで２次側ストレージに更新を転送する手段であって、２次側ストレージが１次側ストレージに対する更新のミラー・コピーを提供する手段、とを含むシステムを提供する。
【００２０】
第１の転送モードが同期転送モードを含み、第２の転送モードが非同期転送モードを含むことが好ましい。
【００２１】
好ましくは、この更新はアプリケーションから発信され、１次側コントローラはネットワークを介して更新を１次側ストレージに転送し、このシステムは、受信した更新の確認応答を１次側コントローラに返す手段であって、前記１次側コントローラが確認応答の受信に応答して更新に対する確認応答をアプリケーションに返す手段、をさらに含む。
【００２２】
更新を２次側ストレージに転送する前に１次側コントローラに確認応答を転送することが好ましい。
【００２３】
このシステムは受信した更新をメモリにバッファする手段であって、受信した更新がそのメモリから２次側ストレージに転送される手段、をさらに含むことができる。
【００２４】
このシステムは、メモリにバッファされた、１次側ストレージ内で更新済みのトラック、を指示する手段と、ある更新の２次側ストレージへの転送に対する確認応答を受信する手段と、１次側ストレージ内で更新済みのバッファされたトラックの指示であって、それに対する確認応答が受信されたものを除去する手段とをさらに含むことができる。
【００２５】
このシステムは、追加のストレージ・デバイスと、追加のストレージ・デバイスに更新を書き込む手段とをさらに含むことができる。
【００２６】
このシステムは、受信した更新を一慣性グループ内に蓄積する手段であって、完成した一慣性グループに対する更新が２次側ストレージに転送される手段、をさらに含むことができる。
【００２７】
このシステムは、１次側ストレージと、２次側ストレージと、１次側ストレージに結合された１次側コントローラと、２次側ストレージに結合された２次側コントローラと、中間システム、１次側コントローラ、２次側コントローラ、および中間システムの間で通信を可能にする少なくとも１つのネットワークと、１次側コントローラに実装され、１次側ストレージに対する更新を中間システムに転送する手段であって、１次側コントローラと中間システムが第１の距離で隔てられている手段と、中間システムに実装され、更新を２次側ストレージに格納するために２次側コントローラに転送する手段であって、２次側コントローラと中間システムが第２の距離で隔てられ、第１の距離が第２の距離より短く、２次側ストレージが１次側ストレージに対する更新のミラー・コピーを提供する手段とを含むことができる。
【００２８】
１次側コントローラは同期転送モードで中間システムに更新を転送し、中間システムは非同期転送モードで２次側ストレージに更新を転送することが好ましい。
【００２９】
１次側コントローラ、中間システム、および２次側コントローラは、異なる電源の領域にあることが好ましい。
【００３０】
１次側コントローラ、中間システム、および２次側コントローラは、異なる建造物に位置することが好ましい。
【００３１】
本発明の第３の態様では、コンピュータ・システムにロードされそこで実行されたとき、第１の態様による方法の諸ステップを前記コンピュータに遂行させるためのコンピュータ・プログラム要素を含むコンピュータ・プログラムが提供される。
【００３２】
１次側ストレージに対するデータ更新のミラー・コピーを２次側ストレージにおいて提供するための製造品を提供することができ、前記製造品は動作を引き起こす能力があり、その動作は、第１の転送モードで転送された１次側ストレージに対する更新を受信するステップと、第２の転送モードで２次側ストレージに更新を転送するステップであって、２次側ストレージが１次側ストレージに対する更新のミラー・コピーを提供するステップ、とを含む。
【００３３】
第１の転送モードは同期転送モードを含み、第２の転送モードは非同期転送モードを含むことが好ましい。
【００３４】
好ましくは、更新は、アプリケーションから発信され、受け取られた１次側ストレージに対する更新は、１次側コントローラによって転送され、また、受信した更新の確認応答を１次側コントローラに返すステップであって、１次側コントローラが確認応答の受信に応答して更新に対する確認応答をアプリケーションに返すステップ、をさらに含む。
【００３５】
２次側ストレージに更新を転送する前に、１次側コントローラに確認応答を転送することが好ましい。
【００３６】
前記製造品の動作は、受信した更新をメモリにバッファするステップであって、その受信された更新がメモリから２次側ストレージに転送されるステップ、をさらに含むことができる。
【００３７】
前記製造品の動作は、メモリにバッファされた、１次側ストレージ内で更新済みのトラックを指示するステップと、ある更新の２次側ストレージへの転送に対する確認応答を受信するステップと、１次側ストレージ内で更新済みのバッファされたトラックの指示であって、それに対する確認応答が受信されたものを除去するステップとをさらに含むことができる。
【００３８】
前記製造品の動作は、追加のストレージ・デバイスに更新を書き込むステップをさらに含むことができる。
【００３９】
前記製造品の動作は、受信した更新を一慣性グループ内に蓄積するステップであって、完成した一慣性グループに対する更新が２次側ストレージに転送されるステップ、をさらに含むことができる。
【００４０】
データのミラー・コピーを提供するための好ましい方法、システム、およびプログラムが提供される。１次側ストレージに対する更新が受信され、第１の転送モードで中間システムに転送された更新は、中間システムから２次側ストレージに第２の転送モードで転送され、２次側ストレージは１次側ストレージに対する更新のミラー・コピーを提供する。
【００４１】
他の実装形態では、第１の転送モードは同期転送モードを含み、第２の転送モードは非同期転送モードを含む。
【００４２】
さらに更新は、アプリケーションから受信することができる。このような場合、転送された更新の確認応答を中間システムから受信し、中間システムからの確認応答の受信に応答して更新に対する確認応答がアプリケーションに返される。
【００４３】
さらにデータのミラー・コピーを提供するための好ましい方法、システム、およびプログラムが提供される。更新が１次側ストレージで受信され、第１の道程をたどって中間システムに転送される。その更新は、中間システムから２次側ストレージに第２の道程をたどって転送され、第１の道程は第２の道程よりも短く、２次側ストレージは１次側ストレージに対する更新のミラー・コピーを提供する。
【００４４】
記載の実装形態は、１次側サイトと２次側サイトの間で転送されるデータをバッファするための追加のサイトにある中間システムを使用することにより、１次側サイトにある１次側ストレージに対する更新の、２次側サイトにある２次側ストレージへの転送を、改良するための技術を提供する。
【００４５】
次に図面を参照する。図面を通して同様の参照番号が対応する部分を表している。
【発明を実施するための最良の形態】
【００４６】
以下の説明では、本明細書の一部分を形成し本発明のいくつかの実装形態を示す添付の図面を参照する。本発明の範囲から逸脱することなく、他の実装形態を利用することができ、構造上および操作上の変更を行えることを理解されたい。
【００４７】
図１は、本発明の諸態様が実装されるネットワーク・コンピューティング環境を示す。１つまたは複数のホスト２（１つのみを図示する）が、１次側コントローラ６を介して１次側ストレージ４に入出力（Ｉ／Ｏ）要求を伝える。１次側ストレージ４および１次側コントローラ６は１次側サイト８にある。ホスト２は、１次側サイト８に示されているが、他の場所に位置してもよい。いくつかの実装形態では、１次側コントローラ６は、更新をホスト２のアプリケーションから接続１２を介して中間システム１０に転送する。中間システム１０は、１次側サイト８から第１の距離１６にある中間サイト１４に位置している。ホスト更新は中間システム１０のメモリ１８にバッファされ、次いで接続２４を介して２次側サイト２２にある２次側コントローラ２０に転送される。２次側コントローラ２０は１次側ストレージ４に対するホスト更新を２次側ストレージ２６に格納し、２次側ストレージ２６は１次側ストレージ４にあるデータのミラー・コピーを提供する。中間サイト１４と２次側サイト２２は、第２の距離２８で隔てられている。いくつかの実装形態では、第２の距離２８は第１の距離１６よりも長い。
【００４８】
１次側ストレージ・マネージャ３０は１次側コントローラ６でデータ管理動作を実行し、中間ストレージ・マネージャ３２は中間システム１０でデータ管理動作を実行し、２次側ストレージ・マネージャ３４は２次側コントローラ２０でデータ管理動作を実行する。
【００４９】
１次側コントローラ６および２次側コントローラ２０は、ストレージ・コントローラ、サーバ、エンタープライズ・ストレージ・サーバなど、当技術分野で知られる任意のストレージ管理システムを含むことができる。中間システム１０は、当技術分野で知られる任意のコンピュータ・システムを含むことができる。いくつかの実装形態では、中間システム１０は、１次側コントローラ６から２次側コントローラ２０に送信するデータを適切にバッファするために充分なメモリ１８を有する、パーソナル・コンピュータやローエンドのサーバ・システムといった低コストのコンピュータを含む。１次側ストレージ４および２次側ストレージ２６は、当分野で知られる任意のストレージ・システムやサブシステム、たとえば、直接アクセス記憶装置（ＤＡＳＤ：Direct Access Storage Device）、単なるディスクの集まり（ＪＢＯＤ：Just a Bunch of Disks）、独立ディスクの冗長アレイ（ＲＡＩＤ：RedundantArray of Independent Disks）、仮想化装置、テープ・ストレージ、光ディスク・ストレージなど、または、当技術分野で知られる他の任意のストレージ・システムを含むことができる。接続１２および２４は、ローカル・エリア・ネットワーク（ＬＡＮ：LocalArea Network）、広域ネットワーク（ＷＡＮ：Wide Area Network）、ストレージ・エリア・ネットワーク（ＳＡＮ：Storage AreaNetwork）、インターネット、イントラネットなど当技術分野で知られた任意のネットワークまたは接続技術を使用して実装することができる。
【００５０】
いくつかの実装形態では、あるサイトにおける破壊や重大な障害が、他のサイトに記憶されたデータに影響を与えないように、１次側サイト８、中間サイト１４、および２次側サイト２２は、異なる電源の領域で実装される。さらに、１次側サイト８、中間サイト１４、および２次側サイト２２は、異なる区域、たとえば、異なる建造物、部屋、階、地理上の地域などに位置してもよい。
【００５１】
図２は、本発明の実装形態に従って、１次側ストレージ４に対する更新を２次側ストレージ２６に転送するために、１次側ストレージ・マネージャ３０、中間ストレージ・マネージャ３２、および２次側ストレージ・マネージャ３４で実施される論理を示す。（ブロック１００で）ホスト更新を受け取ると、（ブロック１０２で）１次側ストレージ・マネージャ３０は、１次側ストレージ４に更新を書き込み、（ブロック１０４で）中間システム１０に更新を同期方式で転送する。中間システム１０において、（ブロック１０６で）１次側コントローラ６から更新を受信し、それに応答して、（ブロック１０８で）中間ストレージ・マネージャ３２は、メモリ１８に更新をバッファし、（ブロック１１０で）１次側ストレージ４内で更新を受けたトラックを指示する。（ブロック１１２で）中間ストレージ・マネージャ３２は、更新に対する確認応答を１次側コントローラ６に返す。（ブロック１１４で）その確認応答を受信し、それに応答して、１次側ストレージ・マネージャ３０は、ホスト２のアプリケーションに更新に対する確認応答を返す。
【００５２】
中間システム１０が、当技術分野で知られた方式でバッファされた更新を一慣性グループ内に蓄積する。（ブロック１２０で）更新の一慣性グループ全体を蓄積すると、（ブロック１２２で）中間ストレージ・マネージャ３２は、完成した一慣性グループ内の更新を２次側コントローラ２０に非同期方式で転送する。１次側ＤＡＳＤおよび２次側ＤＡＳＤにおけるボリュームは、すべての書込みがその論理順序で転送されているとき、すなわち、すべての従属書込みがその書込みに従属する書込みより先に転送されているとき、一慣性がある。一慣性グループは、１次側ボリュームに対する更新の集合であり、それによって従属書込みの一慣性が確保される。一慣性グループは、ボリュームおよびストレージ・デバイスにわたってデータの一慣性を維持する。
【００５３】
（ブロック１２６で）中間システム１０から更新を受信し、それに応答して、（ブロック１２８で）２次側ストレージ・マネージャ３４が２次側ストレージ２６に更新を書き込み、（ブロック１３０で）更新に対する確認応答を中間システム１０に返す。（ブロック１３２で）確認応答を受信すると、（ブロック１３４で）中間ストレージ・マネージャ３２は、確認応答された更新済みのトラックの指示を除去する。このようにして、中間システム１０は、２次側ストレージ２６でコミットされたとまだ確認応答されていない、メモリ１８内のバッファされたすべての更新を把握している。
【００５４】
記載の実装形態では、１次側サイト８と中間サイト１４の間でデータを同期方式で転送することにより、ホスト２のアプリケーションはコミットされた更新が中間システム１０でミラー化され、１次側サイト８で障害や災害が起きたとき安全に維持されることが保証される。さらに、同期転送の距離１６を縮小することによって、往復同期の距離による遅延が最小限に抑えられるため、ホストの応答時間の性能低下が最小限に抑えられる。先に論じたように、同期のためにデータが移動しなければならない距離が長いことが性能を低下させる重大な一因となる。さらに、中間システム１０（または中間サイト１４）が、１次側サイト８と２次側サイト２２の間の距離の半分よりも近い位置にある実装形態では、確認応答のホスト２への応答時間が大幅に改善されることがある。さらに、接続２４を介してより長い距離２８にわたってより長いデータを伝送するために非同期転送が使用されるので、バンド幅も最適化される。したがって、バンド幅のより良いパフォーマンスを提供する方式、すなわち非同期方式が、より長い距離の通信に利用される。
【００５５】
したがって、記載の実装形態では、同期転送に伴う応答時間の性能低下を抑える方式で確認応答がホスト２に返されるとミラー・コピーが保証されるので、同期転送の安全性が提供される。このように、ミラー・コピーは中間システム１０において最新状態である。それと同時に、記載の実装形態では、より長い距離２８にわたる、より長い接続２４に、非同期転送モードを使用することにより、バンド幅の利用が改善される。さらに、記載の実装形態では、中間システム１０で特定の一慣性グループに対する更新を転送することによって、２次側ストレージ２６で一慣性が維持される。
【００５６】
追加の実装形態の詳細
本明細書に開示されるデータ管理技術は、ソフトウェア、ファームウェア、ハードウェア、またはそれらのあらゆる組合せ、を製造するための標準的なプログラミングおよび／または技術的手法を使用して、方法、装置、または製造品として実装することができる。本明細書で使用される用語「製造品（Article of Manufacture）」は、ハードウェア・ロジック、たとえば、集積回路チップ、プログラマブル・ゲート・アレイ（ＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）など、または、コンピュータ可読媒体、たとえば、磁気記憶媒体（たとえば、ハード・ディスク・ドライブ、フロッピー・ディスク、テープなど）、光記憶媒体（ＣＤ−ＲＯＭ、光ディスクなど）、揮発性および非揮発性メモリ・デバイス（たとえば、ＥＥＰＲＯＭ、ＲＯＭ、ＰＲＯＭ、ＲＡＭ、ＤＲＡＭ、ＳＲＡＭ、ファームウェア、プログラマブル・ロジックなど）、に実装されるコードまたは論理を指す。コンピュータ可読媒体中のコードは、プロセッサによってアクセスされ実行される。コードはさらに、伝送媒体を介して、またはファイル・サーバからネットワークを介してアクセス可能であることがある。そのような場合、コードを実装する製造品は、ネットワーク伝送回線、無線伝送媒体、空間を介して伝搬する信号、電波、赤外線信号などの伝送媒体を含むことができる。もちろん、本発明の範囲から逸脱することなく、このような構成に多数の修正を加えることができ、また、このような製造品が、当技術分野で知られるどのような情報搬送媒体も含み得ることが当業者には理解されよう。
【００５７】
さらに別の実装形態においては、中間システム１０は、データをテープまたは他の記憶システムに書き込むことによりデータの追加のコピーを作成することができる。さらに、中間システム１０は、テープなどの追加のストレージ・デバイスに記憶するために、ミラー・コピーを１次側コントローラ６に送り返すことができる。
【００５８】
さらに、コピーの関係が直ちに確立され、続いてデータの実際のコピーが行われる「フラッシュ・コピー」や「スナップショット」の場合のように、一慣性グループまたは論理的コピーを書き込むときはいつでも、２次側コントローラは、２次側ストレージ２６でデータの追加の物理的コピーを行うことができる。
【００５９】
さらに別の実装形態では、１次側サイト８で故障があるとき、更新が２次側ストレージ２６にコミットされるのを確実にするために、中間ストレージ・マネージャ３２が、メモリ１８内にある更新の２次側ストレージ・コントローラ３４への転送を同期方式で始めることができる。
【００６０】
いくつかの実装形態では、１次側コントローラ６が、同期モードで中間システム１０にデータを転送し、中間システムは、非同期モードで２次側ストレージ２６にデータを転送する。代替実装形態では、このような２つの転送動作（すなわち、１次側コントローラから中間システムへの転送、および中間システムから２次側ストレージへの転送）に、本明細書に記載したものとは異なるデータ転送モードを使用してもよく、同じ転送モードを使用してもよい。
【００６１】
さらに別の実装形態では、追加の中間システムを追加することができる。図２の論理は、特定の動作が特定の順序で行われる様子を示している。代替実装形態では、いくつかの動作を異なる順序で実行し、修正し、あるいは取り除いてもよい。さらに、記載の実装形態に従いながら、諸ステップを上記の論理に追加してもよい。さらに、本明細書に記載の動作を順次に行っても、いくつかの動作を並行に処理してもよい。さらに、諸動作を単一の処理ユニットによって実行しても、分散処理ユニットによって実行してもよい。
【００６２】
以上の実装形態の説明は、例示および説明の目的で提示したものである。以上の説明は網羅的なものではなく、本発明を開示した正確な形態に限定するものでもない。多数の修正形態および変形形態が、上記の教示に照らして可能である。
【図面の簡単な説明】
【００６３】
【図１】本発明の実装形態によるネットワーク・コンピューティング環境を示す図である。
【図２】本発明の実装形態による１次側ストレージに対する更新を２次側ストレージにコピーする論理を示す図である。
【図１】
2005539290.tif 000003
【図２】
2005539290.tif 000004
【手続補正書】
【提出日】平成16年5月11日(2004.5.11)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１の転送モードで転送された、１次側ストレージに対する更新を、中間システムで受信するステップと、
前記受信した更新をメモリにバッファするステップと、
前記メモリにバッファされた、前記１次側ストレージ内で更新済みのトラック、を指示するステップと、
前記更新を前記メモリから２次側ストレージに第２の転送モードで転送するステップであって、前記２次側ストレージが前記１次側ストレージに対する更新のミラー・コピーを提供するステップと、
ある更新の前記２次側ストレージへの前記転送、に対する確認応答を受信するステップと、
前記１次側ストレージ内で更新済みの前記バッファされたトラックの指示であって、それに対する確認応答が受信されたもの、を除去するステップと
を有する、データのミラー・コピーを提供する方法。
【請求項２】
前記第１の転送モードが同期転送モードを有し、前記第２の転送モードが非同期転送モードを有する、請求項１に記載の方法。
【請求項３】
前記更新がアプリケーションから発信され、
前記中間システムによって、前記受信した更新の確認応答を１次側コントローラに返すステップであって、前記中間システムから前記確認応答を受信したことに応答して、前記１次側コントローラが前記更新に対する確認応答を前記アプリケーションに返すステップ
をさらに有する、請求項１または２に記載の方法。
【請求項４】
前記中間システムが、前記２次側ストレージに前記更新を転送する前に、前記１次側コントローラに前記確認応答を転送する、請求項３に記載の方法。
【請求項５】
受信した更新を一慣性グループ内に蓄積するステップであって、完成した一慣性グループに対する更新が前記２次側ストレージに転送されるステップ
をさらに有する、請求項１ないし４のいずれかに記載の方法。
【請求項６】
少なくとも１つのネットワークを介して１次側ストレージおよび２次側ストレージと通信して、データのミラー・コピーを提供するためのシステムであって、
第１の転送モードで転送された前記１次側ストレージに対する更新を受信する手段と、
前記受信した更新をメモリにバッファする手段と、
前記メモリにバッファされた、前記１次側ストレージ内で更新済みのトラック、を指示する手段と、
第２の転送モードで前記更新を前記メモリから前記２次側ストレージに転送する手段であって、前記２次側ストレージが、前記１次側ストレージに対する更新のミラー・コピーを提供する手段と、
ある更新の前記２次側ストレージへの前記転送、に対する確認応答を受信する手段と、
前記１次側ストレージ内で更新済みの前記バッファされたトラックの指示であって、それに対する確認応答が受信されたもの、を除去する手段とを含む、システム。
【請求項７】
前記更新がアプリケーションから発信され、１次側コントローラが前記ネットワークを介して前記１次側ストレージに対する前記更新を転送し、
前記受信した更新の確認応答を１次側コントローラに返す手段であって、前記確認応答を受信したことに応答して、前記１次側コントローラが前記アプリケーションに前記更新に対する確認応答を返す手段
をさらに有する、請求項６に記載のシステム。
【請求項８】
コンピュータ・システムにロードされそこで実行されたとき、前記コンピュータに請求項１ないし５のいずれかに記載の方法の諸ステップを遂行させるためのコンピュータ・プログラム要素、を含むコンピュータ・プログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
同期モードでは、データが２次側ストレージにコミットされ、確認応答が２次側ストレージによって返されるまで、ホストは確認応答を受信しない。このモードでは、２次側サイトにデータが転送されるまでホストの書込みが完了せず、書込みは１次側ストレージに適用されるのと同じ順序で２次側ストレージに適用されたものとして確認されるため、ミラー・コピーは最新状態である。さらに、同期モードにおけるパフォーマンスは、１次側サイトと２次側サイトの間の距離に大幅に影響されるが、それは、距離が増大するにつれてパフォーマンスが低下するためであり、すなわち、ホスト・アプリケーションでの入出力速度は１次側サイトと２次側サイトの間の距離に依存する。このような距離の増大にしたがって、ホスト・アプリケーション入出力処理速度は大幅に低下するが、それは、２次側サイトが、２次側ストレージ・サイトでのデータ更新を確認応答するのに要する時間が長くなるからである。従来のストレージ・システムの例は、米国特許第５１５５８４５号、および米国特許第５７２００２９号に記載されている。
【特許文献１】米国特許第５１５５８４５号
【特許文献２】米国特許第５７２００２９号
【国際調査報告】
2005539290.tif 000005
2005539290.tif 000006