(57)【要約】【課題】  遠距離での外部記憶装置間のデータ複製処理の遅延を防止しリモートレプリケーションでの性能低下を改善できるリモートレプリケーション方法を提供することである。【解決手段】  主系の外部記憶装置１１のデータが更新される際に主系の外部記憶装置１１から最短の時間でアクセス可能な１台の従系の外部記憶装置１２のみにデータを複製し、複製を完了した従系の外部記憶装置１２はその従系の外部記憶装置１２から最短の時間でアクセス可能な１台の従系の外部記憶装置１２のみにデータを複製し、以下同様に、データの複製を完了した従系の外部記憶装置１２は順次その従系の外部記憶装置から最短の時間でアクセス可能な１台の従系の外部記憶装置１２のみにデータを複製していく。【選択図】  図１
2006252373.tif 000002
【特許請求の範囲】
【請求項１】
主系の外部記憶装置のデータを遠距離の従系の外部記憶装置に複製するリモートレプリケーション方法において、主系の外部記憶装置のデータが更新される際に主系の外部記憶装置から最短の時間でアクセス可能な１台の従系の外部記憶装置のみにデータを複製し、複製を完了した従系の外部記憶装置はその従系の外部記憶装置から最短の時間でアクセス可能な１台の従系の外部記憶装置のみにデータを複製し、以下同様に、データの複製を完了した従系の外部記憶装置は順次その従系の外部記憶装置から最短の時間でアクセス可能な１台の従系の外部記憶装置のみにデータを複製していくことを特徴とするリモートレプリケーション方法。
【請求項２】
前記主系の外部記憶装置は、１台の従系の外部記憶装置に対してデータの複製が完了したときは、次のデータ更新の受付処理に移行することを特徴とする請求項１記載のリモートレプリケーション方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、外部記憶装置のデータを遠距離の別の外部記憶装置に複製するリモートレプリケーション方法に関する。
【背景技術】
【０００２】
災害による外部記憶装置の故障を踏まえたデータ冗長性向上のために、ある外部記憶装置のデータを遠距離の別の外部記憶装置に複製するリモートレプリケーション技術がある。すなわち、災害による外部記憶装置の故障によって、外部記憶装置内のデータの読出し不可能な事態が発生し得るので、その事態を避けるため、安全な場所に同じデータを持たせた別の外部記憶装置を設けるリモートレプリケーションが考えられている。
【０００３】
リモートレプリケーションは、通常データの書き込みを行う主系の外部記憶装置と、データの保全を目的とする従系の外部記憶装置、そして主系と従系を接続するネットワークで構成される。常に主系と従系のデータを同一に保つためには、主系で発生するデータの更新ごとに、従系に更新されたデータを反映させる必要がある。
【０００４】
そこで、外部記憶装置間でのデータの複製は、ある外部記憶装置でデータが更新されると、外部記憶装置間のデータを同一に保つため同期をとるようにしている。これは、更新されたデータを、その他の全ての外部記憶装置に書き込む処理である。書き込みが終わった外部記憶装置は、応答を返すことにより完了を通知する。この応答は、データの更新順序を保つため、複製を行う全ての外部記憶装置から得られるまで待ち、応答が全て得られてから、次のデータの更新による同期を行う。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、外部記憶装置間で同期を取る際に、従系の書き込み完了の応答を待つため、従系の外部記憶装置が複数台ある場合には、最も応答の遅い従系の外部記憶装置に同期の処理をとることになり、主系の処理がその最も応答の遅い従系の処理が完了するまで待たされることになる。これは、そのままリモートレプリケーションを構成したシステムの性能低下になる。特に、主系と従系を接続するネットワークが長距離になり、従系へのデータ反映に遅延が発生すると、リモートレプリケーションの性能が低下する。
【０００６】
本発明の目的は、遠距離での外部記憶装置間のデータ複製処理の遅延を防止しリモートレプリケーションでの性能低下を改善できるリモートレプリケーション方法を提供することである。
【課題を解決するための手段】
【０００７】
請求項１の発明に係わるリモートレプリケーション方法は、主系の外部記憶装置のデータを遠距離の従系の外部記憶装置に複製するリモートレプリケーション方法において、主系の外部記憶装置のデータが更新される際に主系の外部記憶装置から最短の時間でアクセス可能な１台の従系の外部記憶装置のみにデータを複製し、複製を完了した従系の外部記憶装置はその従系の外部記憶装置から最短の時間でアクセス可能な１台の従系の外部記憶装置のみにデータを複製し、以下同様に、データの複製を完了した従系の外部記憶装置は順次その従系の外部記憶装置から最短の時間でアクセス可能な１台の従系の外部記憶装置のみにデータを複製していくことを特徴とする。
【０００８】
請求項２の発明に係わるリモートレプリケーション方法は、請求項１の発明において、前記主系の外部記憶装置は、１台の従系の外部記憶装置に対してデータの複製が完了したときは、次のデータ更新の受付処理に移行することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、アクセスの最短経路を管理するテーブルを主系と従系は備える。以上の構成のシステムにおいて、主系のデータが更新される際に、主系から最短の時間でアクセス可能な従系１台のみにデータを複製することで、主系の外部記憶装置から最短の時間でアクセス可能な１台の従系の外部記憶装置のみにデータを複製し、複製した従系は最短の時間でアクセス可能な１台の従系の外部記憶装置のみに順次データを複製していくので、複数のすべての外部記憶装置にデータ複製が完了するまで処理を待つ従来例に比べて、高速に次のデータ更新を行うことができる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施の形態を説明する。図１は本発明の実施の形態に係わるリモートレプリケーション方法が適用されるリモートレプリケーションシステムの構成図である。リモートレプリケーションシステムは、主系となる外部記憶装置１１と従系となる複数の外部記憶装置１２ａ〜１２ｃとからなりネットワーク１３で接続されている。図１では３第の従系の外部記憶装置１２ａ〜１２ｃが接続された場合を示している。主系の外部記憶装置１１及び従系の外部記憶装置１２ａ〜１２ｃは、それぞれ複数台のハードディスクを並列に接続し全体を１つのディスク装置として取り扱うＲＡＩＤ(Redundant array Inexpensive Disks)装置で構成されている。
【００１１】
また、主系の外部記憶装置１１は、図示省略のホストからのＩ／Ｏを受ける機構を備え、そのＩ／Ｏを書き込むキャッシュを持ち、そのキャッシュを制御する制御部を備えている。また、従系の外部記憶装置１２ａ〜１２ｃは、主系の外部記憶装置１１と相互に通信を可能とする制御部を持ち、主系の外部記憶装置１１とネットワーク１３を介して通信を行う。
【００１２】
主系の外部記憶装置１１は、データ複製処理のためのテーブルを有する。図２は主系の外部記憶装置１１が有するデータ複製処理のためのテーブル１４の説明図である。テーブル１４には、データ更新の発生順序１５、全ての外部記憶装置の名前１６、ネットワークアドレス１７、自身からその他の外部記憶装置までのアクセス時間１８、自身からのその他の外部記憶装置へのアクセスに対する応答の有無１９が格納されている。また、主系の外部記憶装置１１は複数のテーブル１４を持つ。
【００１３】
一方、従系の外部記憶装置１２ａ〜１２ｃもデータ複製処理のためのテーブル２０を有する。図３は従系の外部記憶装置１２が有するデータ複製処理のためのテーブル２０の説明図である。テーブル２０には、データの更新処理中を示す項目２１、全ての外部記憶装置の名前１６、ネットワークアドレス１７、自身からその他の外部記憶装置までのアクセス時間１８、自身からのアクセスに対する応答の有無１９を持つ。リモートレプリケーションの動作を開始する前に、自身からその他の外部記憶装置へのアクセス時間を各外部記憶装置が取得しテーブル内に保持する。
【００１４】
テーブル内のデータ更新順序の項目は、データの更新が発生すると、主系の外部記憶装置１１は、テーブル１４内のデータ更新順序を１として、この番号をもとにデータ更新の順序を管理する。
【００１５】
テーブル１４内のアクセス時間の最も短い従系の外部記憶装置１２の１台に更新するデータを送る。主系の外部記憶装置１１がその従系の外部記憶装置１２から応答を受けとると、テーブル１４に応答の有無１９をチェックし、先ほど応答を返した従系の外部記憶装置１２にテーブル１４の応答の有無１９の内容を送る。テーブル１４の応答の有無１９の内容を受け取った従系の外部記憶装置１２はテーブル２０の応答の有無１９のみ更新する。
【００１６】
以降、同様の動作を従系の外部記憶装置１２間で行い、テーブル１４、２０内の応答の有無１９欄が全てチェックされるまで行う。実際に従系の外部記憶装置１２の動作を行っている間は、従系のテーブル２０内にあるデータ更新処理中の項目に１を書き込み、処理が終わったら０と書き込む。最後に、テーブル１４の更新を受けた従系の外部記憶装置１２は、主系の外部記憶装置１１に対して応答の有無１９を更新する。主系の外部記憶装置１１は、更新されたテーブル１４内の応答の有無をチェックし、全てチェックされたことを確認して、データの更新順序１の同期を完了とする。
【００１７】
同期処理の途中で、新たにデータの更新が発生した場合には、主系の外部記憶装置１１のテーブル１４内のデータの更新順序を２として同期処理を進める。データ更新順序１とデータ更新順序２との処理が重なった場合には、従系の外部記憶装置１２のテーブル２０内のデータ更新処理中の項目を見て、１が書き込まれている従系の外部記憶装置１２のところまで、データ更新順序２の処理を進める。以降、主系の外部記憶装置１１が持つ複数のテーブル１４を全て使いきった場合には、ここで処理を待ちとする。
【００１８】
この結果、従来の方法では、データの更新が発生した場合、全ての従系の外部記憶装置１２から書き込み完了の応答が得られるまで待ち状態になっていたが、本発明の実施の形態では、従系の外部記憶装置１２の１台目からの応答が得られた段階で、主系の外部記憶装置１１は、全ての従系の外部記憶装置１２の応答を待たず、既に次のデータ更新による同期処理を進めることができ、リモートレプリケーションの動作性能の低下を改善することができる。
【００１９】
このように、図１に示した本発明の実施の形態では、外部記憶装置は、主系の外部記憶装置１１、従系の外部記憶装置１２ａ〜１２ｃの４台があり、それぞれがネットワーク１３で接続されている。また、主系となる外部記憶装置１１は、データの更新順序１５、各外部記憶装置１１、１２ａ〜１２ｃの名前１６、ネットワークアドレス１７、自身からその他の外部記憶装置までのアクセス時間１８をテーブルに持つ。
【００２０】
自身からその他の外部記憶装置までの時間に関しては、ネットワークポーリングで各外部記憶装置が自身によって取得する。従系となる外部記憶装置１２ａ〜１２ｃは、データの更新処理中を示す項目２１、各外部記憶装置の名前１６、ネットワークアドレス１７、自身からその他の外部記憶装置までのアクセス時間１８をテーブルに持つ。自身からその他の外部記憶装置までの時間に関しては、主系の外部記憶装置１１と同様にネットワークポーリングで各外部記憶装置が自身によって取得する。
【００２１】
いま、主系の外部記憶装置１１、従系の外部記憶装置１２ａ〜１２ｃの各アクセス時間は、以下のようになったとする。
【００２２】
（Ａ）主系の外部記憶装置１１からのアクセス時間が短い順に、従系の外部記憶装置１２ａ、従系の外部記憶装置１２ｂ、従系の外部記憶装置１２ｃ。
【００２３】
（Ｂ）従系の外部記憶装置１２ａからのアクセス時間が短い順位、主系の外部記憶装置１１、従系の外部記憶装置１２ｂ、従系の外部記憶装置１２ｃ。
【００２４】
（Ｃ）従系の外部記憶装置１２ｂからのアクセス時間が短い順位、従系の外部記憶装置１２ａ、従系の外部記憶装置１２ｃ、主系の外部記憶装置１１。
【００２５】
（Ｄ）従系の外部記憶装置１２ｃからのアクセス時間が短い順位、従系の外部記憶装置１２ｂ、主系の外部記憶装置１１、従系の外部記憶装置１２ａ。
【００２６】
この場合の動作は、以下に動作の手順となる。
【００２７】
（１）データの更新が発生した場合、主系の外部記憶装置１１のテーブル１４内のデータ更新順序を１とする。
【００２８】
（２）主系の外部記憶装置１１のテーブル１４内のアクセス時間の欄から、最も短い時間でアクセス可能な従系の外部記憶装置１２ａを選択し、更新するデータを従系の外部記憶装置１２ａに送信する。
【００２９】
（３）従系の外部記憶装置１２ａは、更新するデータを受け取り、テーブル２０内のデータ更新中の欄を１にして、データを書き込み主系の外部記憶装置１１に応答を返す。
【００３０】
（４）主系の外部記憶装置１１は応答を受け取り、テーブル１４内の応答の有無の欄をチェックして、テーブル１４内の応答の有無の欄のデータを従系の外部記憶装置１２ａへ更新する。
【００３１】
（５）従系の外部記憶装置１２ａは、テーブル２０内の応答の有無１９の欄がチェックされていない従系の外部記憶装置１２の中でアクセス時間が最も短い従系の外部記憶装置１２ｂに対して更新データを送る。
【００３２】
（６）更新データを受け取った従系の外部記憶装置１２ｂは、テーブル２０内のデータ更新中の欄を１にしてデータを書き込み、従系の外部記憶装置１２ａに応答を返す。
【００３３】
（７）従系の外部記憶装置１２ａは応答を受け取り、テーブル２０内の応答の有無１９の欄をチェックして応答の有無１９の欄のデータを従系の外部記憶装置１２ｂへ更新し、テーブル２０内のデータ更新中の項目を０に戻す。
【００３４】
（８）従系の外部記憶装置１２ｂは、テーブル２０内の応答の有無１９の欄がチェックされていない従系の外部記憶装置１２の中でアクセス時間が最も短い従系の外部記憶装置１２ｃに対して更新データを送る。
【００３５】
（９）更新データを受け取った従系の外部記憶装置１２ｃは、テーブル２０内のデータ更新中の欄を１にして、データを書き込み、従系の外部記憶装置１２ｂに応答を返す。
【００３６】
（１０）従系の外部記憶装置１２ｂは応答を受け取り、テーブル２０内の応答の有無の欄をチェックして応答の有無１９の欄のデータを従系の外部記憶装置１２ｃへ更新し、テーブル２０内のデータ更新中の項目を０に戻す。
【００３７】
（１１）従系の外部記憶装置１２ｃは、テーブル２０内の応答の有無の欄１９をチェックするが、全てチェックされているため、主系の外部記憶装置１１に対して、テーブル１４内の応答の有無の欄１９を更新し、テーブル２０内のデータ更新中の項目を０に戻す。
【００３８】
（１２）主系の外部記憶装置１１は、テーブル１４内の応答の有無がすべてチェックされているのを確認し、テーブル１４内のデータ更新順序１に対して、同期の処理を完了とする。
【００３９】
以上の（１）〜（１２）の処理でデータの更新による同期の処理が完了となる。（１）〜（１２）の処理の過程で、新たにデータの更新が発生した場合には、主系の外部記憶装置１１はテーブル１４のデータの更新順序１５を２として管理し、（１）〜（１２）までの処理を進める。新たなデータの更新による処理は、従系の外部記憶装置１２のテーブル２０内のデータ更新中の項目が０である限り進めることが可能であり、１である場合には、ここで初めての待ち状態となる。
【００４０】
本発明の実施の形態によれば、主系の外部記憶装置及び従系の外部記憶装置は、他の外部記憶装置へのアクセス時間を監視して、常にアクセスの最短経路を管理し、主系の外部記憶装置のデータが更新される際に、主系の外部記憶装置から最短の時間でアクセス可能な従系の外部記憶装置のみにデータを複製する。従って、高速に次のデータ更新を受け付けることができる。
【００４１】
また、主系の外部記憶装置から１台の従系の外部記憶装置に対してのみデータの更新を行うので、主系の外部記憶装置は現在のデータ更新の負荷から開放される。従って、次のデータ更新の受付処理に移行が可能となり、データを更新した従系は、自身以外の名前、ネットワークアドレス、データ更新における応答の有無、自身からのアクセス時間からデータ未更新の従系の外部記憶装置を見つけ、自身からのネットワークポーリングを行い、常に最短のアクセス経路を更新し、最短のアクセス経路を選択して、データの未更新の従系へレプリケーションの処理を行うことができる。
【図面の簡単な説明】
【００４２】
【図１】本発明の実施の形態に係わるリモートレプリケーション方法が適用されるリモートレプリケーションシステムの構成図。
【図２】本発明の実施の形態における主系の外部記憶装置が有するデータ複製処理のためのテーブルの説明図。
【図３】本発明の実施の形態における従系の外部記憶装置が有するデータ複製処理のためのテーブルの説明図。
【符号の説明】
【００４３】
１１…主系の外部記憶装置、１２…従系の外部記憶装置、１３…ネットワーク、１４…テーブル、１５…データ更新の発生順序、１６…外部記憶装置の名前、１７…ネットワークアドレス、１８…アクセス時間、１９…応答の有無、２０…テーブル、２１…データの更新処理中
【図１】
2006252373.tif 000003
【図２】
2006252373.tif 000004
【図３】
2006252373.tif 000005