(57)【特許請求の範囲】
【請求項１】
ネットワークで接続された複数のノードを備えるミラーリングシステムであって、
前記複数のノードそれぞれは、
前記ノード毎に設定された優先順位を特定する情報を有し、
それぞれの関係が、前記複数のノードのうちの一つを頂点とするツリー構造をとるように、前記優先順位に基づいて、自身に対する親ノード及び子ノードを設定し、
そして、前記親ノードが存在している場合に、前記親ノードから、ミラーリング対象となるデータを受け取り、前記子ノードが存在している場合に、自身が保持するデータを前記子ノードに受け渡し、
更に、自身の子ノードに不具合が生じた場合に、自身が保持するデータと不具合が生じた子ノードが既に受け取っているデータとの差分の抽出を実行し、抽出した差分を差分情報として格納し、次いで、自身よりも前記優先順位が後の別のノードを特定し、特定したノードを新たな子ノードに設定すると共に、前記新たな子ノードに、自身が保持するデータを受け渡す、
ことを特徴とするミラーリングシステム。
【請求項２】
前記複数のノードそれぞれは、前記複数のノードのうち前記優先順位が先のノードから順に、自身よりも前記優先順位が後のノードを子ノードに設定する、
請求項１に記載のミラーリングシステム。
【請求項３】
前記複数のノードのうち、前記ツリー構造の頂点に位置するノードに不具合が生じた場合に、不具合が生じた前記ノードの次に位置するノードが、前記ツリー構造の頂点となる、
請求項１または２に記載のミラーリングシステム。
【請求項４】
前記複数のノードそれぞれは、前記ツリー構造の頂点となるノードを除き、前記ツリー構造の階層と１つの親ノードに従属できる子ノードの個数とで規定される式に基づいて、自身に対する親ノードを設定する、
請求項１に記載のミラーリングシステム。
【請求項５】
ミラーリングシステムを構成するノードであって、
前記ミラーリングシステム構成する全ノードそれぞれに設定された優先順位を特定する情報を記憶する、情報記憶部と、
前記全ノードそれぞれの関係が、そのうちの一つを頂点とするツリー構造をとるように、前記優先順位に基づいて、当該ノードに対する親ノード及び子ノードを設定する、ミラーリング処理部と、を備え、
前記ミラーリング処理部は、前記親ノードが存在している場合に、前記親ノードから、ミラーリング対象となるデータを受け取り、前記子ノードが存在している場合に、当該ノードが保持するデータを前記子ノードに受け渡し、
当該ノード自身の子ノードに不具合が生じた場合に、当該ノード自身が保持するデータと不具合が生じた子ノードが既に受け取っているデータとの差分の抽出を実行し、次いで、当該ノード自身よりも前記優先順位が後の別のノードを特定し、抽出した差分を差分情報として格納し、特定したノードを新たな子ノードに設定すると共に、前記新たな子ノードに、当該ノード自身が保持するデータを受け渡す、
ことを特徴とするノード。
【請求項６】
ネットワークで接続された複数のノードを用いた方法であって、
（ａ）前記複数のノードそれぞれによって、前記ノード毎に設定された優先順位を特定する情報を保持する、ステップと、
（ｂ）前記複数のノードそれぞれによって、それぞれの関係が、前記複数のノードのうちの一つを頂点とするツリー構造をとるように、前記優先順位に基づいて、自身に対する親ノード及び子ノードを設定する、ステップと、
（ｃ）前記複数のノードそれぞれによって、前記親ノードが存在している場合に、前記親ノードから、ミラーリング対象となるデータを受け取る、ステップと、
（ｄ）前記複数のノードそれぞれによって、前記子ノードが存在している場合に、自身が保持するデータを前記子ノードに受け渡す、ステップと、
（ｅ）前記複数のノードそれぞれの自身の子ノードに不具合が生じた場合に、前記複数のノードそれぞれによって、自身が保持するデータと不具合が生じた子ノードが既に受け取っているデータとの差分の抽出を実行し、抽出した差分を差分情報として格納し、次いで、自身よりも前記優先順位が後の別のノードを特定し、特定したノードを新たな子ノードに設定すると共に、前記新たな子ノードに、自身が保持するデータを受け渡す、ステップと、
を有することを特徴とするミラーリング方法。
【請求項７】
ミラーリングシステムを構成するノードとして、コンピュータを機能させるためのプログラムであって、
前記コンピュータに、
（ａ）前記ミラーリングシステム構成する全ノードそれぞれに設定された優先順位を特定する情報を記憶する、ステップと、
（ｂ）前記全ノードそれぞれの関係が、そのうちの一つを頂点とするツリー構造をとるように、前記優先順位に基づいて、当該ノードに対する親ノード及び子ノードを設定する、ステップと、
（ｃ）前記親ノードが存在している場合に、前記親ノードから、ミラーリング対象となるデータを受け取る、ステップと、
（ｄ）前記子ノードが存在している場合に、当該ノードが保持するデータを前記子ノードに受け渡す、ステップと、
（ｅ）当該ノード自身の子ノードに不具合が生じた場合に、当該ノード自身が保持するデータと不具合が生じた子ノードが既に受け取っているデータとの差分の抽出を実行し、抽出した差分を差分情報として格納し、次いで、当該ノード自身よりも前記優先順位が後の別のノードを特定し、特定したノードを新たな子ノードに設定すると共に、前記新たな子ノードに、当該ノード自身が保持するデータを受け渡す、ステップと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークで接続された複数のノードを用いるミラーリングシステム、それに用いられるノード、ミラーリング方法、及びこれらを実現するためのプログラムに関する。
【背景技術】
【０００２】
近年、企業等では、データ保護の信頼性を高めるため、ネットワークで接続された２つ以上のコンピュータシステムを利用したミラーリングが実行されている。また、データを未曾有の災害等から守るため、ミラーリング先のコンピュータシステムは、本社等から離れた遠隔地に設置されることがある。
【０００３】
例えば、特許文献１は、ネットワークで接続された２台以上のノード（コンピュータシステム）によるミラーリングシステムを開示している。特許文献１に開示されたミラーリングシステムでは、データの書き込みが指示されると、ミラーリング元のノードは、指示されたデータを自己のディスク装置に書き込むと共に、ミラーリング先のノードに送信し、それが備えるディスク装置に書き込ませる。
【０００４】
また、特許文献１に開示されたミラーリングシステムでは、ミラーリング先のノードに不具合が生じ、データを書き込めない状態となると、ミラーリング元のノードは、書き込めなかったデータを差分データとして格納する。そして、ミラーリング元のノードは、ミラーリング先のノードが復旧すると、差分データを用いて、ミラーリング元のノードに格納されているデータと、ミラーリング先のノードに格納されているデータとの整合を図る。特許文献１に開示されたミラーリングシステムによれば、復旧時におけるデータ伝送量の増大化を抑制でき、同時に、復旧時間の短縮化も図られる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−２５３４００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、特許文献１に開示されたミラーリングシステムを含め、一般的なミラーリングシステムでは、ミラーリング元のノードは、ミラーリング先のノード毎に、マスタデータを格納するディスク（マスタディスク）との間で、データのやり取りを行う必要がある。
【０００７】
このため、一般的なミラーリングシステムでは、ミラーリング先のノードの数、即ち、ミラーディスクの数が増加するほど、ミラーリング元のノードが管理すべきデータが多くなってしまう。結果、ミラーリング元ノードにおいて、データ通信量が増加し、更には、Ｉ／Ｏのレスポンスが低下してしまう。
【０００８】
本発明の目的の一例は、上記問題を解消し、ミラーリング元のノードのデータ通信量の増加とＩ／Ｏレスポンスの低下とを抑制して、負荷の分散を図り得る、ミラーリングシステム、ノード、ミラーリング方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、本発明の一側面におけるミラーリングシステムは、ネットワークで接続された複数のノードを備えるミラーリングシステムであって、
前記複数のノードそれぞれは、
前記ノード毎に設定された優先順位を特定する情報を有し、
それぞれの関係が、前記複数のノードのうちの一つを頂点とするツリー構造をとるように、前記優先順位に基づいて、自身に対する親ノード及び子ノードを設定し、
そして、前記親ノードが存在している場合に、前記親ノードから、ミラーリング対象となるデータを受け取り、前記子ノードが存在している場合に、自身が保持するデータを前記子ノードに受け渡す、ことを特徴とする。
【００１０】
上記目的を達成するため、本発明の一側面におけるノードは、ミラーリングシステムを構成するノードであって、
前記ミラーリングシステム構成する全ノードそれぞれに設定された優先順位を特定する情報を記憶する、情報記憶部と、
前記全ノードそれぞれの関係が、そのうちの一つを頂点とするツリー構造をとるように、前記優先順位に基づいて、当該ノードに対する親ノード及び子ノードを設定する、ミラーリング処理部と、を備え、
前記ミラーリング処理部は、前記親ノードが存在している場合に、前記親ノードから、ミラーリング対象となるデータを受け取り、前記子ノードが存在している場合に、当該ノードが保持するデータを前記子ノードに受け渡す、ことを特徴とする。
【００１１】
また、上記目的を達成するため、本発明の一側面におけるミラーリング方法は、ネットワークで接続された複数のノードを用いた方法であって、
（ａ）前記複数のノードそれぞれによって、前記ノード毎に設定された優先順位を特定する情報を保持する、ステップと、
（ｂ）前記複数のノードそれぞれによって、それぞれの関係が、前記複数のノードのうちの一つを頂点とするツリー構造をとるように、前記優先順位に基づいて、自身に対する親ノード及び子ノードを設定する、ステップと、
（ｃ）前記複数のノードそれぞれによって、前記親ノードが存在している場合に、前記親ノードから、ミラーリング対象となるデータを受け取る、ステップと、
（ｄ）前記複数のノードそれぞれによって、前記子ノードが存在している場合に、自身が保持するデータを前記子ノードに受け渡す、ステップと、
を有することを特徴とする。
【００１２】
更に、上記目的を達成するため、本発明の一側面におけるプログラムは、ミラーリングシステムを構成するノードとして、コンピュータを機能させるためのプログラムであって、
前記コンピュータに、
（ａ）前記ミラーリングシステム構成する全ノードそれぞれに設定された優先順位を特定する情報を記憶する、ステップと、
（ｂ）前記全ノードそれぞれの関係が、そのうちの一つを頂点とするツリー構造をとるように、前記優先順位に基づいて、当該ノードに対する親ノード及び子ノードを設定する、ステップと、
（ｃ）前記親ノードが存在している場合に、前記親ノードから、ミラーリング対象となるデータを受け取る、ステップと、
（ｄ）前記子ノードが存在している場合に、当該ノードが保持するデータを前記子ノードに受け渡す、ステップと、
を実行させることを特徴とする。
【発明の効果】
【００１３】
以上のように、本発明によれば、ミラーリングシステムにおいて、ミラーリング元のノードのデータ通信料の増加とＩ／Ｏレスポンスの低下とを抑制して、負荷の分散を図ることができる。
【図面の簡単な説明】
【００１４】
【図１】図１は、本発明の実施の形態におけるミラーリングシステム及びノードの構成を示すブロック図である。
【図２】図２は、本発明の実施の形態におけるミラーリングシステムでのノード間の関係の一例を示す図である。
【図３】図３は、本発明の実施の形態におけるミラーリングシステムでのノード間の関係の他の例を示す図である。
【図４】図４は、本発明の実施の形態におけるミラーリングシステムの構築処理時の各サイトの動作を示すフロー図である。
【図５】図５は、図４に示す動作を説明するための図であり、図５（ａ）及び図５（ｂ）それぞれは、一連の構築工程を示している。
【図６】図６は、図４及び図５の例において用いられるサイト情報の一例を示す図である。
【図７】図７は、本発明の実施の形態におけるミラーリングシステムにおいて主サイトがミラーリング処理を行なう際の動作を示すフロー図である。
【図８】図８は、本発明の実施の形態におけるミラーリングシステムにおいてミラーリング先で異常が検出された場合のサイトの動作を示すフロー図である。
【図９】図９は、本発明の実施の形態におけるミラーリングシステムにおいてミラーリング元のサイトに異常が検出された場合の副サイトの動作を示すフロー図である。
【図１０】図１０は、本発明の実施の形態におけるノードを実現するコンピュータの一例を示すブロック図である。
【発明を実施するための形態】
【００１５】
（実施の形態）
以下、本発明の実施の形態における、ミラーリングシステム、ノード、ミラーリング方法、及びプログラムについて、図１〜図１０を参照しながら説明する。
【００１６】
［システム構成］
最初に、図１を用いて、本実施の形態におけるミラーリングシステム及びノードの構成について説明する。図１は、本発明の実施の形態におけるミラーリングシステム及びノードの構成を示すブロック図である。
【００１７】
図１に示すように、本実施の形態におけるミラーリングシステム１００は、ネットワーク４０で接続された複数のノードを備えている。図１においては、ノード１０、ノード２０、ノード２１の３つのみが例示されているが、本実施の形態においてノードの数は限定されるものではない。ノード１０、ノード２０、及びノード２１以外のノードについては、図２及び図３を用いて後述する。
【００１８】
本実施の形態では、ミラーリングシステム１００は、ノードの他にホストコンピュータ３０も備えている。ホストコンピュータ３０は、ミラーリング対象となるデータをノード１０に出力する。ノード１０は、ホストコンピュータ３０からデータを受け取って、ミラーリング元となり、ノード２０及びノード２１に対しては親ノードとなる。ノード２０及びノード２１は、ミラーリング先であり、ノード１０に対しては子ノードとなる。
【００１９】
図１に示すように、ノード１０は、主に、ミラーリング処理部１０２と、サイト情報記憶部１０５とを備えている。このうち、サイト情報記憶部１０５は、ミラーリングシステム１００構成する全ノードそれぞれに設定された優先順位を特定する情報（以下「サイト情報」と表記する。）を記憶する。
【００２０】
ミラーリング処理部１０２は、全ノードそれぞれの関係が、そのうちの一つを頂点とするツリー構造をとるように、優先順位に基づいて、ノード１０に対する親ノード及び子ノードを設定する。本実施の形態では、ノード１０、ノード２０、ノード２１の順に優先順位が設定されており、ノード１０がツリー構造の頂点となるので、ミラーリング処理部１０２は、子ノードのみを設定する。
【００２１】
また、ミラーリング処理部１０２は、親ノードが存在している場合は、親ノードから、ミラーリング対象となるデータを受け取り、子ノードが存在している場合は、ノード１０が保持するデータを子ノードに受け渡す。本実施の形態では、ミラーリング処理部１０２は、後述のデータ記憶部１０４に記憶されているデータを、子ノードであるノード２０及びノード２１に受け渡す。
【００２２】
同様に、ノード２０は、ミラーリング処理部２０２と、サイト情報記憶部２０５とを備えている。また、ノード２１も、ミラーリング処理部２１２と、サイト情報記憶部２１５とを備えている。ノード２０及びノード２１においても、ミラーリング処理部、及びサイト情報記憶部、それぞれは、上述した、ミラーリング処理部１０２及びサイト情報記憶部１０５と同様に機能する。
【００２３】
このように、本実施の形態では、ミラーリングシステム１００を構成するノードは、予め設定された優先順位に基づいて、ツリー構造となるように、自身の親ノード及び子ノードを設定する。よって、ノード２０及び２１よりも優先順位が後となるノードが追加された場合は、ノード２０及び２１は、この追加されたノードを子ノードに設定することができる。この場合、ノード２０及び２１は、ノード１０から受け取ったデータを、更に、追加された子ノードに受け渡す。
【００２４】
この結果、ミラーリングシステム１００によれば、ノードの数が増加しても、ミラーリング元であるノード１０のデータ通信量の増加とＩ／Ｏレスポンスの低下とは抑制され、結果、システムにおける負荷の分散が図られる。また、多ノード環境への対応が容易になる。
【００２５】
また、本実施の形態では、図１に示すように、ノード１０は、上述したミラーリング処理部１０２及びサイト情報記憶部１０５に加えて、Ｉ／Ｏ制御部１０１と、差分管理部１０３と、データ記憶部１０４と、差分情報記憶部１０６とを備えている。
【００２６】
データ記憶部１０４は、上述したように、ミラーリング対象となるデータを記憶している。Ｉ／Ｏ制御部１０１は、ホストコンピュータ３０からの要求に応じて、データ記憶部１０４に対してデータの書込み又は読み取りを実行する。差分管理部１０３は、子ノードにおいて書込みが成功しなかった場合に、データ記憶部１０４に格納されているデータと、子ノードのデータ記憶部に格納されているデータとの差分を抽出し、抽出した情報を差分情報として差分情報記憶部１０６に記憶させる。
【００２７】
同様に、図１に示すように、ノード２０は、Ｉ／Ｏ制御部２０１と、差分管理部２０３と、データ記憶部２０４と、差分情報記憶部２０６とを備えている。ノード２１は、Ｉ／Ｏ制御部２１１と、差分管理部２１３と、データ記憶部２１４と、差分情報記憶部２１６とを備えている。ノード２０及びノード２１においても、Ｉ／Ｏ制御部、差分管理部、データ記憶部、及び差分情報記憶部、それぞれは、上述した、Ｉ／Ｏ制御部１０１、差分管理部１０３、データ記憶部１０４、及び差分情報記憶部１０６と同様に機能する。
【００２８】
また、各ノードは、サーバコンピュータで構築されており、以降においては、「サイト」と表記する。特に、ミラーリング元となるノード１０を「主サイト」１０と表記する。更に、ミラーシング先となるノード２０を「副サイト」２０、同じくノード２１を「副サイト」２１と表記する。
【００２９】
ここで、図１に加えて、図２及び図３を用いて、ミラーリングシステム１００を構成するノード間の関係について説明する。図２は、本発明の実施の形態におけるミラーリングシステムでのノード間の関係の一例を示す図である。図３は、本発明の実施の形態におけるミラーリングシステムでのノード間の関係の他の例を示す図である。
【００３０】
図２の例では、ミラーリングシステム１００は、主サイト１０、副サイト２０、及び副サイト２１に加えて、副サイト２２〜２９も備えている。また、優先順位は、ノード１０を先頭に、ノード２０〜２９の順に設定されている。
【００３１】
そして、副サイト２２〜２９のうち、優先順位が上位にある副サイト２０及び２１のみが、主サイト１０の直接の子ノードになっており、主サイト１０から直接データを受け取る。なお、副サイト２０及び２１は、他の副サイトと区別するため、「優先副サイト」と表記する。また、優先副サイトの数は特に限定されるものではない。
【００３２】
図２に示すように、サイト間（ノード間）の関係は、主サイト１０を頂点とするツリー構造となっており、複数の階層が形成されている。また、ミラーリングシステム１００においては、それを構成するサイト群は、大きく２つのサイトグループ３０１とサイトグループ３０２とに分けられ、更に、各サイトグループ内では幾つかの階層グループに分けられている。
【００３３】
具体的には、各サイトグループは１つ以上のサイトを備えている。そして、サイトグループ群において、主サイトは、１つのみ存在する。また、図２の例では、サイトグループは２種類に分けられ、サイトグループ３０１のように、主サイトを含む構成となっている場合と、サイトグループ３０２のように、主サイトを含まないで、１つ以上の副サイトのみを含む構成となっている場合とがある。
【００３４】
各サイトグループにおいて、優先副サイトは、サイトグループの枠を超えて主サイトとミラーリングを行い、更に、同サイトグループ内でその下層に位置する副サイトとの間でもミラーリングを行う。つまり、優先副サイトとその下層に位置する副サイトとの関係は、ミラーリング元サイトとミラーリング先サイトとの関係、即ち、親ノードと子ノードとの関係になる。
【００３５】
このようなミラーリング元サイトとミラーリング先サイトとの関係にある副サイトの集合が、１つの階層グループを構成している。図２の例では、サイトグループ３０１では、優先副サイト２０と、副サイト２２と、副サイト２３とで、階層グループ４０１が構成され、副サイト２２と、副サイト２６と、副サイト２７とで、階層グループ４１１が構成されている。
【００３６】
また、サイトグループ３０２では、優先副サイト２１と、副サイト２４と、副サイト２５とで、階層グループ４０２が構成され、副サイト２４と、副サイト２８と、副サイト２９とで、階層グループ４１２が構成されている。
【００３７】
そして、図２に示すミラーリングシステム１００において、新たな副サイトが追加されると、これらは、いずれかのサイトの子ノードとして追加される。例えば、図２において破線で示すように、副サイト２８の子ノードとして副サイトが新たに追加されると、追加された副サイトと副サイト２８とで、新たな階層グループ４２１が構成される。
【００３８】
また、本実施の形態において、各サイトのサイト情報管理部（図１参照）は、サイト情報として、全サイトの優先順位に加えて、自身が所属するサイトグループの識別子と、当該サイトが所属する階層グループの識別子とを記憶する。ミラーリング処理部は、これらの情報に基づいて、ミラーリング元サイト及びミラーリング先サイトを設定する。また、ミラーリング処理部は、ミラーリング処理を実行する際は、その処理にミラーリング処理番号を付与し、これをサイト情報管理部に記憶させる。
【００３９】
この結果、図２に示すようなサイトグループ及び階層グループが構成される。そして、あるサイトがミラーリングを行う場合は、同じ階層グループに属し、且つ、優先順位が後になる、サイトをミラーリング先に設定する。
【００４０】
また、図３は、サイトグループが定義されていない場合を示している。図３の例では、図２の例と異なり、優先副サイトは存在せず、主サイト１０と、副サイト２０と、副サイト２１とで、階層グループ４０３が構成されている。また、副サイト２０と、副サイト２２と、副サイト２３とで、階層グループ４１３が構成されている。
【００４１】
更に、図３においても、破線で示すように、副サイト２２の子ノードとして副サイトが新たに追加されると、追加された副サイトと副サイト２２とで、新たな階層グループ４２３が構成される。
【００４２】
［システム動作］
次に、本発明の実施の形態におけるミラーリングシステム１００及び各サイト（ノード）の動作について図４〜図９を用いて説明する。また、本実施の形態では、ミラーリングシステムを動作させることによって、ミラーリング方法が実施される。よって、本実施の形態におけるミラーリング方法の説明は、以下のミラーリングシステムの動作説明に代える。
【００４３】
［ミラーリングシステムの構築処理］
まず、図４〜図６を用いて、ミラーリングシステムの構築処理について説明する。図４は、本発明の実施の形態におけるミラーリングシステムの構築処理時の各サイトの動作を示すフロー図である。図５は、図４に示す動作を説明するための図であり、図５（ａ）及び図５（ｂ）それぞれは、一連の構築工程を示している。図６は、図４及び図５の例において用いられるサイト情報の一例を示す図である。
【００４４】
まず、前提として、各サイトのサイト情報記憶部には、図６に示すサイト情報が格納されており、サイト番号５０１のサイトが主サイトになるとする。また、サイト情報には、サイトグループ番号が付加されているとする。更に、各サイトは、優先順位が先のサイトから順に、自身よりも優先順位が後のサイトをミラーリング先サイト（子ノード）に設定するとする。
【００４５】
図４に示すように、最初に、主サイト（サイト番号５０１）において、ミラーリング処理部１０２は、サイト情報に基づいて、サイトグループ番号毎に、主サイトを除く優先番号が上位にあるサイトを優先副サイトに設定する（ステップＡ１）。結果、図５（ａ）に示す関係が構築される。また、ステップＡ１では、主サイトのミラーリング処理部１０２は、優先副サイトのサイト番号をサイト情報管理部１０５に格納させ、サイト情報を更新する。
【００４６】
次に、優先副サイトそれぞれ（サイト番号５０２及び５０３）において、ミラーリング処理部（２０２，２１２）は、サイト情報に基づき、同一のサイトグループに属し、且つ、自身よりも優先順位が後になる、副サイトから、任意の台数の副サイトを選択する。そして、ミラーリング処理部（２０２、２１２）は、選択した副サイトをミラーリング先サイトに設定する（ステップＡ２）。
【００４７】
なお、ステップＡ２において、ミラーリング先サイトとして設定した副サイトとの通信が不可能な場合は、ミラーリング処理部は、そのサイトを無視して次に優先番号の小さい副サイトをミラーリング先サイトとして選択する。
【００４８】
また、ステップＡ２では、優先副サイトのミラーリング処理部（２０２、２１２）は、自身のサイト番号と、ミラーリング先となる副サイトのサイト番号とによって、階層グループを定義し、この定義をサイト情報管理部（２０５、２１５）に格納させ、サイト情報を更新する。
【００４９】
次に、主サイト及び優先副サイトを除く副サイトにおいて、ミラーリング処理部は、サイト情報に基づき、同一のサイトグループに属し、且つ、自身よりも優先順位が後になる、副サイトから、任意の台数の副サイトを選択する。そして、ミラーリング処理部は、選択した副サイトをミラーリング先サイトに設定する（ステップＡ３）。
【００５０】
なお、ステップＡ３においても、ミラーリング先サイトとして設定した副サイトとの通信が不可能な場合は、ミラーリング処理部は、そのサイトを無視して次に優先番号の小さい副サイトをミラーリング先サイトとして選択する。また、ミラーリング処理部は、選択すべき副サイトが存在しない場合は、処理を終了する。
【００５１】
また、ステップＡ３でも、ステップＡ２と同様に、副サイトのミラーリング処理部は、自身のサイト番号と、ミラーリング先となる副サイトのサイト番号とによって、階層グループを定義し、この定義をサイト情報管理部に格納させ、サイト情報を更新する。
【００５２】
主サイト及び優先副サイトを除く、全ての副サイトにおいて、ステップＡ３が実行されると、サイト間の関係の構築処理は終了し、結果、図５（ｂ）に示すように、ミラーリングシステム１００が構築される。
【００５３】
また、図６に示すサイト情報においてサイトグループが定義されていない場合は、ステップＡ１においては、主サイト（サイト番号５０１）は、主サイトを除く優先番号が上位にある幾つかのサイトを副サイトとして選択する。その後、主サイトを除く全ての副サイトについてステップＡ３が実行される。
【００５４】
［ミラーリング処理］
続いて、図７を用いて、ミラーリングシステム１００におけるミラーリング処理について説明する。図７は、本発明の実施の形態におけるミラーリングシステムにおいて主サイトがミラーリング処理を行なう際の動作を示すフロー図である。また、以下においては、主に図１を参照する。
【００５５】
最初に、ホストコンピュータ３０から、主サイト１０のＩ／Ｏ制御部１０１に対して、Ｉ／Ｏ要求が送信されると、Ｉ／Ｏ制御部１０１は、Ｉ／Ｏ要求を受信する（ステップＢ１）。なお、Ｉ／Ｏ要求が送信されてきていない間は、Ｉ／Ｏ制御部１０１は待機状態となる。
【００５６】
次に、Ｉ／Ｏ制御部１０１は、受信したＩ／Ｏ要求の種類が書き込みであるかどうかを判定する（ステップＢ２）。ステップＢ２の判定の結果、Ｉ／Ｏ要求の種類が書き込みでない場合（読み込みである場合）は、Ｉ／Ｏ制御部１０１は、データ記憶部１０４から、要求されたデータを読み込む（ステップＢ１２）。また、Ｉ／Ｏ制御部１０１は、ホストコンピュータ３０に、読み込んだデータと処理の結果とを送信する（ステップＢ１３）。
【００５７】
一方、ステップＢ２の判定の結果、Ｉ／Ｏ要求の種類が書き込みである場合は、Ｉ／Ｏ制御部１０１と、ミラーリング処理部１０２とによって、並列に処理が開始され（ステップＢ３）、各部による以下の処理が完了すると、並列処理が終了する（ステップＢ１１）。
【００５８】
並列処理が開始されると、Ｉ／Ｏ制御部１０１は、データ記憶部１０４にデータを書き込み（ステップＢ４）、ミラーリング処理部１０２での処理の完了を待って、データの書き込み結果を、Ｉ／Ｏ要求元であるホストコンピュータ３０に通知する（ステップＢ１３）。
【００５９】
また、並列処理が開始されると、ミラーリング処理部１０２は、ミラーリング処理番号を更新する（ステップＢ５）。そして、ミラーリング処理部１０２は、ネットワーク４０を経由して、全ての優先副サイト２０及び２１に書き込みを要求し（ステップＢ６）、その上で、優先副サイト２０及び２１にデータを送信する（ステップＢ７）。
【００６０】
次に、ミラーリング処理部１０２は、各優先副サイトからの書き込み結果を受信し（ステップＢ８）、全ての優先副サイトにおいて書き込み処理が成功したかどうかを判定する（ステップＢ９）。
【００６１】
ステップＢ９の判定の結果、全ての優先副サイトにおいて書き込み処理が成功している場合は、ミラーリング処理部１０２は、処理の完了を、Ｉ／Ｏ制御部１０１に通知する。これにより、Ｉ／Ｏ制御部１０１は、ステップＢ１３を実行する。
【００６２】
一方、ステップＢ９の判定の結果、全ての優先副サイトにおいて書き込み処理が成功していない場合（１つ以上の優先副サイトが失敗している場合）は、差分管理部１０３は、差分情報記憶部１０６に格納されている差分情報を更新する（ステップＢ１０）。具体的には、差分管理部１０３は、データ記憶部１０４に格納されているデータと、優先副サイトが現時点で格納しているデータとの差分を抽出し、抽出した情報を用いて、差分情報を更新する。
【００６３】
また、ステップＢ１０が実行されると、ミラーリング処理部１０２は、後述する図８に示す処理を実行し、その後、Ｉ／Ｏ制御部１０１に処理の完了を通知する。これにより、Ｉ／Ｏ制御部１０１は、ステップＢ１３を実行する。
【００６４】
以上のステップＢ１〜Ｂ１０が実行されると、主サイト１０のミラーリング先となった優先副サイト２０及び２１においても、ミラーリング処理が行われる。この場合の処理は、上述したステップＢ３〜Ｂ１３に準じて実行される。
【００６５】
例えば、優先副サイト２０においては、Ｉ／Ｏ制御部２０１は、データ記憶部２０４にデータを書き込み（ステップＢ４）、ミラーリング処理部２０２の処理の完了を待ち、データの書き込み結果をＩ／Ｏ要求元に通知する（ステップＢ１３）。
【００６６】
また、ミラーリング処理部２０２、ミラーリング処理番号を更新し（ステップＢ５）、ネットワーク４０を経由して、同じ階層グループを構成する全ての副サイトに書き込みを要求する（ステップＢ６）。更に、ミラーリング処理部２０２は、データを転送し（ステップＢ７）、各副サイトの書き込み結果を受信し（ステップＢ８）、全ての副サイトにおいて書き込み処理が成功したかどうかを判定する（ステップＢ９）。
【００６７】
そして、全ての副サイトにおいて書き込み処理が成功している場合は、ミラーリング処理部２０２は、処理の完了を、Ｉ／Ｏ制御部２０１に通知する。一方、全ての優先副サイトにおいて書き込み処理が成功していない場合は、差分管理部２０３が、差分情報を更新する（ステップＢ１０）。その後、ミラーリング処理部２０２は、後述する図８に示す処理を実行し、Ｉ／Ｏ制御部２０１に処理の完了を通知する。ミラーリング処理部１０２における処理が終了すると、Ｉ／Ｏ制御部２０１は、ステップＢ１３を実行する。
【００６８】
［副サイトの切換処理］
続いて、図８を用いて、図７に示したステップＢ９において、副サイトにおける異常が検出された場合に、ミラーリング元サイトが、別の副サイトをミラーリング先に切り替える動作について説明する。図８は、本発明の実施の形態におけるミラーリングシステムにおいてミラーリング先で異常が検出された場合のサイトの動作を示すフロー図である。
【００６９】
図８に示すように、ミラーリング先の副サイトにおいて異常が検出されると（図７のステップＢ９でＮＯ判定）、ミラーリング処理部は、サイト情報に基づいて、選択可能な副サイトが存在しているかどうかを判定する（ステップＣ１）。なお、選択可能な副サイトとは、当該サイトよりも優先順位が上位のサイトによって選択されていない副サイトを意味する。
【００７０】
ステップＣ１の判定の結果、選択可能な副サイトが存在しない場合は、ミラーリング処理部は、処理を終了する。一方、ステップＣ１の判定の結果、選択可能な副サイトが存在する場合は、ミラーリング処理部は、優先順位に基づき、異常が検出された副サイトの代わりに、別の優先度の高い副サイトを選択し、これをミラーリング先サイトに設定する（ステップＣ２）。
【００７１】
次に、ミラーリング処理部は、新しい副サイトとの通信が可能かどうかを判定する（ステップＣ３）。ステップＣ３の判定の結果、通信が不可能であれば、ミラーリング処理部は、再度ステップＣ１を実行する。
【００７２】
一方、ステップＣ３の判定の結果、通信が可能であれば、ミラーリング処理部は、新しく設定した副サイトとの間に差分が存在しているかどうかを判定する（ステップＣ４）。ステップＣ４の判定の結果、差分が存在していない場合は、ミラーリング処理部は、サイト情報管理部に格納されているサイト情報を更新し、Ｉ／Ｏ要求元及び選択された新しい副サイトに対して、切り替え完了を通知する（ステップＣ７）。
【００７３】
ステップＣ４の判定の結果、差分が存在している場合は、ミラーリング処理部は、選択された新しい副サイトをミラーリング先として、ミラーリングを行う（ステップＣ５）。具体的には、ステップＣ５では、図７に示したステップＢ６及びＢ７が実行される。
【００７４】
ステップＣ５の実行後、ミラーリング処理部は、ミラーリング先の副サイトからの書き込み結果を受信し、書き込み処理（ミラーリング処理）が成功したかどうかを判定する（ステップＣ６）。ステップＣ６の判定の結果、ミラーリング処理に失敗した場合は、ミラーリング処理部は、選択された新しい副サイトに対して、切り替えの失敗を通知する（ステップＣ８）。
【００７５】
一方、ステップＣ６の判定の結果、ミラーリング処理に成功した場合は、ミラーリング処理部は、サイト情報管理部に格納されているサイト情報を更新し、Ｉ／Ｏ要求元及び選択された新しい副サイトに対して、切り替え完了を通知する（ステップＣ７）。
【００７６】
［主サイトの切換処理］
続いて、図９を用いて、副サイトがミラーリング先のサイトにおける異常を検出した場合の処理について説明する。図９は、本発明の実施の形態におけるミラーリングシステムにおいてミラーリング元のサイトに異常が検出された場合の副サイトの動作を示すフロー図である。
【００７７】
最初に、副サイトのミラーリング処理部が、そのミラーリング元のサイトにおける異常の発生を検出する（ステップＤ１）。次に、ミラーリング処理部は、異常が検出されたミラーリング先のサイトとミラーリングを行っていたサイト（ミラーリング先）が存在し、且つ、そのサイトが正常であるかどうかを判定する（ステップＤ２）。
【００７８】
ステップＤ２の判定の結果、正常なサイトが存在していない場合は、ミラーリング処理部は、Ｉ／Ｏ要求元及びミラーリング先の副サイトに対して、ミラーリング元の切り替えの失敗を通知する（ステップＤ６）。
【００７９】
一方、ステップＤ２の判定の結果、正常なサイトが存在している場合は、ミラーリング処理部は、そのうちの最も優先番号が上位のサイトを、新たなミラーリング元サイトに設定するため、切り替え処理を実行する（ステップＤ３）。
【００８０】
次に、ミラーリング処理部は、ステップＤ３の処理が成功したかどうかを判定する（ステップＤ４）。ステップＤ４の判定の結果、ステップＤ３の処理が成功していない場合は、ミラーリング処理部は、ステップＤ６を実行する。
【００８１】
一方、ステップＤ４の判定の結果、ステップＤ３の処理が成功している場合は、ミラーリング処理部は、サイト情報記憶部１０５に格納されているサイト情報を更新し、切り替えが完了したことをＩ／Ｏ要求元及びミラーリング先の副サイトに対して通知する（ステップＤ５）。
【００８２】
［実施の形態における効果］
以上のように、本実施の形態では、ホストコンピュータからデータを受ける主サイトは、決められた副サイトとしかデータ通信を行わないため、ミラーリング先となるサイトが増加した場合であっても、主サイトにおける負荷とデータ通信量との増加は抑制される。
【００８３】
また、サイトグループが設定されている場合（図２）、主サイトと通信を行う副サイトのサイト数は、サイトグループ、又はミラーリング先サイトを変更しない限り不変である。更に、サイトグループが定義されていない場合は、ミラーリングを行うサイトの台数を任意の台数とすることで、主サイトと通信を行う副サイトの数を固定できる。
【００８４】
［変形例］
本実施の形態において、各サイト（ツリー構造の頂点となる主サイトを除く）それぞれのミラーリング処理部は、ツリー構造の階層と１つの親ノードに従属できる子ノードの個数とで規定される式に基づいて、自身のサイトに対してミラーリング先となるサイト（親ノード）を設定することができる。
【００８５】
具体的には、まず、全サイトそれぞれに対して、サイトグループ毎に、優先順位の順に１から番号を付与する。そして、ミラーリング先の副サイトの数をｎ（ｎ＞１）、各サイトが存在する階層を「ｂ」とする。なお、階層ｂは、各サイトグループのツリーの頂点において「１」となる。この場合、各階層に存在する副サイトのミラーリング元となるサイトの番号ｙは、以下の式（１）〜（３）によって求められる。
【００８６】
ｙ＝０                  ｛ｂ＝１｝    ・・・（１）
ｙ＝１                  ｛ｂ＝２｝    ・・・（２）
ｙ＝（ｂ−３）ｎ＋２    ｛ｂ＞２｝    ・・・（３）
【００８７】
例えば、図３の例において、主サイト１０、副サイト２１、副サイト２２、副サイト２３、副サイト２４、それぞれに対して、順に、１、２、３、４、５の番号が付与されているとする。この場合、上記式（１）より、最上層（ｂ＝１）に位置する主サイト１０は、ミラーリング元となる。また、上記式（２）より、２番目の層（ｂ＝２）に位置する副サイト２１及び２２のミラーリング元は、１番の主サイト１０となる。更に、上記（３）より、３番目の層（ｂ＝３）に位置する副サイト２３及び２４のミラーリング元は、２番の副サイト２２となる。
【００８８】
［プログラム］
本実施の形態におけるプログラムは、コンピュータに、図４に示すステップＡ１、Ａ２、Ａ３のいずれかを実行させるプログラムであれば良い。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態におけるノード（サイト）を実現することができる。また、コンピュータによって主サイトを実現するのであれば、プログラムは、コンピュータに、図７に示すステップＢ１〜Ｂ１３、及び図８に示すステップＣ１〜Ｃ８を実行させるのが好ましい。更に、コンピュータによって副サイトを実現するのであれば、プログラムは、コンピュータに、図８に示すステップＣ１〜Ｃ８、図９に示すＤ１〜Ｄ５を実行させるのが好ましい。
【００８９】
また、上記の場合、コンピュータのＣＰＵ（Central Processing Unit）は、Ｉ／Ｏ制御部、ミラーリング部、及び差分管理部として機能し、処理を行なう。更に、本実施の形態では、データ記憶部、サイト情報記憶部、及び差分情報記憶部は、コンピュータに備えられたハードディスク等の記憶装置によって実現できる。また、このとき、各記憶部を実現する記憶装置は、１台であっても、複数台であっても良い。前者の場合は、１台の記憶装置の記憶領域を３つの領域に分割し、各領域を、データ記憶部、サイト情報記憶部、又は差分情報記憶部に割り当てることによって実現される。
【００９０】
ここで、実施の形態におけるプログラムを実行することによって、ノード（サイト）を実現するコンピュータについて図１０を用いて説明する。図１０は、本発明の実施の形態におけるノードを実現するコンピュータの一例を示すブロック図である。
【００９１】
図１０に示すように、コンピュータ１１０は、ＣＰＵ１１１と、メインメモリ１１２と、記憶装置１１３と、入力インターフェイス１１４と、表示コントローラ１１５と、データリーダ／ライタ１１６と、通信インターフェイス１１７とを備える。これらの各部は、バス１２１を介して、互いにデータ通信可能に接続される。
【００９２】
ＣＰＵ１１１は、記憶装置１１３に格納された、本実施の形態におけるプログラム（コード）をメインメモリ１１２に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ１１２は、典型的には、ＤＲＡＭ（Dynamic Random Access Memory）等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体１２０に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス１１７を介して接続されたインターネット上で流通するものであっても良い。
【００９３】
また、記憶装置１１３の具体例としては、ハードディスクの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス１１４は、ＣＰＵ１１１と、キーボード及びマウスといった入力機器１１８との間のデータ伝送を仲介する。表示コントローラ１１５は、ディスプレイ装置１１９と接続され、ディスプレイ装置１１９での表示を制御する。
【００９４】
データリーダ／ライタ１１６は、ＣＰＵ１１１と記録媒体１２０との間のデータ伝送を仲介し、記録媒体１２０からのプログラムの読み出し、及びコンピュータ１１０における処理結果の記録媒体１２０への書き込みを実行する。通信インターフェイス１１７は、ＣＰＵ１１１と、他のコンピュータとの間のデータ伝送を仲介する。
【００９５】
また、記録媒体１２０の具体例としては、ＣＦ（Compact Flash（登録商標））及びＳＤ（Secure Digital）等の汎用的な半導体記憶デバイス、フレキシブルディスク（Flexible Disk）等の磁気記憶媒体、又はＣＤ−ＲＯＭ（Compact Disk Read Only Memory）などの光学記憶媒体が挙げられる。
【００９６】
上述した実施の形態の一部又は全部は、以下に記載する（付記１）〜（付記１５）によって表現することができるが、以下の記載に限定されるものではない。
【００９７】
（付記１）
ネットワークで接続された複数のノードを備えるミラーリングシステムであって、
前記複数のノードそれぞれは、
前記ノード毎に設定された優先順位を特定する情報を有し、
それぞれの関係が、前記複数のノードのうちの一つを頂点とするツリー構造をとるように、前記優先順位に基づいて、自身に対する親ノード及び子ノードを設定し、
そして、前記親ノードが存在している場合に、前記親ノードから、ミラーリング対象となるデータを受け取り、前記子ノードが存在している場合に、自身が保持するデータを前記子ノードに受け渡す、
ことを特徴とするミラーリングシステム。
【００９８】
（付記２）
前記複数のノードそれぞれは、前記複数のノードのうち前記優先順位が先のノードから順に、自身よりも前記優先順位が後のノードを子ノードに設定する、
付記１に記載のミラーリングシステム。
【００９９】
（付記３）
前記複数のノードそれぞれが、自身の子ノードに不具合が生じた場合に、自身よりも前記優先順位が後の別のノードを特定し、特定したノードを新たな子ノードに設定する、付記１または２に記載のミラーリングシステム。
【０１００】
（付記４）
前記複数のノードのうち、前記ツリー構造の頂点に位置するノードに不具合が生じた場合に、不具合が生じた前記ノードの次に位置するノードが、前記ツリー構造の頂点となる、
付記１〜３のいずれかに記載のミラーリングシステム。
【０１０１】
（付記５）
前記複数のノードそれぞれは、前記ツリー構造の頂点となるノードを除き、前記ツリー構造の階層と１つの親ノードに従属できる子ノードの個数とで規定される式に基づいて、自身に対する親ノードを設定する、
付記１に記載のミラーリングシステム。
【０１０２】
（付記６）
ミラーリングシステムを構成するノードであって、
前記ミラーリングシステム構成する全ノードそれぞれに設定された優先順位を特定する情報を記憶する、情報記憶部と、
前記全ノードそれぞれの関係が、そのうちの一つを頂点とするツリー構造をとるように、前記優先順位に基づいて、当該ノードに対する親ノード及び子ノードを設定する、ミラーリング処理部と、を備え、
前記ミラーリング処理部は、前記親ノードが存在している場合に、前記親ノードから、ミラーリング対象となるデータを受け取り、前記子ノードが存在している場合に、当該ノードが保持するデータを前記子ノードに受け渡す、
ことを特徴とするノード。
【０１０３】
（付記７）
前記ミラーリング処理部が、前記全ノードのうち、当該ノード自身よりも前記優先順位が後のノードを子ノードに設定する、
付記６に記載のノード。
【０１０４】
（付記８）
前記ミラーリング処理部が、当該ノード自身の子ノードに不具合が生じた場合に、当該ノード自身よりも前記優先順位が後の別のノードを特定し、特定したノードを新たな子ノードに設定する、付記６または７に記載のノード。
【０１０５】
（付記９）
前記ミラーリング処理部が、当該ノード自身が前記ツリー構造の頂点となる場合を除き、前記ツリー構造の階層と１つの親ノードに従属できる子ノードの個数とで規定される式に基づいて、当該ノード自身に対する親ノードを設定する、
付記６に記載のノード。
【０１０６】
（付記１０）
ネットワークで接続された複数のノードを用いた方法であって、
（ａ）前記複数のノードそれぞれによって、前記ノード毎に設定された優先順位を特定する情報を保持する、ステップと、
（ｂ）前記複数のノードそれぞれによって、それぞれの関係が、前記複数のノードのうちの一つを頂点とするツリー構造をとるように、前記優先順位に基づいて、自身に対する親ノード及び子ノードを設定する、ステップと、
（ｃ）前記複数のノードそれぞれによって、前記親ノードが存在している場合に、前記親ノードから、ミラーリング対象となるデータを受け取る、ステップと、
（ｄ）前記複数のノードそれぞれによって、前記子ノードが存在している場合に、自身が保持するデータを前記子ノードに受け渡す、ステップと、
を有することを特徴とするミラーリング方法。
【０１０７】
（付記１１）
前記（ｂ）のステップにおいて、前記複数のノードそれぞれによって、前記複数のノードのうち前記優先順位が先のノードから順に、自身よりも前記優先順位が後のノードを子ノードに設定する、
付記１０に記載のミラーリング方法。
【０１０８】
（付記１２）
（ｅ）前記複数のノードそれぞれによって、自身の子ノードに不具合が生じた場合に、自身よりも前記優先順位が後の別のノードを特定し、特定したノードを新たな子ノードに設定する、ステップを更に有する、付記１０または１１に記載のミラーリング方法。
【０１０９】
（付記１３）
（ｆ）前記複数のノードのうち、前記ツリー構造の頂点に位置するノードに不具合が生じた場合に、不具合が生じた前記ノードの次に位置するノードが、前記ツリー構造の頂点となる、ステップを更に有する、付記１０〜１２のいずれかに記載のミラーリング方法。
【０１１０】
（付記１４）
前記（ｂ）のステップにおいて、前記ツリー構造の頂点となるノードを除く、前記複数のノードそれぞれによって、前記ツリー構造の階層と１つの親ノードに従属できる子ノードの個数とで規定される式に基づいて、自身に対する親ノードを設定する、
付記１０に記載のミラーリング方法。
【０１１１】
（付記１５）
ミラーリングシステムを構成するノードとして、コンピュータを機能させるためのプログラムであって、
前記コンピュータに、
（ａ）前記ミラーリングシステム構成する全ノードそれぞれに設定された優先順位を特定する情報を記憶する、ステップと、
（ｂ）前記全ノードそれぞれの関係が、そのうちの一つを頂点とするツリー構造をとるように、前記優先順位に基づいて、当該ノードに対する親ノード及び子ノードを設定する、ステップと、
（ｃ）前記親ノードが存在している場合に、前記親ノードから、ミラーリング対象となるデータを受け取る、ステップと、
（ｄ）前記子ノードが存在している場合に、当該ノードが保持するデータを前記子ノードに受け渡す、ステップと、
を実行させるプログラム。
【０１１２】
（付記１６）
前記（ｂ）のステップにおいて、前記全ノードのうち、当該ノード自身よりも前記優先順位が後のノードを子ノードに設定する、
付記１５に記載のプログラム。
【０１１３】
（付記１７）
（ｅ）当該ノード自身の子ノードに不具合が生じた場合に、当該ノード自身よりも前記優先順位が後の別のノードを特定し、特定したノードを新たな子ノードに設定する、ステップを更に前記コンピュータに実行させる、
付記１５または１６に記載のプログラム。
【０１１４】
（付記１８）
前記（ｂ）のステップにおいて、当該ノード自身が前記ツリー構造の頂点となる場合を除き、前記ツリー構造の階層と１つの親ノードに従属できる子ノードの個数とで規定される式に基づいて、当該ノード自身に対する親ノードを設定する、
付記１５に記載のプログラム。
【産業上の利用可能性】
【０１１５】
以上のように本発明によれば、ネットワークで接続された多数のノードを用いてミラーリングを行なう場合において、ミラーリング元のノードのデータ通信量の増加とＩ／Ｏレスポンスの低下とを抑制できる。本発明は、負荷の分散が求められるミラーリングシステムに有用である。
【符号の説明】
【０１１６】
１０  主サイト（ノード）
２０、２１  優先副サイト（ノード）
２２〜２９  副サイト
３０  ホストコンピュータ
４０  ネットワーク
１００  ミラーリングシステム
１０１  Ｉ／Ｏ制御部
１０２  ミラーリング処理部
１０３  差分管理部
１０４  データ記憶部
１０５  サイト情報記憶部
１０６  差分情報記憶部
１１０  コンピュータ
１１１  ＣＰＵ
１１２  メインメモリ
１１３  記憶装置
１１４  入力インターフェイス
１１５  表示コントローラ
１１６  データリーダ／ライタ
１１７  通信インターフェイス
１１８  入力機器
１１９  ディスプレイ装置
１２０  記録媒体
１２１  バス
２０１  Ｉ／Ｏ制御部
２０２  ミラーリング処理部
２０３  差分管理部
２０４  データ記憶部
２０５  サイト情報記憶部
２０６  差分情報記憶部
２１１  Ｉ／Ｏ制御部
２１２  ミラーリング処理部
２１３  差分管理部
２１４  データ記憶部
２１５  サイト情報記憶部
２１６  差分情報記憶部
３０１、３０２  サイトグループ
４０１、４０２、４０３、４１１、４１２、４１３、４２１、４２３  階層グループ
５０１  主サイト
５０２〜５０７  副サイト
【図１】
0005464675.tif 000002
【図２】
0005464675.tif 000003
【図３】
0005464675.tif 000004
【図４】
0005464675.tif 000005
【図５】
0005464675.tif 000006
【図６】
0005464675.tif 000007
【図７】
0005464675.tif 000008
【図８】
0005464675.tif 000009
【図９】
0005464675.tif 000010
【図１０】
0005464675.tif 000011