(57)【要約】【課題】順序付けされカスケード式の再同期を用いた障害回復システム(100)を提供すること。【解決手段】障害回復システム(100)は、複数のデータセンター(102,104,106)及び分散制御システム(110)を含む。個々のデータセンター(102,104,106)は、通信インタフェース(102A,104A,106A)、データストレージ(102B,104B,106B)、及びコントローラ(102C,104C,106C)を含む。分散制御システム(110)は、複数のデータセンターのコントローラに分散して該コントローラで実行可能であり、複数のデータセンターの前記通信インタフェースを介して動作を調整して、複数のデータセンターのデータセンター対間の複数の通信リンク(L1,L2)を再同期させることができる。通信リンクは少なくとも１つの同期リンク及び少なくとも１つの非同期リンクを含む。【選択図】図１
2004343776.tif 000002
【特許請求の範囲】
【請求項１】
順序付けされたカスケード式の再同期を用いる障害回復システム(100)であって、
通信インタフェース(102A,104A,106A)、データストレージ(102B,104B,106B)、及びコントローラ(102C,104C,106C)を各々が有する複数のデータセンター(102,104,106)と、
該複数のデータセンターの前記コントローラに分散して該コントローラで実行可能な分散制御システム(110)であって、前記複数のデータセンターの前記通信インタフェースを介して動作を調整して、前記複数のデータセンターのデータセンター対間の複数の通信リンク(L1,L2)を再同期させることができ、前記通信リンクが少なくとも１つの同期リンク及び少なくとも１つの非同期リンクを含む、分散制御システム(110)と
を含む、障害回復システム(100)。
【請求項２】
カスケード式障害回復構成で非同期障害回復リンク(L2)に接続された同期障害回復リンク(L1)と、
前記分散制御システム上で実行することが可能な制御プロセス(200)であって、前記同期障害回復リンクの中断に応じて、前記非同期障害回復リンクを中断し(204)、その後に前記同期障害回復リンクを再同期させる(206)、制御プロセス(200)と
を更に含む、請求項１に記載の障害回復システム(100)。
【請求項３】
前記複数のデータセンターが、
第１のデータセンター(102)と、
同期通信リンク(L1)によって前記第１のデータセンターに接続された第２のデータセンター(104)と、
非同期通信リンク(L2)によって前記第２のデータセンターに接続された第３のデータセンター(106)であって、第１のデータストレージ(106B)、第２のデータストレージ(108B)、及び該第２のデータストレージを制御して前記第１のデータストレージに格納されている情報のコピーを格納することができるコピーコントローラ(106C)を有する、第３のデータセンター(106)と
を更に含む、請求項１に記載の障害回復システム(100)。
【請求項４】
カスケード式障害回復構成で前記第２のデータセンターと前記第３のデータセンターとの間の非同期障害回復リンク(L2)に接続された、前記第１のデータセンターと前記第２のデータセンターとの間の同期障害回復リンク(L1)と、
前記分散制御システム上で実行することが可能な制御プロセス(200)であって、前記同期障害回復リンクの中断(202)に応じて、データが前記第１及び第２のデータセンターで失われた場合に、前記第３のデータセンター中のデータが障害回復のために破損し及び／又は使用不能にならないように、前記非同期障害回復リンクを中断(204)し、その後、前記同期障害回復リンクを再同期(206)する、制御プロセス(200)と
を更に含む、請求項３に記載の障害回復システム(100)。
【請求項５】
前記分散制御システムにおいて実行することが可能な制御プロセス(300)であって、前記同期通信リンクの中断(302)に応じて、前記第３のデータセンターの前記第２のデータストレージの情報を前記第１のデータストレージの情報から切り離し、その後、前記同期通信リンク及び前記非同期通信リンクの再同期(306)を行う、制御プロセス(300)を更に含む、請求項３に記載の障害回復システム(100)。
【請求項６】
障害条件に応じて前記分散制御システムにおいて実行することが可能な制御プロセス(400)を更に含み、該制御プロセスが、
前記非同期リンクを中断させる第１のサブプロセス(404)と、
該第１のサブプロセス後に実行され、前記第３のデータセンターの前記第２のデータストレージの情報を前記第１のデータストレージの情報から切り離す、第２のサブプロセス(406)と、
該第２のサブプロセス後に実行され、前記第１のデータセンターと前記第２のデータセンターとの間の前記同期通信リンクを再同期させる、第３のサブプロセス(408)と、
該第３のサブプロセス後に実行され、前記第２のデータセンターと前記第３のデータセンターとの間の前記非同期リンクを再同期させる、第４のサブプロセス(410)と、
該第４のサブプロセス後に実行され、前記第３のデータセンターの前記第１のデータストレージの情報と第２のデータストレージの情報とを再接続する、第５のサブプロセス(412)と
を含む、請求項３に記載の障害回復システム(100)。
【請求項７】
障害条件に応じて前記分散制御システムにおいて実行することが可能な制御プロセス(400)を更に含み、該制御プロセスが、
前記第１のサブプロセス前に実行され、前記同期リンクを中断させる、第６のサブプロセス(402)を含む、請求項６に記載の障害回復システム(100)。
【請求項８】
順序付けされたカスケード式の再同期を用いる障害回復システム(500)であって、
特定の構成を有する少なくとも３つのデータセンターであって、
第１のデータセンター(502)と、
通信リンク(L1)によって前記第１のデータセンターにリンクされた第２のデータセンター(504)と、
通信リンク(L2,L3)によって前記第１のデータセンター及び前記第２のデータセンターにリンクされた第３のデータセンター(506)と
を含み、情報が、前記第１のデータセンターから前記第２及び第３のデータセンターにマルチキャストされる、少なくとも３つのデータセンターと、
該少なくとも３つのデータセンターに分散して該データセンターで実行することが可能な分散制御システム(510)であって、前記第１のデータセンターと前記第２のデータセンターとの間の前記リンクの障害に応じて、前記第１のデータセンターから前記第３のデータセンターを介して前記第２のデータセンターに情報の差分コピーを表すビットマップを転送するように構成された、分散制御システム(510)と
を含む、障害回復システム(500)。
【請求項９】
順序付けされたカスケード式の再同期を用いる障害回復システム(600)であって、
特定の構成を有する少なくとも４つのディスクアレイであって、
リモートミラー１次ボリュームストレージ(612)を含む第１のディスクアレイ(610)と、
第１の通信リンク(L1)によって前記リモートミラー１次ボリュームストレージにリンクされたリモートミラー２次ボリューム及びローカルミラー１次ボリュームストレージ(622)を含む、第２のディスクアレイ(620)であって、第２の通信リンク(L2)によってリモートミラー２次ボリューム及びローカルミラー１次ボリュームストレージに内部ミラーリンクされたローカルミラー２次ボリューム及びリモートミラー１次ボリュームストレージ(624)もまた含む、第２のディスクアレイ(620)と、
第３の通信リンク(L3)によって前記第２のディスクアレイの前記ローカルミラー２次ボリューム及びリモートミラー１次ボリュームストレージにリンクされたリモートミラー２次ボリュームストレージ(632)を含む、第３のディスクアレイ(630)と、
第４の通信リンク(L4)によって前記リモートミラー２次ボリュームストレージにリンクされた第４のディスクアレイ(640)と
を含む、少なくとも４つのディスクアレイと、
該少なくとも４つのディスクアレイに分散して該ディスクアレイで実行することが可能な分散制御システム(602)であって、前記ミラーリングコピーの一貫性を促進させるようデータミラーリングのタイミングを調整する、分散制御システム(602)と
を含む、障害回復システム(600)。
【請求項１０】
前記分散制御システムが、
前記第１の通信リンクを中断させることが可能なプロセス(802)と、
前記第１の通信リンクが中断した後に前記第２の通信リンクを中断させることが可能なプロセス(804)と、
前記第２の通信リンクが中断した後に前記第３の通信リンクを中断させることが可能なプロセス(806)と、
前記第３の通信リンクが中断した後に前記第４の通信リンクを中断させることが可能なプロセス(808)と、
前記第４の通信リンクが中断した後に前記第１の通信リンクを再同期させることが可能なプロセス(810)と、
前記第１の通信リンクが再同期された後に前記第２の通信リンクを再同期させることが可能なプロセス(812)と、
前記第２の通信リンクが再同期された後に前記第３の通信リンクを再同期させることが可能なプロセス(814)と、
前記第３の通信リンクが再同期された後に前記第４の通信リンクを再同期させることが可能なプロセス(816)と
を更に含む、請求項９に記載の障害回復システム(600)。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、障害発生時にデータを回復させる障害回復システムに関するものである。
【従来技術】
【０００２】
データの複数のコピーの維持は、データが利用不能となり、破損し、又は失われた場合のデータ処理動作におけるセキュリティ機能の一部である。データ処理システムの機関ユーザ（Institutional users）は一般に、大量の重要性の高い情報を維持し、大量の時間及びお金をかけて、障害又は災害によりデータが利用できなくなることからデータを保護している。冗長なデータコピーを維持する技術の一つにミラーリングと呼ばれるものがあり、この場合、データ処理システムのユーザは、貴重な情報のコピーを現場のリムーバブル記憶媒体上に、又は近場又は遠隔地に配置された第２のミラーリングストレージサイトに維持する。離れているが、大都市圏の距離内、例えば最長で約200km以内でのリモートミラーリングにより、火災、停電、又は盗難を含む局地的な障害から保護する。何百kmもの地理的距離にわたるリモートミラーリングは、地震、竜巻、台風、洪水などの災害から保護する際に有用である。多くのデータ処理システムは、複数レベルの冗長性を採用して、複数の地理的距離に配置されたデータを保護する。
【０００３】
データ処理システムは、同期ミラーリング又は非同期ミラーリングを使用してリモートコピーを利用する。同期リモートコピーは、応答時間が比較的重要ではなく、コピーを行う記憶装置間の距離が短く、データを失うはずがない場合に利点を有するものである。該同期ミラーリングは一般に、高速回復に最適な選択肢として選ばれる。これとは対照的に、非同期ミラーリングは、１次サイトに対して課されることになる性能上の影響が最小限であり、処理速度が重要であり、及びミラーリングデータが長距離にわたり移動する場合に使用される。非同期ミラーリングは、地理的規模が非常に大きな操作に使用されることが多い。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
一定範囲の距離にわたり分散して複数のミラーリングコピーを格納するデータ処理システムは、あるサイトでは一般に比較的近い大都市圏の距離内の場所で同期リンクを使用し、別のサイトでは非同期リンクを使用することが可能である。同期ミラーリング及び非同期ミラーリングを組み合わせたシステムの１つの危険性は、中断されたリンクが正しい順序で回復されない場合にデータが破損し又は使用不能になる可能性があることである。
【課題を解決するための手段】
【０００５】
幾つかの実施形態によれば、順序付けされたカスケード式の再同期を用いる障害回復システムは、複数のデータセンターと分散制御システムとを備える。個々のデータセンターは、通信インタフェースと、データストレージと、コントローラとを備える。分散制御システムは、複数のデータセンターのコントローラ内に分散されて該コントローラ内で実行可能なものであり、複数のデータセンターの通信インタフェースを介して動作調整を行って、複数のデータセンターのデータセンター対間の複数の通信リンクの再同期を行うことが可能である。通信リンクは、少なくとも１つの同期リンクと少なくとも１つの非同期リンクとを含む。
【０００６】
他の実施形態によれば、順序付けされたカスケード式の再同期を用いる障害回復システムは、第１のデータセンター、通信リンクによって第１のデータセンターにリンクされた第２のデータセンター、及び第３のデータセンターを含む構成において、少なくとも３つのデータセンターを備える。第３のデータセンターは、通信リンクによって第１のデータセンター及び第２のデータ選択にリンクされる。情報は、少なくとも、第１のデータセンターから第２及び第３のデータセンターにマルチキャストされる。障害回復システムはまた、少なくとも３つのデータセンターに分散されてそれらデータセンターで実行することが可能な分散制御システムを含む。該分散制御システムは、第１と第２のデータセンター間のリンクの障害に応じて、情報の差分コピーを表すビットマップを第１のデータセンターから第３のデータセンターを介して第２のデータセンターに転送するよう構成される。
【０００７】
更なる実施形態によれば、第１のデータセンター、該第１のデータセンターに同期リンクされた第２のデータセンター、及び該第２のデータセンターに非動的リンクされた第３のデータセンターを含むデイジーチェーン式マルチサイト障害回復構成においてリンクの障害に応答する方法が実施され、前記第３のデータセンターは内部コピーリンケージを有する。該方法は、制御動作を第１、第２、及び第３のデータセンターに分散させ、第１、第２、及び第３のデータセンター間で制御を調整する。この方法は更に、第２及び第３のデータセンター間の非同期リンケージを中断し、該非同期リンケージが中断されている際に第３のデータセンターの内部コピーリンケージを切断し、内部コピーリンケージの切断に続いて第１及び第２のデータセンター間の同期リンケージを再同期させ、該同期リンケージの再同期に続いて、第２及び第３のデータセンター間の非同期リンケージを再同期させることを含む。この方法は更に、同期リンケージ及び非同期リンケージが再同期された際に内部コピーリンケージを再接続することを含む。
【０００８】
更なる実施形態によれば、順序付けされたカスケード式再同期方法は、データ及び制御情報を少なくとも３つのデータセンター間で通信し、第１のデータセンターから第２及び第３のデータセンターにマルチキャストし、及び第１、第２、及び第３のデータセンター間に制御動作を分散させることを含む。この方法は更に、第１及び第２のデータセンター間のリンクの障害に応じて、第１のデータセンターから第３のデータセンターを介して第２のデータセンターへコピーされた差分ビットマップに基づき、情報の差分コピーを第２のデータセンターから第３のデータセンターに転送することを含む。該ビットマップは、第１及び第３のデータセンター間の非同期通信に以前使用された順序通りのサイドファイル（side file）中の未送信の論理装置（LUN：Logical Unit）トラックに関連する情報を含む。
【０００９】
更に別の実施形態によれば、順序付けされたカスケード式の再同期を用いる障害回復システムは、その構成に少なくとも４つのディスクアレイを含む。第１のディスクアレイは、リモートミラー１次ボリュームストレージを含む。第２のディスクアレイは、第１の通信リンクによってリモートミラー１次ボリュームストレージにリンクされたリモートミラー２次ボリューム及びローカルミラー１次ボリュームストレージを含む。第２のディスクアレイはまた、第２の通信リンクによってリモートミラー２次ボリューム及びローカルミラー１次ボリュームストレージに内部的にミラーリンクされたローカルミラー２次ボリューム及びリモートミラー１次ボリュームストレージを含む。第３のディスクアレイは、第３の通信リンクによって第２のディスクアレイのローカルミラー２次ボリューム及びリモートミラー１次ボリュームストレージにリンクされたリモートミラー２次ボリュームストレージを含む。第４のディスクアレイは、第４の通信リンクによりリモートミラー２次ボリュームストレージにリンクされる。この障害回復システムは更に、少なくとも４つのディスクアレイに分散されてそれらディスクアレイにおいて実行することが可能な分散制御システムを含む。該分散制御システムは、メタコマンドを使用して通信リンクを制御する。
【００１０】
構造及び動作方法の両方に関連する本発明の実施形態は、以下の説明及び図面を参照することによって最良に理解することができる。
【発明を実施するための最良の形態】
【００１１】
図１を参照して、概略的なブロック図に、順序付けされたカスケード式の再同期動作を実施することのできる障害回復システム100の一実施形態を示す。障害回復システム100は、複数のデータセンター102,104,106と、分散制御システム110とを備える。個々のデータセンター102,104,106は、通信インタフェース102A,104A,106Aと、データストレージ102B,104B,106Bと、コントローラ102C,104C,106Cとを備える。分散制御システム110は、複数のデータセンター102,104,106のコントローラ102C,104C,106Cに分散し、そこで実行することが可能であり、通信インタフェース102A,104A,106Aを介して動作調整を行って、データセンター102,104,106の対の間の通信リンク、例えばリンクL1,L2を再同期させる。例示的な実施形態では、第１のデータセンター102と第２のデータセンター104との間を繋ぐ第１の通信リンクL1は同期リンクであり、第２のデータセンター104と第３のデータセンター106との間を繋ぐ第２の通信リンクL2は非同期リンクである。
【００１２】
任意の実施形態が可能であるが、障害回復システム100は一般に、複数のデータセンターが地理的に離れたデータセンターを含む構成で使用される。例示的な実施形態では、同期リンクL1は、数十〜数百kmという大都市圏の距離にわたって延びる。大都市圏の距離は、約10km〜100又は200kmが一般的である。非同期リンクL2は、数百kmを越える長距離の実施形態で示されている。
【００１３】
例示的な実施形態では、第３のデータセンター106は、データストレージ108B及び通信インタフェース108Aと共に冗長セーフティネット内部コピー108も備え、また一般に、コントローラ108Cも備える。第３のデータセンター内部コピー108は、ミラーリングストレージデバイスとすることができる。例示的な実施形態では、第３のデータセンター106は、コピーコントローラプロセスを含み、該プロセスは、典型的にはコントローラ106C及び／又は108C上で実行可能なものであり、セーフティネット冗長内部コピーとしてデータストレージ106B中のデータをデータストレージ108Bにコピーすることを制御する。実施形態によっては、コピーコントローラは、第２のデータストレージ106Bからデータストレージ108Bにデータの精確な複製をコピーするデータミラーとして機能するものとなる。
【００１４】
他の実施形態及び構成では、セーフティネットコピーは、第３のデータセンター106から離隔することが可能な第４のデータセンターにおいて実施することが可能である。
【００１５】
分散制御システム110は、各種コントローラ102C,104C,106C,108Cに分散させ、及びそこで実行可能なものとすることが可能であり、又は、分散制御システム110の一部又は全部をデータセンター102,104,106の外部の制御要素内に分散させ、及びそこで実行可能なものとすることが可能である。特定のコントローラが分散制御システム110のいずれの部分も実行しない可能性があるが、データセンター全体にわたり実行可能プロセスを分散させることにより、効率的な動作を助長させることができる。
【００１６】
データセンターはいずれも、例示的なデータセンターが実際にデータセンターグループを包含することが可能となるように高いスケーラビリティを有することができる。冗長データストレージ構造は、容易にかつ一般的にデータセンター内に含めることができる。
【００１７】
分散制御システム110は、複数のデータセンター102,104,106間、及びデータセンター108内で、調整のとられた動作を実行して、所定の順序で動作を管理し、これによりデータが使用不能になること又は破損することを回避する。分散制御システム110の分散制御プロセスは、同期L1及び非同期L2パスを含む様々な通信パスにわたって、またローカルエリアネットワーク（LAN）、メトロポリタンエリアネットワーク（MAN）、又は広域ネットワーク（WAN）通信等のネットワーク通信を介して分散することが可能である。実施形態によっては、分散制御システム110の実行可能コードは、ディスクアレイファームウェアなどのファームウェアにプログラミングすることが可能である。また実施形態によっては、分散制御システム110の動作は、ワイヤレス伝播等を含むネットワークを介して電子信号によって提供されるメモリのストレージ、ディスク、テープから実施することが可能である。
【００１８】
分散制御システム110は、様々な技法及び技術を使用してプログラムすることができる。例えば、分散制御システム110は（例えばAPI(Application Programming Interface)を使用して）ホストプロセッサのオペレーティングシステムで実施することができる。他の例では、分散制御システム110は、例えば中心位置(centralized location)で動作しているメタコマンドを使用して、又はコマンドラインインタフェース（CLI）を使用して実施することができる。用途によっては、CLIによる実施形態は、RAIDマネージャ内をベースとすることができる。
【００１９】
例示的な実施形態では、同期障害回復リンクL1は、カスケード式障害回復構成で非同期障害回復リンクL2に接続される。分散制御システム110で実行可能な制御プロセスは、同期障害回復リンクL1の中断を検出することができ、これに応じて、同期障害回復リンクL1の再同期に先立って非同期障害回復リンクL2を中断させる。通信リンクを中断させる動作は、特定のイベントが承認されるまで書き込みが行われていたリモートミラーリングボリュームに対する読み出し及び書き込みを含む全てのアクセスを延期し又はキャンセルすることを含む。分散制御システム110は、最初の２つのデータセンター102,104が失われた場合に障害を回復する目的で、上流の同期リンクL1が順不同コピー状態(out-of-order copy state)又は再同期状態になる前に非同期リンクL2が中断状態になり、これにより、非同期リンクL2の下流端におけるデータが破損したり使用不能になったりすることがなくなるように、応答を調整する。
【００２０】
手動による同期リンクの再同期を用いる従来のシステムは、誤りが生じやすく、危険性の高いものである。その理由は、最初の２つのデータセンターを破壊する一連の又は一対の方向エラー（direction error）又は災害（disaster）が、非同期リンクが順不同状態にある際に、唯一の残存するデータセンターにおけるデータを使用不能状態のままとしまたは破損する可能性があるからである。その結果は大惨事ともなり得るものであり、例えば、Fortune誌のトップ100企業の数百万ドルもの障害回復計画も無駄になりうる。
【００２１】
様々な実施形態では、分散制御システム110は幾つかの動作を実行することができる。図１を参照しつつ図２を参照する。分散制御システム110の一環として実行可能な制御プロセス200は、同期障害回復リンクの中断を検出する（202）。制御プロセスは、リンクの中断に応じて、データが第１及び第２のデータセンターで失われた場合、障害回復のために第３のデータセンターにあるデータが破損かつ／又は使用不能にならないように、非同期障害回復リンク204を中断し（204）、次いで同期障害回復リンクを再同期させる（206）。
【００２２】
図１を参照しつつ図３を参照する。分散制御システム110の一部として実行可能な別の制御プロセス300の一実施形態をフローチャートに示す。制御プロセス300は、同期通信リンク302の中断を検出し（302）、これに応じて、コピーデータストレージ108Bを第３のデータセンターのデータストレージ106Bから分断し（304）、次いで同期通信リンクを再同期させ（306）、そして非同期通信リンクを再同期させる（308）。コピーデータストレージ108Bは、第３のデータセンター106内のデータの冗長セーフティネットコピーを収容している。
【００２３】
図１を参照しつつ図４を参照する。デイジーチェーン式マルチサイト障害回復プロセス400の一例を概略的なフローチャートに示す。デイジーチェーン構成では、Resync-CascadeL1()コマンドなどの１つのコマンドをホストコンピュータなどの装置から発行することができる。Resync-CascadeL1()コマンドは、分散制御システム110に所定順序で一連の動作を実行させる。幾つかの実施形態では、非同期リンクの中断は、通信リンクを中断又は分断しうるシステムを分散制御システム110が原子的な動作（atomic action）で制御する原子な操作（atomic operation）で行われる。自動アクションでは、２次ボリュームに対する書き込みデータの反映が特定の時点で行われる。原子的な動作が終わると、２次ボリュームは１次ボリュームの有効なイメージになる。ミラーリングの分割又は分断は一般に、特定の分断コマンドから、又は幾つかのシステムにおけるリンク障害によって発生する。
【００２４】
ミラーリングの分割後、分散制御システム110はサイト間の非同期リンクL2を中断させる（404）。非同期リンクL2が中断した後、分散制御システム110は、第３のデータセンターのセーフティネット内部コピー108Bを第３のデータセンターの１次ストレージ106Bから切り離す、すなわち切断する（406）。分散制御システム110は、順不同コピー状態を介して、同期リンクL1を再同期させ（408）、次いで非同期リンクL2を再同期させる（410）。分散制御システム110は、第３のデータセンターのセーフティネット内部コピー108Bを第３のデータセンター106に再接続することにより、通常動作に戻る。
【００２５】
集合内部コピーLUNの原子的な分割が利用できない実施形態では、分散制御システム110は、サイト間の同期リンクL1を中断させる（402）ことによって応答を開始する。
【００２６】
分散制御システム110は、同期リンクL1に対する再同期プロセスを自動化してユーザエラーを回避又はなくすと共に、上流の非同期リンクL2が順不同再同期状態になる前に、第３のデータセンター106にあるセーフティネット内部ボリュームコピー108Bの被調整切断又は切り離しを可能にする。
【００２７】
図５を参照する。その概略的なブロック図は、順序付きマルチキャスト再同期を実施し、及び３つ以上のデータセンターを含む、障害回復システム500を示している。この構成は、第１のデータセンター502、同期通信リンクL1によって第１のデータセンターにリンクされた第２のデータセンター504、及び第３のデータセンター506を含む。第３のデータセンター506は、非同期通信リンクL2,L3によって第１のデータセンター502及び第２のデータセンター504にそれぞれリンクされる。第１のデータセンター502は、データを第２のデータセンター504及び第３のデータセンター506にマルチキャストする。障害回復システム500は、データセンターに分散し、そこで実行可能な分散制御システム510も備える。分散制御システム510は、第１のデータセンター502と第２のデータセンター504との間のリンクL1の障害に応じて、情報の差分コピーを表すビットマップを第１のデータセンター502から第３のデータセンター506を介して第２のデータセンター504に転送する。
【００２８】
特定の一実施形態では、第１のデータセンター502と第２のデータセンター504との間のリンクL1は同期リンクであり、第３のデータセンター506と第１のデータセンター502及び第２のデータセンター504との間のリンクL2,L3はそれぞれ非同期リンクである。また、幾つかの実施形態では、リンクL1,L2,L3は、データセンター間でミラーイメージデータを転送するミラーリンクとなる。
【００２９】
分散制御システム510は、データセンターの内部あるいは外部に分散し、調整のとられた動作を実行して、データセンター間の通信リンク及びデータセンターに格納されているデータを制御する。分散制御システム110は、通信リンク又はネットワーク通信を介して散在しうる。分散制御システム110は、アプリケーションプログラミングインタフェース（API）、メタコマンド、又はコマンドラインインタフェース（CLI）など様々な技法を使用して実施することができる。
【００３０】
分散制御システム110は、３サイト障害回復マルチキャストシステムにおいて、第１のデータセンター502と第２のデータセンター504との間のリンクL1、例えば大都市圏距離リンクが失われた状況に対処する制御プロセスを含むことができる。第２のデータセンター504にあるデータを復元する一技法は、長距離通信リンクとすることが可能なコネクションL3を第３のデータセンター506から第２のデータセンター504まで確立してコピーを供給することである。様々な実施形態において、そのコピーは、完全なコピー又は部分的なコピーとすることが可能である。完全なコピーの時間期間は非常に長くなることがあり、この間は有効な第３の障害回復サイトを利用することができないため、部分的なコピーを転送することによって回復プロセスの効率が向上する。
【００３１】
幾つかの実施形態では、第１のデータセンター502から第３のデータセンター506への転送は、非同期サイドファイルビットマップの転送とすることが可能であり、該ビットマップが第３のデータセンター506を介して第２のデータセンター504に供給されて、差分コピーを使用して第２のデータセンター504と第３のデータセンター506の間のミラー対コネクションを実行することが可能となる。したがって、リンクL1に障害が発生すると、非同期サイドファイルから得られるデータセンター2−リンクL2ビットマップが第３のデータセンター506に転送され、該第３のデータセンター506がリンクL3を介して第２のデータセンター504にビットマップを転送する。第２のデータセンター504は、ビットマップを使用して、完全なコピーを転送するオーバーヘッドなしで順不同コピー状態を介して第３のデータセンター506を更新し、これにより、２つの現在のデータセンターサイトを、より時宜を得た態様で維持することが可能となる。
【００３２】
図６を参照する。その概略的なブロック図は、順序付けされたカスケード式の再同期を含む障害回復システム600の一例を示している。例示的な障害回復システム600は、その構成に４つ又は５つ以上のディスクアレイ610,620,630,640を含む。第１のディスクアレイ610は、リモートミラー１次ボリュームストレージ612を備える。第２のディスクアレイ620は、第１の通信リンクL1によってリモートミラー１次ボリュームストレージ612にリンクされたリモートミラー２次ボリューム及びローカルミラー１次ボリュームストレージ622を備える。第２のディスクアレイ620は、第２のディスクアレイ620内部の第２の通信リンクL2によってリモートミラー２次ボリューム及びローカルミラー１次ボリュームストレージ622に内部ミラーリンクされたローカルミラー２次ボリューム及びリモートミラー１次ボリュームストレージ624も備える。第３のディスクアレイ630は、第３の通信リンクL3によって第２のディスクアレイのローカルミラー２次ボリューム及びリモートミラー１次ボリュームストレージ624にリンクされたリモートミラー２次ボリュームストレージ632を備える。第４のディスクアレイ640は、第４の通信リンクL4によってリモートミラー２次ボリュームストレージ632にリンクされる。障害回復システム600は、ディスクアレイに分散し、そこで実行することが可能であり、データミラーリングのタイミングを調整してミラーリングコピーが一貫するように図る分散制御システム602も更に備える。
【００３３】
他の実施形態及び構成では、ディスクアレイは、１つのデータセンターに収容され互いに内部リンクにより接続された複数のアレイを用いて様々に構成することが可能であり、又は地理的にある程度離れたデータセンターに別個に配置することが可能である。
【００３４】
障害回復システム600が回避又は軽減する典型的な問題は、データミラーリング動作が調整されない場合に、内部ミラーリンクL2が、対状態にある間に一貫性をなくし又は中断状態にある間に旧くなる恐れがあることである。
【００３５】
幾つかの実施形態では、分散制御システム602は、メタコマンドを使用して通信リンクを制御し、データミラーリング動作を調整する。
【００３６】
図６と併せて図７を参照して、フローチャートに、障害回復システム600がデータ処理を調整するために実行することができる方法700の一例を示す。複数のミラーの原子的なLUNグループ分割又は分断をサポートするシステムの場合、制御動作は、内部リンクL2を中断し（702）、その後順序通りに外部リンクL3,L4をそれぞれ中断させること（704,706）によって開始する。次に、障害回復システム600は、リンクL2、リンクL3、及びリンクL4という順序で、各リンクを順序通り再同期させる（708,710,712）。
【００３７】
図６と併せて図８を参照して、フローチャートに、障害回復システム600がデータ処理を調整するために実行することができる方法800の一例を示す。複数のミラーの原子的なLUNグループの分割又は分断をサポートしないシステムの場合、制御動作は、内部リンクL1を中断させること（802）で開始し、その後順序通りに、外部リンクL2,L3,L4をそれぞれ中断させる（804,806,808）。次に、障害回復システム600は、リンクL1、リンクL2、リンクL3、及びリンクL4という順序で各リンクを順序通り再同期させる（810,812,814,816）。
【００３８】
図９を参照して、概略的なブロック図に、１次ボリュームと２次ボリュームとの間の「一対多」関係を有する構成におけるサイドファイルの使用を示す。特定の実施形態では、この構成は、ファイバチャネルインフラストラクチャを使用した設計で実施することができる。非同期複製は、更新の発生のシーケンス順序追跡を使用して一貫性を確保する。該追跡は、２つの１次ボリュームサイドファイル908,910、ならびに２つの２次ボリュームサイドファイル912,914において行われる。非同期複製向けのアプリケーションである更なる１次ボリュームサイドファイルが、各２次サイトに付加される。
【００３９】
更新は、例えばホスト900によりシーケンス番号を使用して順序付けられて、リモートディスクボリューム904,906に送られる。リモートディスクボリューム904,906は、１セット中の次のシーケンス番号を受け取ると、１次ディスクボリューム902へのシーケンス番号に従ってデータを受信したことを知らせ、影響を受けたシーケンス番号が１次ボリュームサイドファイルリスト908,910から除去される。トランザクションが１次ボリューム902と２次ボリューム904,906の一方との間で失われた場合には、特定のシーケンス番号のデータの再送信を要求することができる。
【００４０】
「一対多」構成は、様々なカスケード式構成に使用することができる。
【００４１】
図１０Ａを参照して、概略的なブロック図に同期データ複製方法を示す。ホスト1000から１次ストレージアレイ1002に発行された入出力コマンド1010はいずれも２次ストレージアレイ1004にコピーされる（1012）。データが２次アレイ1004上のメモリに書き込まれると、その入出力が１次アレイ1002に知らされ（1004）、次いでホスト1000に知らされる（1016）。特定の一実施形態では、主制御装置が１次ボリュームに対して書き込み動作を行い、２次ボリュームに対する更新コピー動作を開始し、更新コピー動作の結果がわかった後にのみ、最終的な終了状態をホストに報告する。１次ボリュームへの書き込み動作、あるいは２次ボリュームへの更新コピー動作が失敗した場合には、主制御装置は装置チェックを報告し、ホストシステム及びアプリケーションプログラムは、１次ボリュームに対する書き込み動作を失敗とみなす。このリモートミラーキャッシュにおいて論理オブジェクトの保全性を維持する方法は、２次ボリュームが一貫しないデータ又は不精確なデータを収容することを回避するものとなる。
【００４２】
例示的な実施形態は２サイトデータ複製を示し、これは同様に追加の複製サイトに拡張される。２サイトデータ複製方法ではホストアプリケーションがデータ保全に関する責務を負う。入出力コマンドは、アレイ1002,1004の両方に対して書き込まれた場合にのみアプリケーションに知らされる（1016）ため、該アプリケーションは、最初のコマンドが完了して２次アレイ1004にデータが順序通りに一貫して書き込まれた場合にのみ次の入出力コマンドを発行する。同期複製は、新しく追加された各サイトがアプリケーションの応答時間が増大させるため、複数のサイトのミラーリングには比較的不向きである。
【００４３】
図１０Ｂを参照して、概略的なブロック図に、レコードの順序付け（record ordering）を用いる非同期データ複製方法を示す。ホスト100により１次ストレージアレイ1002に発行された（1020）入出力コマンドは、該コマンドがキャッシュに到達するとすぐに、ホスト1000に即座に通知される。シーケンス番号が入出力コマンドに付加され、２次アレイ1004に送られる（1024）。２次アレイ104へのパスは、複数のパス又はルートのいずれも横断することができるため、入出力コマンドが順不同で到来する可能性がある。２次アレイ1004は、到来するコマンドをシーケンス番号に従って並べ替えて、データレコードを正しいシーケンスで適用する責務を負う。２次アレイ1004による管理は、障害発生時に殆どの現在のトランザクションを損失する可能性はあるものの、順序通りの一貫したデータベースを確保するものとなる。非同期データ複製は、長距離の複製に一層良く適したものである。これは、アプリケーションホストに対するレイテンシの影響が低減され又はなくなるからである。
【００４４】
特定の実施形態では、主制御装置は、１次ボリューム動作を、２次ボリュームにおける関連する更新コピー動作から独立して完了する。リモート制御装置は、レコードセット情報に従って２次ボリュームの更新を管理し、２次ボリュームのシーケンス順序付きデータの一貫性を維持する。１次ボリュームへの書き込み動作が失敗した場合、主制御装置は装置チェックを報告し、この動作に対しては非同期レコードセットを作成しない。更新コピー動作が失敗した場合、リモート制御装置は、随意選択的に、失敗の種類に応じて、一貫したグループ中の影響を受ける対あるいは全ての対を中断させることができる。中断された対が回復すると、主制御装置及びリモート制御装置はその対の再同期をネゴシエートすることができる。リモートミラーキャッシュにおいて論理オブジェクトの保全性を維持する方法により、動作が２次ボリュームに一貫性のない情報を残すことが回避される。
【００４５】
図１１を参照して、概略的なブロック図に、非同期データ複製におけるサイドファイルの使用を示す。非同期複製は、更新発生のシーケンス順追跡を使用して一貫性を確保する。追跡は、１次ボリュームサイドファイル1106及び２次ボリュームサイドファイル1108において行われる。個々の更新は、シーケンス番号を使用して順序付けられ、リモートアレイ1104に送られる。リモートアレイ1104は、セット中の次のシーケンス番号を受け取ると、シーケンス番号に従ってデータを受信したことを１次アレイ1102に通知し、影響を受けるシーケンス番号が１次ボリュームサイドファイルリスト1106から除去される。トランザクションが１次アレイ1102と２次アレイ1104との間で失われた場合には、特定のシーケンス番号のデータの再送信を要求することができる。
【００４６】
番号シーケンスは、１次アレイ1102及びリモートアレイ1104のメモリにおいて管理され、更なる資源であるサイドファイル1106,1108を利用する。１次アレイ1102に対して行われる入出力動作の場合、そのシーケンス番号及び更新によって影響を受けるブロックへのポインタを含むサイドファイル1106にエントリが追加される。後続の入出力動作で同じブロックが更新される場合には、そのブロックの内容もまたサイドファイル1106に記録される。サイドファイルのサイズは、１次アレイ1102によって行われる入出力動作の数に対するリモートアレイ1104へのリンクのパフォーマンスに依存する。サイドファイル1106がアレイ1102中の総キャッシュメモリの所定の割合に達した場合、例えば、入出力動作が低速リンクによりキャッシュにバックアップされている場合、ホスト1100からの入出力速度が制限されて、サイドファイル1106に一層高い優先度を与えようとする。
【００４７】
サイドファイルは典型的には、１次サイト1102と２次サイト1104との間に通信が存在する場合にのみ使用される。通信が不通である場合、又は対が中断した場合には、サイドファイルのオーバーヘッドが高すぎるとみなされ、代わりにビットマップが、典型的にはトラック単位又はシリンダ単位で、変更を追跡するために使用される。
【００４８】
様々な実施形態において、非同期レコードセットは、１次ボリュームの更新及びそれに関連する制御情報（例えば１次ボリューム更新のシーケンス番号）を含むことができ、これにより、リモート制御装置が２次ボリュームの更新の一貫性を維持することが可能となる。レコードセット動作は、主制御装置におけるレコードセットの作成及び格納、リモート制御装置へのレコードセットの送信、リモート制御装置へのレコードセットの格納、ならびにリモート制御装置におけるレコードセットの選択及び配置を含むことができる。他の動作としては、サイドファイルの流入制御が挙げられる。
【００４９】
一実施形態では、ホストが入出力書き込み動作を要求すると、主制御装置は更新を行い、レコードセットを作成する。レコードセットは、更新されたレコードと、シーケンス番号と、装置、シリンダ、トラック、及びレコード番号等のレコード位置と、レコード長とを含むことができる。レコードセットは、主制御装置のキャッシュストレージ中にキューイングし、ホスト入出力プロセスから独立してリモート制御装置に送信することができる。リモート制御装置は、レコードセット中のシーケンス番号を使用して、１次ボリュームの順序で２次ボリュームを更新する。シーケンス番号は、主制御装置が一貫したグループそれぞれに作成したレコードセットの番号を示す。更新されたレコード以外のレコードセット情報は、サイドファイルキャッシュとして知られているキャッシュエリアに格納され、キューイングされる。
【００５０】
この実施形態では、主制御装置は、主制御装置のイニシエータポートを使用してリモートI／Oと呼ばれる特殊な入出力動作をリモート制御装置に発行することによってリモート制御装置にレコードセットを送信することができる。該リモートI／Oは、単一のチャネルコマンドを使用してレコードセットを効率的に転送して、シーケンス番号が連続していない場合であっても主制御装置が複数のレコードセットを単一のリモートI／Oコールで送信することができるようにする。リモート制御装置は、レコードセットを格納することができ、キューを維持して、サイドファイルへのレコードセットの格納及び２次ボリュームにおけるレコードの更新のコミットメントを制御する。リモート制御装置のキューイングでは、シーケンス番号を使用して欠けている更新をチェックすることができる。
【００５１】
ビットマップテーブルは、特定の時点から装置上で変更されたレコードを追跡する効率的な技法である。ビットマップテーブルは、変更されたトラック又はシリンダ番号を記録し、典型的には、変更の順序又は詳細に関する情報を維持しない。１次サイト1102と２次サイト1104との間に通信が存在しない間、又は対が中断されている間、デルタビットマップテーブルが１次アレイ1102及び２次アレイ1104の両方で維持される。対が再同期されると、変更されたシリンダのみがリモートアレイ1104にコピーされて、データミラーが最新の状態にされる。その後、サイドファイルを再び使用して更新を続ける。再同期中には、リモートアレイ1104上のデータは一貫性がなく信頼性のないものとなる。
【００５２】
一貫性グループ（consistency group）の追跡は、正しい動作を保証するために使用される。非同期一貫性グループは、更新シーケンスの一貫性が維持されてリモートサイトで保証されることになるボリューム対のユーザ定義によるセットである。各非同期ボリューム対は、１つの一貫性グループに割り当てられる。例示的なシステムでは、データベースシステムは、各主制御装置毎に所定数の一貫性グループを構成することを可能とし、一貫性グループについてのグループベースの動作をサポートする。一貫性グループは、複数のボリュームにわたるデータベースの更新シーケンス一貫性の維持を可能とし、故障時又は障害時のリモートサイトにおける即座のデータベース回復を容易化するものとなる。
【００５３】
１つのアプリケーションは、一般に２つ以上の物理的な装置の集合体を含む。したがって、正しい動作は、全ての入出力動作が一貫してリモート装置に与えられるという保証に依存するものとなり得る。非同期動作中に、装置グループ中の全ての装置は、同じ一貫性グループを形成する。サイドファイル中のシーケンス番号は、一貫性グループの細分性（granularity）レベルで発行され、これにより該一貫性グループの１次装置に適用された入出力動作が同じシーケンスで２次装置に適用されるようになる。一貫性グループ中の装置に更新が適用されない場合には、一貫性グループ全体がエラー状態になる。一貫性グループは、一貫性グループ中の全ての装置に対する書き込みがその全ての装置で準備が整うまでデステージされるよう定義され制御される。一貫性は、１つのLUNだけでなく、一貫性グループ中の全ての装置に適用される。
【００５４】
リモートミラーキャッシュにおいて論理オブジェクトの保全性を維持する方法は、初期コピー及び更新コピー動作等、データベースシステムの様々なリモートコピー動作で使用することができる。初期コピー動作は、概してホストプロセスから独立して、１次ボリュームと２次ボリュームを同期させる。初期コピーは通常、ユーザがボリューム対を追加するとき、又は分割又は中断されたボリューム対を再開するときに行われる。新しい対が作成されると、１次ボリュームの中味全体が、診断トラック及び未割り当ての代替トラックを除き、シリンダ単位で２次ボリュームにコピーされる。初期コピーの場合、様々なデータベースシステム実施形態は、リモートミラーキャッシュにおける論理オブジェクトの保全性を維持する方法を実施しても、又はその使用を省いてもよい。初期コピーは一般に、データベースの使用がより制御された条件で行われるため、データベースシステムの実施形態によっては、初期コピーの場合にリモートミラーキャッシュにおける論理オブジェクトの保全性を維持する方法に関わるオーバーヘッドを省略することが可能である。
【００５５】
更新コピー動作は、確立されたボリューム対のうちの１次ボリュームに対してホストが入出力書き込み動作を発行するときに行われる。更新コピー動作は、１次ボリュームの入出力書き込み動作を２次ボリュームで複製して、ボリューム対の同期性を保つ。リモートミラーキャッシュにおける論理オブジェクトの保全性を維持する方法の使用は、正しいデータベース動作を保証する更新コピーにおいて有用である。
【００５６】
本開示に様々な実施形態を説明したが、これら実施形態は例示として理解されるべきであり、特許請求の範囲を制限するものではない。説明した実施形態の多くの変形、変更、追加、及び改良が可能である。例えば、当業者は、本明細書に開示した構造及び方法の提供に必要なステップを容易に実施し、プロセスパラメータ、材料、寸法は例としてのみ与えられることを理解するであろう。パラメータ、材料、及び寸法は所望の構造ならびに変更を達成するように変更可能であり、これは特許請求の範囲内にある。本明細書に開示する実施形態の変形及び変更はまた、添付の特許請求の範囲内にありながら行うことができる。例えば、開示した装置及び技法は、任意のしかるべき数の記憶要素を有する任意のデータベース構成で使用することが可能である。データベースシステムは磁気ディスク記憶要素を開示しているが、任意のしかるべき種類のストレージ技術を実施してよい。システムは、様々なオペレーティングシステム及びデータベースシステムと共に実施することが可能である。制御要素は、汎用コンピュータシステム、ワークステーション、サーバ等のソフトウェア又はファームウェアとして実施することができるが、その他の場合として、専用装置又は埋込みシステムで実施してもよい。
【図面の簡単な説明】
【００５７】
【図１】順序付けされたカスケード式の再同期動作を実施することが可能な障害回復システムの一実施形態を示す概略的なブロック図である。
【図２】非同期リンクに供給される同期障害回復リンクの中断に応答する制御プロセスを示すフローチャートである。
【図３】分散制御システムの一部として実行することのできる別の制御プロセスの一実施形態を示すフローチャートである。
【図４】デイジーチェーン式マルチサイト障害回復プロセスの一例を示す概略的なフローチャートである。
【図５】順序付けされたカスケード式の再同期を実施する障害回復システムを示す概略的なブロック図である。
【図６】順序付けされたカスケード式の再同期を含む障害回復システムの一例を示す概略的なブロック図である。
【図７】障害回復システムがデータ処理を調整するために実行することのできる方法の例を示すフローチャートである。
【図８】障害回復システムがデータ処理を調整するために実行することのできる方法の例を示すフローチャートである。
【図９】１次ボリュームと２次ボリュームとの間に単対多関係を有する構成におけるサイドファイルの使用を示す概略的なブロック図である。
【図１０Ａ】リモートミラーキャッシュにおける論理オブジェクトの保全性を維持する例示的な方法に適合した同期データ複製技法を示す概略的なブロック図である。
【図１０Ｂ】リモートミラーキャッシュにおける論理オブジェクトの保全性を維持する例示的な方法に適合した非同期のデータ複製技法を示す概略的なブロック図である。
【図１１】非同期データ複製におけるサイドファイルの使用を示す概略的なブロック図である。
【符号の説明】
【００５８】
100               障害回復システム
102,104,106       データセンター
102A,104A,106A    通信インタフェース
102B,104B,106B    データストレージ
102C,104C,106C    コントローラ
110               分散制御システム
L1,L2             リンク
【図１】
2004343776.tif 000003
【図２】
2004343776.tif 000004
【図３】
2004343776.tif 000005
【図４】
2004343776.tif 000006
【図５】
2004343776.tif 000007
【図６】
2004343776.tif 000008
【図７】
2004343776.tif 000009
【図８】
2004343776.tif 000010
【図９】
2004343776.tif 000011
【図１０Ａ】
2004343776.tif 000012
【図１０Ｂ】
2004343776.tif 000013
【図１１】
2004343776.tif 000014