(57)【要約】【課題】共有記憶手段を備えずに、簡単な構成により低コストでデータの冗長を行なうと共に、待機系から稼動系への切換え後の動作開始までの時間をできるだけ短縮し、また片系から二重化に容易に変更できるようにした、二重化システムとそのデータ冗長方法を提供する。【解決手段】ホットスタンバイ構成で二重化され、相互に稼動系および待機系として動作する二つの装置１００，２００と、これら双方の装置を互いに接続するネットワーク３００の通信路と、を設けて、稼動系装置１００が、稼動に必要な冗長対象データ１２１を、ネットワークの通信路を介して待機系装置に送信することにより、待機系装置が、受信した稼動に必要な冗長対象データ１２１に基づいて、データの冗長を行なって、双方の装置における稼動に必要なデータを一致させるように、二重化システム１０を構成する。【選択図】      図１
2005018105.tif 000002
【特許請求の範囲】
【請求項１】
ホットスタンバイ構成で二重化され、相互に稼動系および待機系として動作する二つの装置と、
これら双方の装置を互いに接続するネットワークの通信路と、を設けて、
稼動系装置が、稼動に必要な冗長対象データを、ネットワークの通信路を介して待機系装置に送信することにより、待機系装置が、受信した稼動に必要な冗長対象データに基づいて、データの冗長を行なって、
双方の装置における稼動に必要なデータを一致させることを特徴とする、二重化システム。
【請求項２】
上記稼動系装置および待機系装置が、それぞれ稼動に必要な冗長対象データの更新を行なうデータ冗長ライブラリと、データ冗長ライブラリにより更新された冗長対象データをネットワークの通信路を介して送受信するデータ冗長モジュールと、を備えていることを特徴とする請求項１に記載の二重化システム。
【請求項３】
一方の装置のみの単独運転の際、当該装置が、データ冗長ライブラリの冗長対象データを更新することを特徴とする請求項１または２に記載の二重化システム。
【請求項４】
各装置が、冗長対象データ一括送信モジュールを備えており、
一方の装置のみの単独運転中に、他方の装置が起動されたとき、一方の装置の冗長対象データ一括送信モジュールが、他方の装置のデータ冗長モジュールに対してネットワークの通信路を介して、冗長対象データの全データを一括送信し、他方の装置が、受信した冗長対象データの全データに基づいて、データ冗長ライブラリにより冗長対象データを全更新することを特徴とする請求項２または３のいずれかに記載の二重化システム。
【請求項５】
稼動系装置から待機系装置に対してネットワークの通信路を介して稼動に必要なデータが送信されている間も、稼動系装置にて稼動に必要なデータの更新があったとき、上記稼動系装置のデータ冗長ライブラリが、冗長対象データの差分データを蓄積して、差分蓄積データを生成し、待機系装置に対する上記稼動に必要なデータの送信後に、データ冗長モジュールがこの差分蓄積データを送信することを特徴とする請求項２〜４のいずれかに記載の二重化システム。
【請求項６】
稼動系装置に障害が発生したとき、当該装置のデータ冗長モジュールが、未送信の更新された冗長対象データおよび系切換え指示をネットワークの通信路を介して待機系装置に送信すると共に、系切換え指示を送信し、
待機系装置のデータ冗長ライブラリが、受信した冗長対象データに基づいて冗長対象データを更新すると共に、稼動系への切換えを行なうことを特徴とする請求項２〜５のいずれかに記載の二重化システム。
【請求項７】
ホットスタンバイ構成で二重化され、相互に稼動系および待機系として動作する二つの装置を、互いにネットワークの通信路を介して接続して、双方の装置における稼動に必要なデータの冗長を行なう二重化システムのデータ冗長方法において、
稼動系装置にて、稼動に必要な冗長対象データを、ネットワークの通信路を介して待機系装置に送信し、
待機系装置にて、受信した稼動に必要な冗長対象データに基づいて、データの冗長を行なって、
双方の装置における稼動に必要なデータを一致させることを特徴とする、二重化システムのデータ冗長方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えばデータベースシステム等におけるホットスタンバイ構成の二重化システムに関し、そのデータ冗長のための技術に関する。
【０００２】
【従来の技術】
従来、例えばデータベースシステム等のようなコンピュータを活用したホットスタイバイ構成の二重化システムにおいては、相互に稼動系と待機系が切換え可能である二つの装置に対して、共有可能なディスク装置やＮＡＳ装置等の共有記憶手段を接続しておく。
そして、一方の装置から他方の装置への稼動系の切換えを行なう際には、実際には待機系としての一方の装置が、待機系から稼動系に変更された後、共有記憶手段に保存されている稼動のために必要なデータを読み込むことにより、稼動系として動作し得ることになる。
【０００３】
ところで、このような構成の二重化システムにおいては、双方の装置に対して共有記憶手段が接続されており、稼動に必要なデータが、この共有記憶手段に保存されている。したがって、このような共有記憶手段は廃止することが不可能であり、二重化システム全体のコストが高くなってしまうことになる。
また、一方の装置を待機系から稼動系に切換えてから、稼動系として動作する前に、共有記憶手段から稼動のために必要なデータを読み込む作業が必要である。この稼動のために必要なデータは、具体的には例えば数ＧＢ程度になることから、これらのデータの読込時間だけでも数分程度かかることになる。このため、外部から見た場合に、系の切換え後に実際に切換えられた稼動系が動作を開始するまでに時間がかかってしまうことになる。
【０００４】
これに対して、例えば特許文献１によれば、双方の装置（サーバ計算機）に関して、それぞれ更新対象の情報が格納された更新対象データベースを備えておき、双方の装置の状態に関する状態情報を備えた外部の端末計算機からの更新依頼に基づいて、各装置にて、それぞれ対応する更新対象データベースの更新を行なうようにした、二重化システムが開示されている。
【０００５】
【特許文献１】
特開２００１−１７５６０３号
【０００６】
【発明が解決しようとする課題】
しかしながら、上述した特許文献１においては、双方の装置に接続された端末計算機が必要であることから、同様に二重化システム全体のコストが高くなってしまうと共に、一方の装置のみでの単独運用を考慮して構成されていない。
【０００７】
本発明は、上記の問題を解決すべくなされたものであり、共有記憶手段を備えずに、簡単な構成により低コストでデータの冗長を行なうと共に、待機系から稼動系への切換え後の動作開始までの時間をできるだけ短縮し、また片系から二重化に容易に変更できるようにした、二重化システムとそのデータ冗長方法の提供を目的とする。
【０００８】
【課題を解決するための手段】
この目的を達成するため、本発明の請求項１記載の二重化システムは、ホットスタンバイ構成で二重化され、相互に稼動系および待機系として動作する二つの装置と、これら双方の装置を互いに接続するネットワークの通信路と、を設けて、稼動系装置が、稼動に必要な冗長対象データを、ネットワークの通信路を介して待機系装置に送信することにより、待機系装置が、受信した稼動に必要な冗長対象データに基づいて、データの冗長を行なって、双方の装置における稼動に必要なデータを一致させる構成としてある。
【０００９】
二重化システムをこのような構成とすると、一方の稼動系として実際に稼動している装置が、稼動に伴って発生する稼動に必要な冗長対象データの更新の際に、更新された冗長対象データを、ネットワークの通信路を介して、他方の待機系として待機状態に在る装置に対して送信することにより、待機系装置にて、受信した稼動に必要な冗長対象データに基づいて、稼動に必要な冗長対象データの冗長を行なう。
これにより、双方の装置における稼動に必要なデータが互いに一致することになるので、ネットワークの通信路を利用することにより、簡単な構成で低コストで容易に二重化を実現することができる。
また、稼動系と待機系との切換えの際に、即座に切換えを行なうことが可能になり、切換え後の新たな稼動系装置の動作開始までの時間が短縮されることになる。
【００１０】
請求項２記載の二重化システムは、上記稼動系装置および待機系装置が、それぞれ稼動に必要な冗長対象データの更新を行なうデータ冗長ライブラリと、データ冗長ライブラリにより更新された冗長対象データをネットワークの通信路を介して送受信するデータ冗長モジュールと、を備えている構成としてある。
【００１１】
二重化システムをこのような構成とすると、稼動系装置にて、データ冗長ライブラリが、稼動に必要な冗長対象データの更新を行なうと共に、データ冗長モジュールが、データ冗長ライブラリにより更新された冗長対象データをネットワークの通信路を介して待機系装置に送信する。
これを受けて、待機系装置にて、データ冗長モジュールが冗長対象データを受信して、データ冗長ライブラリが、データ冗長モジュールにより受信した冗長対象データに基づいて、稼動に必要な冗長対象データの更新を行なう。
これにより、稼動系装置と待機系装置において、双方の稼動に必要な冗長対象データの冗長が行なわれ、互いに一致することになる。
【００１２】
請求項３記載の二重化システムは、一方の装置のみの単独運転の際、当該装置が、データ冗長ライブラリの冗長対象データを更新する構成としてある。
【００１３】
二重化システムをこのような構成とすると、一方の装置のみの単独運転の際、すなわち一方の装置のみが動作し、他方の装置が停止しているときに、動作している稼動系装置が、その稼動に伴って発生する冗長対象データの更新に対して、データ冗長ライブラリが冗長対象データを更新する。これにより、一方の装置のみによる単独運転であっても、そのデータ冗長ライブラリが冗長対象データを最新の更新データに更新することができる。
【００１４】
請求項４記載の二重化システムは、各装置が、冗長対象データ一括送信モジュールを備えており、一方の装置のみの単独運転中に、他方の装置が起動されたとき、一方の装置の冗長対象データ一括送信モジュールが、他方の装置のデータ冗長モジュールに対してネットワークの通信路を介して、冗長対象データの全データを一括送信し、他方の装置が、受信した冗長対象データの全データに基づいて、データ冗長ライブラリにより冗長対象データを全更新する構成としてある。
【００１５】
二重化システムをこのような構成とすると、一方の装置のみの単独運転中に、他方の装置が起動されると、一方の装置の冗長対象データ一括送信モジュールが、そのときまでの冗長対象データに関する全更新データを、ネットワークの通信路を介して、起動された他方の装置に対して一括送信する。これを受けて、他方の装置では、データ冗長ライブラリが、受信した冗長対象データの全データに基づいて、冗長対象データの全更新を行なう。これにより、他方の装置が待機系装置として起動されたとき、そのデータ冗長ライブラリが、即時に稼動系として動作している一方の装置から一括送信されてくる冗長対象データに関する全更新データに基づいて、冗長対象データを全更新する。したがって、他方の装置が待機系として起動されると直ぐに、その冗長対象データが、単独運転により稼動系として動作している一方の装置の冗長対象データと一致することになり、いつでも稼動系を待機系に切換えることが可能になる。
【００１６】
請求項５記載の二重化システムは、稼動系装置から待機系装置に対してネットワークの通信路を介して稼動に必要なデータが送信されている間も、稼動系装置にて稼動に必要なデータの更新があったとき、上記稼動系装置のデータ冗長ライブラリが、冗長対象データの差分データを蓄積して、差分蓄積データを生成し、待機系装置に対する上記稼動に必要なデータの送信後に、データ冗長モジュールがこの差分蓄積データを送信する構成としてある。
【００１７】
二重化システムをこのような構成とすると、稼動系装置から待機系装置への冗長対象データの送信中に発生する稼動系装置における冗長対象データの更新に基づいて、稼動系装置のデータ冗長ライブラリが、冗長対象データの差分データを蓄積して、差分蓄積データとしてネットワークの通信路を介して待機系装置に送信する。これにより、待機系装置では、稼動系装置で発生する冗長対象データの更新データに関して、ネットワークの通信路を介して洩れなく受信して、そのデータ冗長ライブラリが冗長対象データを更新することになる。
【００１８】
請求項６記載の二重化システムは、稼動系装置に障害が発生したとき、当該装置のデータ冗長モジュールが、未送信の更新された冗長対象データをネットワークの通信路を介して待機系装置に送信すると共に、系切換え指示を送信し、待機系装置のデータ冗長ライブラリが、受信した冗長対象データに基づいて冗長対象データを更新すると共に、稼動系への切換えを行なう構成としてある。
【００１９】
二重化システムをこのような構成とすると、稼動系装置に何らかの障害が発生した場合には、稼動系装置のデータ冗長モジュールが、更新された冗長対象データのうち、まだ待機系装置に送信していない冗長対象データと系切換え指令をネットワークの通信路を介して待機系装置に送信する。これを受けて、待機系装置では、データ冗長ライブラリが、受信した冗長対象データに基づいて、冗長対象データを更新する。これにより、待機系装置における冗長対象データは、そのときの稼動系装置における冗長対象データと一致することになる。
そして、待機系装置は、系切換え指示に基づいて、即座に待機系から稼動系に切換えられ、稼動系として動作を開始することになる。
【００２０】
また、上記目的を達成するため、本発明の請求項７記載の二重化システムのデータ冗長方法は、ホットスタンバイ構成で二重化され、相互に稼動系および待機系として動作する二つの装置を、互いにネットワークの通信路を介して接続して、双方の装置における稼動に必要なデータの冗長を行なう二重化システムのデータ冗長方法において、稼動系装置にて、稼動に必要な冗長対象データを、ネットワークの通信路を介して待機系装置に送信し、待機系装置にて、受信した稼動に必要な冗長対象データに基づいて、データの冗長を行なって、双方の装置における稼動に必要なデータを一致させる方法としてある。
本発明は、このように方法としても実現化することができる。
【００２１】
このようにして、本発明によれば、稼動系装置と待機系装置が、稼動に必要なデータを共通記憶手段に記憶させるのではなく、ネットワークの通信路を介して稼動系装置から待機系装置に対して逐次送信することにより、双方の装置における稼動に必要なデータの冗長を行なって、データを一致させるようにしている。
したがって、従来のような共通記憶手段を設ける必要がなく、比較的コストの低いネットワークを利用してホットスタンバイ方式の二重化システムを構成していることから、簡単な構成により、低コストで構成することが可能である。
また、一方の装置のみの単独運転から、他方の装置を起動して、双方の装置における稼動に必要なデータの冗長を行なって、二重化することが可能である。
さらに、双方の装置における稼動に必要なデータが常に一致していることから、待機系から稼動系への切換えの際に、即座に新たな稼動系を動作させることが可能である。
【００２２】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照して説明する。
なお、以下の実施形態における各装置での処理は、プログラムに制御されたコンピュータにより実行される。記録媒体としては、例えば磁気ディスク，半導体メモリ，その他の任意のコンピュータで読み取り可能なものを使用することができる。また、記録媒体に記録されたプログラムは、記録媒体を直接コンピュータに装着して当該コンピュータに読み込ませてもよく、また通信回線を介してコンピュータに読み込ませてもよい。
【００２３】
本発明の二重化システムの一実施形態について、図１乃至図４を参照して説明する。
図１は、本実施形態の二重化システムの構成を示すブロック図である。
【００２４】
図１に示すように、二重化システム１０は、第一の装置１００と、第二の装置２００と、ネットワーク３００と、を設けてあり、いわゆるホットスタンバイ方式の二重化システムを構成している。
【００２５】
ここで、ネットワーク３００は、例えば構内ＬＡＮまたは専用回線網等のネットワークであって、第一の装置１００と第二の装置とを相互に接続するものであるが、一般公衆回線網等を利用したネットワークであってもよい。
【００２６】
第一の装置１００および第二の装置は、互いに同じ構成であるので、第一の装置について説明する。
尚、図示の場合、第一の装置１００は、稼動系装置として動作しており、第二の装置２００は、待機系装置として待機状態になっている。
【００２７】
第一の装置１００は、適宜の箇所に設けられた情報管理装置としてのサーバから構成されており、各種サービスを実行するためのアプリケーション群１１０がインストールされることによって構成されると共に、データ冗長ライブラリ１２０と、データ冗長モジュール１３０と、冗長対象データ一括送信モジュール１４０と、ローカルディスク装置１５０と、を有している。
【００２８】
同様に、第二の装置２００は、アプリケーション群２１０がインストールされることによって構成されると共に、データ冗長ライブラリ２２０と、データ冗長モジュール２３０と、冗長対象データ一括送信モジュール２４０と、ローカルディスク装置２５０と、を有している。
ここで、これらのアプリケーション群２１０，データ冗長ライブラリ２２０，データ冗長モジュール２３０，冗長対象データ一括送信モジュール２４０およびローカルディスク装置２５０は、それぞれ第一の装置１００におけるアプリケーション群１１０，データ冗長ライブラリ１２０，データ冗長モジュール１３０，冗長対象データ一括送信モジュール１４０およびローカルディスク装置１５０と同じ構成であるので、その説明を省略する。
【００２９】
上記アプリケーション群１１０は、第一の装置１００にインストールされて、動作することにより、例えばデータベースシステム等としてのホットスタイバイ方式のサービスを実施する。
そして、アプリケーション群１１０は、その動作中に、動作に必要なデータが更新されると、更新データ１１１を作成して、データ冗長ライブラリ１２０に渡す。
【００３０】
上記データ冗長ライブラリ１２０は、上記アプリケーション群１１０に対してリンクされていて、アプリケーション群１１０から渡された更新データ１１１に基づいて、冗長対象データ１２１を設定する。
このデータ冗長ライブラリ１２０による冗長対象データ１２１の設定は、随時、例えば所定時間毎に行なわれるようになっている。
【００３１】
ここで、上記データ冗長モジュール１３０は、その起動時に、ネットワーク３００の通信路を介して、他方の第二の装置２００のデータ冗長モジュール２３０に対して、起動通知１３１を送信するようになっている。
同様にして、第二の装置２００のデータ冗長モジュール２３０も、その起動時に、ネットワーク３００の通信路を介して、第一の装置１００のデータ冗長モジュール１３０に対して、起動通知２３１を送信するようになっている。
さらに、これらのデータ冗長モジュール１３０，２３０は、障害発生時に、系切換え指示１３２，２３２を他方の装置２００，１００のデータ冗長モジュール２３０，１３０に対して送信するようになっている。
【００３２】
これにより、データ冗長ライブラリ１２０は、待機系の第二の装置２００が起動されて、第二の装置２００からネットワーク３００の通信路そしてデータ冗長モジュール１３０を介して送られてくる起動通知２３１を受け取ったとき、この起動通知を受け取った時点以後にアプリケーション群１１０で発生する更新データ１１１については、この更新データ１１１に基づいて冗長対象データ１２１を設定すると共に、この更新データ１１１をデータ冗長モジュール１３０に送る。
【００３３】
また、上記データ冗長ライブラリ１２０は、データ冗長モジュール１３０から上述した起動通知２３１を受け取ると、この起動通知２３１に基づいて、冗長対象データ一括送信モジュール１４０に一括送信指示１２２を送信して、この冗長対象データ一括送信モジュール１４０により、冗長対象データ１２１の先頭アドレスから終了アドレスまでの全データを、ネットワーク３００の通信路を介して第二の装置２００のデータ冗長モジュール２３０に対して一括送信させる。
【００３４】
上記データ冗長モジュール１３０は、冗長対象データ一括送信モジュール１４０により冗長対象データ１４０の一括送信を行なっている間に、アプリケーション群１１０で発生する更新データ１１１を、差分データとして、ローカルディスク装置１５０内の差分蓄積データ１５１に追加保存する。
【００３５】
そして、上記データ冗長モジュール１３０は、冗長対象データ一括送信モジュール１４０による冗長対象データ１４０の一括送信が終了して、処理終了通知１４１を受け取ると、ローカルディスク装置１５０内の差分蓄積データ１５１を読み出して、差分蓄積データ１５１の先頭アドレスから順に、ネットワーク３００の通信路を介して、第二の装置２００のデータ冗長モジュール２３０に対して送信する。
この場合、データ冗長モジュール１３０は、ローカルディスク装置１５０内の差分蓄積データ１５１を先頭から順次に読み出して送信すると共に、これと並行して、新たな差分データを順次に差分蓄積データ１５１の最後尾に追加するようになっている。
【００３６】
このようにして、待機系の第二の装置２００の起動の際には、第一の装置１００から冗長対象データ１２１が第二の装置２００に対して一括送信されると共に、これと並行して、新たに発生する更新データ１１１による差分蓄積データ１５１が第二の装置２００に対して逐次送信される。そして、差分蓄積データ１５１がなくなったとき、双方の装置１００，２００の冗長対象データが互いに一致することになる。
その後は、第一の装置１００のデータ冗長モジュール１３０は、稼動系の第一の装置１００のアプリケーション群１１０で発生する新たな更新データ１１１を、差分蓄積データ１５１に追加することなく、直接にネットワーク３００の通信路を介して、第二の装置２００のデータ冗長モジュール２３０に対して送信する。
【００３７】
また、データ冗長モジュール１３０は、第一の装置１００が待機系として動作しているときには、稼動系である第二の装置２００のデータ冗長モジュール２３０または冗長対象データ一括送信モジュール２４０からネットワーク３００の通信路を介して送信されてくる冗長対象データ１２１または差分蓄積データ１５１または更新データ１１１を受信したとき、受信したこれらのデータに基づいて、データ冗長ライブラリ１２０の冗長対象データ１２１を更新し、第二の装置２００における更新された冗長対象データの内容を反映させるようになっている。
【００３８】
上記冗長対象データ一括送信モジュール１４０は、データ冗長ライブラリ１２０から一括送信指令１２２を受け取ったとき、データ冗長ライブラリ１２０から冗長対象データ１２１を読み出して、その先頭アドレスから終了アドレスまでの全データを、ネットワーク３００の通信路を介して第二の装置２００のデータ冗長モジュール２３０に対して一括送信する。
そして、上記冗長対象データ一括送信モジュール１４０は、上記冗長対象データ１２１の全データの一括送信が終了すると、処理終了通知１４１をデータ冗長モジュール１３０に対して送信する。
【００３９】
上記ローカルディスク装置１５０は、第一の装置１００にケーブル等を介して接続されており、アプリケーション群１１０の動作時に、動作に必要なデータや一時ファイル等が保存されると共に、上述したように、待機系の第二の装置２００の起動の際に、冗長対象ファイル一括モジュール１４０が冗長対象データ１２１を一括送信している間に、データ冗長モジュール１３０が、並行して、データ冗長ライブラリ１２０から新たに発生した更新データ１１１を受け取ったとき、この更新データの差分データを、差分蓄積データ１５１に追加保存するようになっている。
【００４０】
次に、本実施形態の二重化システムによるデータ冗長方法について、図２〜図４を参照して説明する。
二重化システムは、図２に示す単独運転時のデータ冗長作業，図３に示す待機系の起動時のデータ冗長作業そして図４に示す稼動系の障害発生による系切換え作業の各ステップで利用される。
【００４１】
まず、単独運転時のデータ冗長作業について、第一の装置１００のみが稼動系として稼動し、第二の装置２００が停止している場合を例として、図２を参照して説明する。
図２において、符号Ａ１で示すように、稼動系である第一の装置１００は、アプリケーション群１１０が動作することにより、所定のサービスを実施する。これにより、符号Ａ２で示すように、アプリケーション群１１０が、動作に必要なデータに関して更新データ１１１を生成し、符号Ａ３で示すように、データ冗長ライブラリ１２０に渡す。
これを受けて、データ冗長ライブラリ１２０は、符号Ａ４で示すように、この更新データ１１１に基づいて、冗長対象データ１２１を設定する。
【００４２】
このようにして、第一の装置１００は、その単独運転中、アプリケーション群１１０の動作により動作に必要なデータの更新が発生すると、その都度上記動作を繰り返して、更新データ１１１を生成し、データ冗長ライブラリ１２０に渡して、データ冗長ライブラリ１２０が冗長対象データ１２１を設定する。
これにより、データ冗長ライブラリ１２０のデータ対象データ１２１は、アプリケーション群１１０の動作に伴って発生する更新に対応して、常に最新のものに設定されることになる。
以上で、単独運転時のデータ冗長作業が完了する。
【００４３】
次に、待機系の起動時のデータ冗長作業について、第一の装置１００のみが稼動系として稼動している状態で、第二の装置２００が起動される場合を例として、図３を参照して説明する。
図３において、第一の装置１００が稼動系として稼動している状態にて、符号Ｂ１で示すように、第二の装置２００が起動されると、第二の装置２００におけるアプリケーション群２１０は、稼動系の第一の装置１００が存在していることにより、符号Ｂ２で示すように、待機状態となる。
そして、第二の装置２００のデータ冗長モジュール２３０は、当該装置２００の冗長対象データを第一の装置１００の冗長対象データと一致化を開始するために、符号Ｂ３で示すように、起動通知２３１をネットワーク３００の通信路を介して、さらに第一の装置１００のデータ冗長モジュール１３０を介してデータ冗長ライブラリ１２０に送信する。
【００４４】
これにより、データ冗長ライブラリ１２０は、符号Ｂ４で示すように、この起動通知２３１に基づいて、冗長対象データ一括送信モジュール１４０に対して一括送信指示１２２を送信する。
これを受けて、冗長対象データ一括送信モジュール１４０は、符号Ｂ５で示すように、この一括送信指示１２２に基づいて、データ冗長ライブラリ１２０から冗長対象データ１２１の全データを、ネットワーク３００の通信路を介して、第二の装置２００のデータ冗長モジュール２３０に対して一括送信する。
【００４５】
これにより、第二の装置２００のデータ冗長モジュール２３０は、符号Ｂ６で示すように、受信した冗長対象データ１２１の全データに基づいて、データ冗長ライブラリ２２０の冗長対象データ２２１を全更新して、第一の装置１００における冗長対象データ１２１の全内容を反映させる。
【００４６】
その際、データ冗長ライブラリ１２０は、符号Ｂ７で示すように、この起動通知を受け取った時点以後にアプリケーション群１１０で発生する更新データ１１１については、符号Ｂ８で示すように、この更新データ１１１に基づいて冗長対象データ１２１を設定すると共に、符号Ｂ９で示すように、この更新データ１１１をデータ冗長モジュール１３０に送る。
これを受けて、データ冗長モジュール１３０は、符号Ｂ１０で示すように、この更新データ１１１を差分データとして、ローカルディスク装置１５０内の差分蓄積データ１５１の最後尾に追加保存する。
【００４７】
そして、冗長対象データ一括送信モジュール１４０は、冗長対象データ１２１の全データの一括送信が終了すると、符号Ｂ１１で示すように、処理終了通知１４１をデータ冗長モジュール１３０に送信する。
これを受けて、データ冗長モジュール１３０は、符号Ｂ１２で示すように、ローカルディスク装置１５０内の差分蓄積データ１５１を先頭から順次に読み出して、ネットワーク３００の通信路を介して、第二の装置２００のデータ冗長モジュール２３０に対して送信する。
【００４８】
これに対して、第二の装置２００のデータ冗長モジュール２３０は、第一の装置１００のデータ冗長モジュール１３０から送られてくる差分蓄積データ１５１を受信して、符号Ｂ１３で示すように、受信した差分蓄積データ１５１に基づいて、データ冗長ライブラリ２２０の冗長対象データ２２１を更新して、第一の装置１００におけるその後に更新された冗長対象データ１２１の内容を反映させる。
この場合、ローカルディスク装置１５０内の差分蓄積データ１５１は、データ冗長モジュール１３０による送信中も、アプリケーション群１１０にて更新が発生すると、逐次その最後尾に差分データが追加保存されているので、データ冗長モジュール１３０は、差分蓄積データ１５１のサイズが０になるまで、その送信を継続するようになっている。
【００４９】
これにより、第一の装置１００と第二の装置２００における動作に必要な冗長対象データ１２１が互いに一致することになり、その後は、第一の装置１００におけるデータ冗長モジュール１３０は、符号Ｂ１４に示す新たに生成された更新データ１１１について、符号Ｂ１５に示すように、データ冗長ライブラリ１２０から冗長対象データ１２１に対する更新データ１１１を受け取ったとき、上述した差分データの差分蓄積データ１５１へ追加保存を行なうことなく、符号Ｂ１６に示すように、この更新データ１１１をそのままネットワーク３００の通信路を介して、第二の装置２００のデータ冗長モジュール２３０に対して送信する。
これを受けて、第二の装置２００のデータ冗長モジュール２３０は、符号Ｂ１７に示すように、データ冗長ライブラリ２２０の冗長対象データ２２１を更新する。
【００５０】
そして、その後は、第一の装置１００のアプリケーション群１１０に更新が発生する都度、符号Ｂ１４〜Ｂ１７に示す上記動作を繰り返すことにより、更新データ１１１が、第二の装置２００のデータ冗長モジュール２３０に送信されて、第二の装置２００における冗長対象データ２２１に反映されることにより、双方の装置１００，２００の冗長対象データ１２１，２２１が常に互いに一致することになり、データの冗長が行なわれて、二重化が実現されることになる。
【００５１】
次に、稼動系の障害発生による系切換え作業について、第一の装置１００が稼動系として稼動し、第二の装置２００が待機系として待機している状態にて、稼動系である第一の装置１００に障害が発生した場合を例として、図４を参照して説明する。
図４において、符号Ｃ１で示すように、第一の装置１００のアプリケーション群１１０に障害が発生すると、アプリケーション群１１０からデータ冗長ライブラリ１２０を介してデータ冗長モジュール１３０に対して、符号Ｃ２で示すように、障害通知１１２が送られる。
【００５２】
これにより、データ冗長モジュール１３０は、符号Ｃ３で示すように、未送信の更新データ１１１をネットワーク３００の通信路を介して、待機系である第二の装置２００のデータ冗長モジュール２３０に対して送信する。
これを受けて、第二の装置２００のデータ冗長モジュール２３０は、符号Ｃ４で示すように、データ冗長ライブラリ２２０の冗長対象データ２２１を更新する。
これにより、第二の装置２００の冗長対象データ２２１には、第一の装置１００における障害発生直前の冗長対象データ１２１の内容が反映されることになる。
【００５３】
続いて、データ冗長モジュール１３０は、符号Ｃ５で示すように、系切換え指示１３２をネットワーク３００の通信路を介して、待機系である第二の装置２００のデータ冗長モジュール２３０に対して送信し、その後符号Ｃ６で示すように、第一の装置１００が動作を停止する。
これを受けて、第二の装置２００のデータ冗長モジュール２３０は、符号Ｃ７で示すように、系切換え指示１３２に基づいて、データ冗長ライブラリ２２０を介してアプリケーション群２１０について稼動系への切換えを行なう。
【００５４】
これにより、第二の装置２００のアプリケーション群２１０は、符号Ｃ８で示すように、待機状態を終了して、稼動状態に移行するために、動作に必要な初期データ（図示せず）をローカルディスク装置２５０から読み込んで、符号Ｃ９で示すように、稼動状態となり、サービスを開始する。
その後は、稼動系である第二の装置２００は、第一の装置１００が停止していることから、図２に示した単独運転を行ない、そのアプリケーション群２１０に更新が発生したときには、更新データ２１１を作成して、冗長対象データ２２１を設定する。
【００５５】
このようにして、稼動系の第一の装置１００に障害が発生したときには、直ぐに待機系の第二の装置２００に対して切換えが行なわれると共に、その際第一の装置１００から第二の装置２００へ未送信の冗長対象データ１２１の送信および第二の装置２００における動作に必要な初期データの読込のみが必要であることから、切換えからサービス開始までの時間が極めて短くて済むことになる。
【００５６】
上述した実施形態においては、データ冗長モジュール１３０は、新たに発生した冗長対象データ１２１の更新データまたは差分蓄積データ１５１をネットワーク３００の通信路を介して第二の装置２００に対していきなり送信するようになっているが、これに限らず、送信前に、データ送信の開始指令を送信するようにしてもよい。これにより、第二の装置２００では、データ冗長モジュール２３０がこの開始指令を受信することにより、データ受信の準備をすることができる。
【００５７】
【発明の効果】
以上のように、本発明によれば、稼動系装置と待機系装置が、稼動に必要なデータを共通記憶手段に記憶させるのではなく、ネットワークの通信路を介して稼動系装置から待機系装置に対して逐次送信することにより、双方の装置における稼動に必要なデータの冗長を行なって、データを一致させるようにしている。
したがって、従来のような共通記憶手段を設ける必要がなく、比較的コストの低いネットワークを利用してホットスタンバイ方式の二重化システムを構成していることから、簡単な構成により、低コストで構成することが可能である。
また、一方の装置のみの単独運転から、他方の装置を起動して、双方の装置における稼動に必要なデータの冗長を行なって、二重化することが可能である。
さらに、双方の装置における稼動に必要なデータが常に一致していることから、待機系から稼動系への切換えの際に、即座に新たな稼動系を動作させることが可能である。
【図面の簡単な説明】
【図１】本発明の一実施形態の二重化システムの構成を示すブロック図である。
【図２】図１の二重化システムにおける単独運転時のデータ冗長作業を示すフローチャートである。
【図３】図１の二重化システムにおける待機系の起動時のデータ冗長作業を示すフローチャートである。
【図４】図１の二重化システムにおける稼動系の障害発生時の系切換え作業を示すフローチャートである。
【符号の説明】
１０  二重化システム
１００  第一の装置
１１０  アプリケーション群
１１１  更新データ
１１２  障害通知
１２０  データ冗長ライブラリ
１２１  冗長対象データ
１２２  一括送信指示
１３０  データ冗長モジュール
１３１  起動通知
１３２  系切換え指示
１４０  冗長対象データ一括送信モジュール
１４１  処理終了通知
１５０  ローカルディスク装置
１５１  差分蓄積データ
２００  第二の装置
２１０  アプリケーション群
２２０  データ冗長ライブラリ
２２１  冗長対象データ
２３０  データ冗長モジュール
２３１  起動通知
２４０  冗長対象データ一括送信モジュール
２５０  ローカルディスク装置
３００  ネットワーク
【図１】
2005018105.tif 000003
【図２】
2005018105.tif 000004
【図３】
2005018105.tif 000005
【図４】
2005018105.tif 000006