JP5870174B1 - データ送信システム - Google Patents
データ送信システム Download PDFInfo
- Publication number
- JP5870174B1 JP5870174B1 JP2014191046A JP2014191046A JP5870174B1 JP 5870174 B1 JP5870174 B1 JP 5870174B1 JP 2014191046 A JP2014191046 A JP 2014191046A JP 2014191046 A JP2014191046 A JP 2014191046A JP 5870174 B1 JP5870174 B1 JP 5870174B1
- Authority
- JP
- Japan
- Prior art keywords
- data
- data transmission
- transmission device
- address
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】冗長構成のデータベースシステムのスレーブサーバに発生した障害を自動検出し、データベースシステムの冗長化を保ってデータを損失させることなくデータのレプリケーションを継続し、短時間でデータベースシステムの運用を再開させる。【解決手段】スレーブサーバ2は、非同期レプリケーション用IPアドレスである自身のアドレス宛のデータ要求信号を受信した場合に(S2)、スレーブサーバ3にデータを送信する(S3)。マスターサーバ1は、自身のアドレス宛のデータ要求信号を受信した場合に、スレーブサーバ3にデータを送信する。マスターサーバ1は、スレーブサーバ2の障害を検出した場合に(S21:障害あり)、自身のアドレスを非同期レプリケーション用IPアドレスに変更する(S41)。【選択図】図4
Description
本発明は、冗長構成のデータベースシステムのスレーブサーバに発生した障害を自動検出し、データベースシステムの冗長化を保ってデータを損失させることなくデータのレプリケーションを継続し、短時間でデータベースシステムの運用を再開させるための技術に関する。
運用中に書き換えが発生するデータベースシステムでは、一部のサーバに障害が発生した場合にもデータの損失を回避して運用を継続するために、複数のサーバ間でデータのレプリケーション(複製)を行う必要がある。
高可用性が要求されるデータベースシステムでは、マスターサーバとスレーブサーバを用いたサーバ構成とし、かつサーバ間におけるデータの整合性を保証するため、マスターサーバと地理的に近い拠点にスレーブサーバを配置し、それらのサーバ間で同期レプリケーションを行うのが一般的である。また、このようなサーバ間におけるレプリケーションでは、非特許文献1で示されているように差分レプリケーション方式をとる場合が多い。
さらに近年では、広域災害によるデータベースの損失を避けるため、マスターサーバと地理的に近い拠点のスレーブサーバに加え、地理的に遠隔にある拠点にもスレーブサーバを配置し、複数のスレーブサーバの縦続接続構成によるカスケードレプリケーションを行う場合がある。地理的に近い拠点に置いたスレーブサーバはデータベースの整合性を保証するために同期レプリケーションを行い、地理的に遠隔にある拠点のスレーブサーバは同期レプリケーションまたは非同期レプリケーションを行う。図1に、カスケードレプリケーション構成のデータベースシステムの一例を示す。
上記のシステムにおいてデータの可用性を向上させるためには、マスターサーバ1に接続しているスレーブサーバ2に障害が発生した際に、マスターサーバ1におけるデータの運用停止時間および後続のスレーブサーバ3に対するデータのレプリケーションに要する時間を、最小限にとどめる必要がある。
堀米紀貴、徳永茂樹、三上高太朗「分散システムにおける効果的なレプリケーション方式の提案」、信学会総合大会B-18-6, 2012.
図1のように、データベースの整合性を保証するためにマスターサーバ1とスレーブサーバ2の間で差分データの同期レプリケーションを行い、かつスレーブサーバ2とスレーブサーバ3の間で差分データの非同期レプリケーションを行う、カスケードレプリケーション構成のデータベースシステムにおいて、スレーブサーバ2に障害が発生すると、マスターサーバ1および後続のスレーブサーバ3には障害が発生していないにもかかわらず、マスターサーバ1はレプリケーションを行えないため、スレーブサーバ2が回復するまでデータベースは運用停止に陥ってしまうという問題点を有していた。ここでは、運用条件として、マスターサーバ1に加えて、必ずスレーブサーバが最低1台運用されていることと仮定している。
本発明は、冗長構成のデータベースシステムのスレーブサーバに発生した障害を自動検出し、データベースシステムの冗長化を保ってデータを損失させることなくデータのレプリケーションを継続し、短時間でデータベースシステムの運用を再開させるための技術を提供することを目的とする。
本発明のデータ送信システムは、第1のデータ送信装置と第2のデータ送信装置を含むデータ送信システムであって、前記データ送信システムは、予め定められたレプリケーション用アドレス宛のデータ要求信号を送出するデータ受信装置とともに用いられ、前記第1のデータ送信装置は、前記レプリケーション用アドレスである当該第1のデータ送信装置のアドレス宛のデータ要求信号を受信した場合に、前記データ受信装置にデータを送信する手段を備え、前記第2のデータ送信装置は、該第2のデータ送信装置のアドレス宛のデータ要求信号を受信した場合に、前記データ受信装置にデータを送信する手段と、前記第1のデータ送信装置の障害を検出した場合に、前記第2のデータ送信装置のアドレスを前記レプリケーション用アドレスに変更する手段とを備えることを特徴とする。
例えば、前記第2のデータ送信装置は、前記第1のデータ送信装置の障害からの回復を検出した場合に、前記第2のデータ送信装置のアドレスを前記レプリケーション用アドレスに変更する前のアドレスに変更する手段を備える。
例えば、前記第2のデータ送信装置は、前記第1のデータ送信装置の障害を検出した場合に、データを送信しないように前記第1のデータ送信装置を設定する。
例えば、前記第2のデータ送信装置は、前記第1のデータ送信装置の障害からの回復を検出した場合に、データを送信するように前記第1のデータ送信装置を設定する。
例えば、前記第2のデータ送信装置は、前記第1のデータ送信装置から前記データ受信装置に送信されるデータを予め当該第1のデータ送信装置に送信するものであり、前記第1のデータ送信装置の障害を検出した場合に、前記第1のデータ送信装置に送信するデータの運用を停止し、前記第2のデータ送信装置のアドレスを前記レプリケーション用アドレスに変更したなら、当該データの運用を再開する。
例えば、前記第2のデータ送信装置は、前記第1のデータ送信装置から前記データ受信装置に送信されるデータを予め当該第1のデータ送信装置に送信するものであり、前記第1のデータ送信装置の障害からの回復を検出した場合に、障害により停止した前記第1のデータ送信装置へのデータの送信を再開する。
例えば、前記第2のデータ送信装置は、前記第1のデータ送信装置へのデータの送信を再開するに際し、前記第2のデータ送信装置の全データを前記第1のデータ送信装置に送信する。
例えば、前記第2のデータ送信装置は、前記第1のデータ送信装置へのデータの送信を再開するに際し、前記データ受信装置へのデータ送信を停止し、前記データ受信装置に送信したが前記第1のデータ送信装置には送信していない全データを当該第1のデータ送信装置に送信して当該第1のデータ送信装置のデータに反映させる。
本発明のデータ送信システムによれば、冗長構成のデータベースシステムのスレーブサーバに発生した障害を自動検出し、データベースシステムの冗長化を保ってデータを損失させることなくデータのレプリケーションを継続し、短時間でデータベースシステムの運用を再開させることができる。
以下、本発明の実施の形態について図面を参照して説明する。
図1は、本発明を適用するカスケードレプリケーション構成のデータベースシステムの一例を示す図である。
例えば、第1拠点にマスターサーバ1とスレーブサーバ2が配置され、遠隔地である第2拠点にスレーブサーバ3が配置される。課題を解決する手段にある各装置とは、マスターサーバ1が第2のデータ送信装置、スレーブサーバ2が第1のデータ送信装置、スレーブサーバ3がデータ受信装置に、それぞれ対応する。マスターサーバ1はスレーブサーバ2に対し同期レプリケーションを実施し、スレーブサーバ2はスレーブサーバ3に非同期レプリケーションを実施する。マスターサーバ1は、同期レプリケーションで送信するデータを自身のデータベース(以下、DB)部に記憶している。スレーブサーバ2は、同期レプリケーションで受信するデータを自身のDB部に記憶し、DB部のデータを非同期レプリケーションでスレーブサーバ3に送信する。スレーブサーバ3は、非同期レプリケーションで受信するデータを自身のDB部に記憶する。また、マスターサーバ1は、データベース利用者が利用する端末などからの要求により、自身のDB部に記憶したデータを運用する。
スレーブサーバ3は、ここでは、予め定められたIPアドレス(以下、非同期レプリケーション用IPアドレス)を宛先とするデータ要求信号を送出し、非同期レプリケーション用IPアドレスが設定されたスレーブサーバ2またはマスターサーバ1から非同期レプリケーションを受ける。
当初、非同期レプリケーション用IPアドレスはスレーブサーバ2のアドレスなので、スレーブサーバ2から非同期レプリケーションを受け、その後、スレーブサーバ2に障害が発生し、非同期レプリケーション用IPアドレスはマスターサーバ1のアドレスになるので、マスターサーバ1から非同期レプリケーションを受け、その後、マスターサーバ1のアドレスが元のアドレスに変更されるので、スレーブサーバ2から非同期レプリケーションを受けることとなる。
図2は、図1に示すデータベースシステムの論理的な構成例を示す図である。
マスターサーバ1は、コントローラ部11、DB部12、通信インタフェース部13、14を備える。スレーブサーバ2は、コントローラ部21、DB部22、通信インタフェース部23、24を備える。スレーブサーバ3は、コントローラ部31、DB部32、通信インタフェース部33、34を備える。マスターサーバ1とスレーブサーバ2は通信回線15で接続され、スレーブサーバ2とスレーブサーバ3は通信回線25で接続される。
図3は、図1に示すデータベースシステムの物理的な構成例を示す図である。
図3は、マスターサーバ1とスレーブサーバ2とスレーブサーバ3を通信回線とルータとスイッチ等の通信装置で結ぶ物理的な構成例を示す。このような構成の場合、スレーブサーバ2が障害発生による停止等で機能していない場合であっても、スレーブサーバ2を迂回し、マスターサーバ1とスレーブサーバ3を接続する迂回通信回線を用意する必要はない。また、マスターサーバ1とスレーブサーバ2との接続は複数の回線があるため、1つの回線が切断したとしても、互いの装置間通信により状態監視を継続することが可能である。
図4は、スレーブサーバ2に障害が発生した場合のデータ運用の再開手順を示す図である。
[手順1]
図4において、マスターサーバ1は、スレーブサーバ2に対し、同期レプリケーション(差分データ送信)を実施する(S1)。同期レプリケーションは以降、継続する。
図4において、マスターサーバ1は、スレーブサーバ2に対し、同期レプリケーション(差分データ送信)を実施する(S1)。同期レプリケーションは以降、継続する。
スレーブサーバ2は、通信インタフェース24に設定されている非同期レプリケーション用IPアドレス(この時点のスレーブサーバ2のアドレス)宛のデータ要求信号をスレーブサーバ3が送出するので(S2)、データ要求信号を受信し、スレーブサーバ3に対して非同期レプリケーション(データ要求信号で要求されたデータの送信)を実施する。非同期レプリケーションは以降、継続する。
マスターサーバ1のコントローラ部11は、スレーブサーバ2に障害が発生していないかを状態監視するため、スレーブサーバ2のコントローラ部21に対して、通信インタフェース部14と通信回線15と通信インタフェース23経由で、定期的にスレーブサーバ2へ状態監視信号を送信する(S11)。
スレーブサーバ2のコントローラ部21は、マスターサーバ1から送信された状態監視信号を受信したのち、マスターサーバ1のコントローラ部11に対して、通信インタフェース部23と通信回線15と通信インタフェース14経由で、障害の有無を示す障害有無信号を送信する(S12)。
スレーブサーバ2は、障害が発生した場合(S15)、マスターサーバ1との同期レプリケーションを停止する(S16)。
マスターサーバ1のコントローラ部11は、スレーブサーバ2のコントローラ部21から返信された障害有無信号を受信し、障害有無信号を基にスレーブサーバ2の障害有無を検出する(S21)。なお障害有無信号がマスターサーバ1のコントローラ部11へ一定時間経過しても返信されない場合も、コントローラ部11はスレーブサーバ2に障害が発生したと判断する。
マスターサーバ1のコントローラ部11は、スレーブサーバ2の障害発生を検出した場合、DB部12のデータ運用を停止し(S22)、検出しなかった場合は、状態監視を継続する。
上記の手順1を図5に示す。
[手順2]
図4において、マスターサーバ1のコントローラ部11は、スレーブサーバ2のコントローラ部21に対し、スレーブサーバ2の通信インタフェース24に設定されている非同期レプリケーション用IPアドレス宛のデータ要求信号(つまり、スレーブサーバ3からのデータ要求信号)に応答しないように設定をおこなわせるデータ要求不応答指示信号を送信する(S31)。
図4において、マスターサーバ1のコントローラ部11は、スレーブサーバ2のコントローラ部21に対し、スレーブサーバ2の通信インタフェース24に設定されている非同期レプリケーション用IPアドレス宛のデータ要求信号(つまり、スレーブサーバ3からのデータ要求信号)に応答しないように設定をおこなわせるデータ要求不応答指示信号を送信する(S31)。
スレーブサーバ2のコントローラ部21は、データ要求不応答指示信号により、スレーブサーバ2の通信インタフェース24に設定されている非同期レプリケーション用IPアドレス宛のデータ要求信号(つまり、スレーブサーバ3からのデータ要求信号)に応答しないデータ要求不応答設定を行う(S32)。なお、スレーブサーバ2は、非同期レプリケーション用IPアドレスを保持し続ける。
マスターサーバ1のコントローラ部11は、マスターサーバ1の通信インタフェース14に設定されていたIPアドレスを、スレーブサーバ2の通信インタフェース24に当初設定されていた非同期レプリケーション用IPアドレス(スレーブサーバ2のIPアドレス)に変更する(S41)。これにより、マスターサーバ1は、非同期レプリケーション用IPアドレス宛のデータ要求信号(つまり、スレーブサーバ3からのデータ要求信号)に応答可能となる。なお、元のアドレスは、後に非同期レプリケーション用IPアドレスから戻すために保持される。
上記の手順2を図6に示す。
[手順3]
図4において、マスターサーバ1の通信インタフェース14への非同期レプリケーション用IPアドレスの設定により、マスターサーバ1とスレーブサーバ3の間で差分データの非同期レプリケーションが開始される。つまり、マスターサーバ1は、通信インタフェース14に設定されている非同期レプリケーション用IPアドレス宛のデータ要求信号(つまり、スレーブサーバ3からのデータ要求信号)に対する非同期レプリケーションを実施する(S51、S52)。非同期レプリケーションは以降、継続する。
図4において、マスターサーバ1の通信インタフェース14への非同期レプリケーション用IPアドレスの設定により、マスターサーバ1とスレーブサーバ3の間で差分データの非同期レプリケーションが開始される。つまり、マスターサーバ1は、通信インタフェース14に設定されている非同期レプリケーション用IPアドレス宛のデータ要求信号(つまり、スレーブサーバ3からのデータ要求信号)に対する非同期レプリケーションを実施する(S51、S52)。非同期レプリケーションは以降、継続する。
そして、マスターサーバ1は、停止していたデータ運用を再開させる(S55)。
スレーブサーバ2では、引き続き、障害が発生している(S15)。
なお、スレーブサーバ2が障害発生による停止等で機能していない場合に、迂回回線が必要になる構成の場合もあるが、図3に示す物理的な構成例の場合、マスターサーバ1とスレーブサーバ3の間で非同期レプリケーションの物理的な通信回線は確保されているため、スレーブサーバ2を迂回し、マスターサーバ1とスレーブサーバ3を接続する迂回通信回線を用意する必要はない。
非同期レプリケーション用IPアドレスの設定変更により、レプリケーションを行うサーバの構成を動的に変更することで、データベースの冗長性を失うことなく、短時間でデータベースの運用を再開させることができる。
上記の手順3を図7に示す。
なお、本動作例では、マスターサーバ1とスレーブサーバ3の間が地理的に遠隔にあることを想定し、スレーブサーバ3の応答を待たなくてもよい非同期レプリケーションで説明するが、応答性よりもデータの一致性を重視する場合には、同期レプリケーションを行ってもよい。
図8は、スレーブサーバ2が障害から回復した場合のデータ運用の再開手順を示す図である。
[手順4]
図8において、マスターサーバ1のコントローラ部11は、引き続き、スレーブサーバ2の障害が回復しているかを状態監視するため、スレーブサーバ2のコントローラ部21に対して、通信インタフェース部14と通信回線15と通信インタフェース23経由で、定期的にスレーブサーバ2へ状態監視信号を送信する(S11)。
図8において、マスターサーバ1のコントローラ部11は、引き続き、スレーブサーバ2の障害が回復しているかを状態監視するため、スレーブサーバ2のコントローラ部21に対して、通信インタフェース部14と通信回線15と通信インタフェース23経由で、定期的にスレーブサーバ2へ状態監視信号を送信する(S11)。
なお、図3のデータベースの物理的な構成例のように、マスターサーバ1とスレーブサーバ2との間に複数の接続回線があれば、手順2において1つの接続回線のIPアドレス変更を行ったとしても、互いの装置間通信により状態監視を継続することが可能である。
スレーブサーバ2のコントローラ部21は、マスターサーバ1から送信された状態監視信号を受信したのち、マスターサーバ1のコントローラ部11に対して、通信インタフェース部23と通信回線15と通信インタフェース14経由で、障害の有無を示す障害有無信号を送信する(S12)。
マスターサーバ1は、引き続き、通信インタフェース14に設定されている非同期レプリケーション用IPアドレス宛のデータ要求信号(つまり、スレーブサーバ3からのデータ要求信号)に対する非同期レプリケーションを実施する(S51、S52)。
マスターサーバ1のコントローラ部11は、引き続き、スレーブサーバ2のコントローラ部21から返信された障害有無信号を受信し、障害有無信号を基にスレーブサーバ2の障害有無を検出する(S21)。
マスターサーバ1のコントローラ部11は、障害がないこと、つまり、障害からの回復を検出した場合、スレーブサーバ3からスレーブサーバ2へのデータ要求を回避するため、非同期レプリケーション用IPアドレスを維持しつつ、マスターサーバ1のDB部12からスレーブサーバ2のDB部22へ全データコピーを行う(S71)。一方、障害があること、つまり、障害から回復を検出しなかった場合は、状態監視を継続する。
上記の手順4を図9に示す。
[手順5]
図8において、手順4が完了した段階では、スレーブサーバ3が、スレーブサーバ2よりも、一時的に後に更新されたデータを保持する可能性がある。この状態でスレーブサーバ2とスレーブサーバ3の非同期レプリケーションを再開すると、後続のスレーブサーバ3がデータ要求元のスレーブサーバ2より後に更新されたデータを保持していることが検知されてしまい、システムによっては、データベースの不整合を修復することを目的として、スレーブサーバ2からスレーブサーバ3への全データコピーを行ってしまう場合がある。全データコピーは、コピー対象のデータ量が多く、差分レプリケーションに比べ時間がかかるため、冗長性が回復するまでにかかる時間が長く、可用性に影響を与えてしまう。
図8において、手順4が完了した段階では、スレーブサーバ3が、スレーブサーバ2よりも、一時的に後に更新されたデータを保持する可能性がある。この状態でスレーブサーバ2とスレーブサーバ3の非同期レプリケーションを再開すると、後続のスレーブサーバ3がデータ要求元のスレーブサーバ2より後に更新されたデータを保持していることが検知されてしまい、システムによっては、データベースの不整合を修復することを目的として、スレーブサーバ2からスレーブサーバ3への全データコピーを行ってしまう場合がある。全データコピーは、コピー対象のデータ量が多く、差分レプリケーションに比べ時間がかかるため、冗長性が回復するまでにかかる時間が長く、可用性に影響を与えてしまう。
そのような事態を回避するため、スレーブサーバ2とスレーブサーバ3の非同期レプリケーションを再開させる(S77)前に、スレーブサーバ3がスレーブサーバ2よりも後に更新されたデータを保持しないように、マスターサーバ1のコントローラ部11は、マスターサーバ1の通信インタフェース14に設定した非同期レプリケーション用IPアドレスを維持しつつ、スレーブサーバ3からのデータ要求信号(S72)に対するデータ送信を停止し(S75)、例えば、全データコピー(S71)後にスレーブサーバ3に送信したがスレーブサーバ2には送信していない全データを、マスターサーバ1のDB部12からスレーブサーバ2のDB部22へ送信して反映させ(S76)、マスターサーバ1からスレーブサーバ2への同期レプリケーションを再開する(S77)。
上記の手順5を図10に示す。
[手順6]
図8において、マスターサーバ1のコントローラ部11は、通信インタフェース部14に設定した非同期レプリケーション用IPアドレスを消去し、スレーブサーバ2の障害発生前にマスターサーバ1の通信インタフェース部14に設定していたIPアドレスを再設定する(S81)。
図8において、マスターサーバ1のコントローラ部11は、通信インタフェース部14に設定した非同期レプリケーション用IPアドレスを消去し、スレーブサーバ2の障害発生前にマスターサーバ1の通信インタフェース部14に設定していたIPアドレスを再設定する(S81)。
次に、マスターサーバ1のコントローラ部11は、スレーブサーバ2のコントローラ部21に対し、スレーブサーバ2の通信インタフェース24に、非同期レプリケーション用IPアドレス宛のデータ要求信号(つまり、スレーブサーバ3からのデータ要求信号)に応じるように設定させるデータ要求応答指示信号を送出する(S82)。
スレーブサーバ2のコントローラ部21は、データ要求応答指示信号により、スレーブサーバ2の通信インタフェース24に対し、非同期レプリケーション用IPアドレス宛のデータ要求信号(つまり、スレーブサーバ3からのデータ要求信号)に応じるデータ要求応答設定を行う(S83)。
このデータ要求応答設定により、スレーブサーバ2は、通信インタフェース24に設定されている、非同期レプリケーション用IPアドレス宛のデータ要求信号(つまり、スレーブサーバ3からのデータ要求信号)に対する非同期レプリケーション(データ送信)を実施(再開)する(S91、S92)。
この非同期レプリケーションの再開(S92)により、当初のカスケードレプリケーション構成でのデータベースシステムでの運用再開となる。つまり、マスターサーバ1のIPアドレスの設定変更(S81)により、データベースシステムを当初のカスケードレプリケーション構成に復旧させ、スレーブサーバ2とスレーブサーバ3の間でのデータ更新順序性の不整合を回避する(S75、S76)ことで、スレーブサーバ2からスレーブサーバ3への全データコピーの必要性を無くし、差分データの非同期レプリケーションを実現することにより、データベースシステムの当初の冗長構成に復旧するまでの時間を短縮させることができる。
上記の手順6を図11に示す。
(本実施の形態によって生じる効果)
マスターサーバ1と同期レプリケーションを行うスレーブサーバ2にハードウェア障害や通信障害などが発生した場合に(S21:障害あり)、動的にレプリケーション構成を変更し、障害の発生していない後続のスレーブサーバ3を用いてデータベースシステムの冗長性を確保することで、運用再開までの時間短縮を実現させ、データベースシステムの可用性を向上させることができる。
マスターサーバ1と同期レプリケーションを行うスレーブサーバ2にハードウェア障害や通信障害などが発生した場合に(S21:障害あり)、動的にレプリケーション構成を変更し、障害の発生していない後続のスレーブサーバ3を用いてデータベースシステムの冗長性を確保することで、運用再開までの時間短縮を実現させ、データベースシステムの可用性を向上させることができる。
また、スレーブサーバ2が回復した場合に、データ更新の順序性を担保しながら差分データのレプリケーションを再開する(S77)ことで、データ不整合による不要な全データコピーを回避して、当初の冗長構成のデータベースシステムに復旧するまでの時間を短縮させることができ、その結果データベースシステムの可用性を向上させることができる。
(本実施の形態のポイント)
マスターサーバ1が同期レプリケーションを行っているスレーブサーバ2の障害を検出した場合に(S21:障害あり)、マスターサーバ1のIPアドレスをスレーブサーバ2の当初のIPアドレスである非同期レプリケーション用IPアドレスに変更し(S41)、後続のスレーブサーバ3と差分データの非同期レプリケーションを開始する(S52)ことで、スレーブサーバ2に障害が発生している期間でも、データベースの運用を再開することが可能となる。
マスターサーバ1が同期レプリケーションを行っているスレーブサーバ2の障害を検出した場合に(S21:障害あり)、マスターサーバ1のIPアドレスをスレーブサーバ2の当初のIPアドレスである非同期レプリケーション用IPアドレスに変更し(S41)、後続のスレーブサーバ3と差分データの非同期レプリケーションを開始する(S52)ことで、スレーブサーバ2に障害が発生している期間でも、データベースの運用を再開することが可能となる。
また、スレーブサーバ2が障害から回復した場合に(S21:障害なし)、マスターサーバ1に設定した非同期レプリケーション用IPアドレスを維持した状態で、スレーブサーバ3からのデータ要求に対するデータ送信を停止し(S75)、スレーブサーバ3に対して送信したデータすべてを、マスターサーバ1のDB部12からスレーブサーバ2のDB部22へ送信し反映させた(S76)後、マスターサーバ1からスレーブサーバ2への同期レプリケーションを再開させ(S77)、マスターサーバのIPアドレスを再変更し(S81)、非同期レプリケーション用IPアドレス宛てへのデータ要求信号に応答するようスレーブサーバ2を設定する(S82)ことで、障害から回復したスレーブサーバ2と後継のスレーブサーバ3の間のデータ更新の順序性を保てることができ、スレーブサーバ2からスレーブサーバ3への全データコピーを不要にできる。
また、マスターサーバ1のIPアドレスの設定変更(S41、S81)により、差分データのレプリケーションを行うサーバの構成を動的に変更させ、データベースシステムの冗長性を失うことなく、データベースシステムの運用再開時間の短縮を可能とする。
以上のように、スレーブサーバ2(第1のデータ送信装置)とマスターサーバ1(第2のデータ送信装置)はデータを送信するシステムいわゆるデータ送信システムを構成し、データ送信システムは、予め定められたレプリケーション用アドレス(非同期レプリケーション用IPアドレス)宛のデータ要求信号を送出するスレーブサーバ3(データ受信装置)とともに用いられ、第1のデータ送信装置(2)は、レプリケーション用アドレスである当該第1のデータ送信装置(2)のアドレス宛のデータ要求信号を受信した場合に(S2)、データ受信装置(3)にデータを送信する手段(S3)を備え、第2のデータ送信装置(1)は、第2のデータ送信装置(1)のアドレス宛のデータ要求信号を受信した場合に(S51)、データ受信装置(3)にデータを送信する手段(S52)と、第1のデータ送信装置(2)の障害を検出した場合に(S21:障害あり)、第2のデータ送信装置(1)のアドレスをレプリケーション用アドレスに変更する手段(S41)とを備えるので、第1のデータ送信装置(2)の障害時においても、データ受信装置(3)にデータを送信できる。
また、第2のデータ送信装置(1)は、第1のデータ送信装置(2)の障害からの回復を検出した場合に(S21:障害なし)、第2のデータ送信装置(1)のアドレスをレプリケーション用アドレスに変更する前のアドレスに変更する手段(S81)を備えるので、第1のデータ送信装置(2)の障害からの回復時において、データ受信装置(3)へのデータ送信を停止できる。
また、第2のデータ送信装置(1)は、第1のデータ送信装置(2)の障害を検出した場合に(S21:障害あり)、データを送信しないように第1のデータ送信装置(2)を設定する(S31)ので、障害のある第1のデータ送信装置(2)からデータ受信装置(3)へのデータ送信を停止できる。
また、第2のデータ送信装置(1)は、第1のデータ送信装置(2)の障害からの回復を検出した場合に(S21:障害なし)、データを送信するように第1のデータ送信装置(2)を設定する(S82)ので、回復した第1のデータ送信装置(2)からデータ受信装置(3)へのデータ送信を再開できる。
また、第2のデータ送信装置(1)は、第1のデータ送信装置(2)からデータ受信装置(3)に送信されるデータを予め当該第1のデータ送信装置(2)に送信する(S1)ものであり、第1のデータ送信装置(2)の障害を検出した場合に(S21:障害あり)、第1のデータ送信装置(2)に送信するデータの運用を停止し(S22)、第2のデータ送信装置(1)のアドレスをレプリケーション用アドレスに変更したなら(S41)、当該データの運用を再開する(S55)ので、データ受信装置(3)へのデータ送信を開始してからデータ運用を再開できる。
また、第2のデータ送信装置(1)は、第1のデータ送信装置(2)からデータ受信装置(3)に送信されるデータを予め当該第1のデータ送信装置(2)に送信する(S1)ものであり、第1のデータ送信装置(2)の障害からの回復を検出した場合に(S21:障害なし)、障害により停止した第1のデータ送信装置(2)へのデータの送信を再開する(S77)ので、第2のデータ送信装置(1)から、回復した第1のデータ送信装置(2)へのデータ送信を再開できる。
また、第2のデータ送信装置(1)は、第1のデータ送信装置へのデータの送信を再開する(S77)に際し、第1のデータ送信装置(1)に全データを送信する(S71)ので、例えば、障害により第1のデータ送信装置(2)の全データやその大部分が消失した場合であっても、第1のデータ送信装置(2)を全データやその大部分がある状態に戻すことができる。
また、第2のデータ送信装置(1)は、第1のデータ送信装置へのデータの送信を再開する(S77)に際し、データ受信装置(3)へのデータ送信を停止し(S75)、データ受信装置(3)に送信したが第1のデータ送信装置(2)には送信していない全データを当該第1のデータ送信装置(2)に送信して当該第1のデータ送信装置(2)のデータに反映させる(S76)ので、第1のデータ送信装置(2)からデータ受信装置(3)への全データコピーを不要にできる。
なお、これら本実施の形態の特徴については、必要なものを適宜選択して実施すればよい。
また、スレーブサーバ2(第1のデータ送信装置)やマスターサーバ1(第2のデータ送信装置)としてコンピュータを機能させるためのコンピュータプログラムは、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスク、磁気テープなどのコンピュータ読み取り可能な記録媒体に記録でき、また、インターネットなどの通信網を介して伝送させて、広く流通させることができる。
1…マスターサーバ(第2のデータ送信装置)
2…スレーブサーバ(第1のデータ送信装置)
3…スレーブサーバ(データ受信装置)
13、14、23、24、33、34…通信インタフェース
11、21、31…コントローラ部
12、22、32…DB部
2…スレーブサーバ(第1のデータ送信装置)
3…スレーブサーバ(データ受信装置)
13、14、23、24、33、34…通信インタフェース
11、21、31…コントローラ部
12、22、32…DB部
Claims (8)
- 第1のデータ送信装置と第2のデータ送信装置を含むデータ送信システムであって、
前記データ送信システムは、予め定められたレプリケーション用アドレス宛のデータ要求信号を送出するデータ受信装置とともに用いられ、
前記第1のデータ送信装置は、
前記レプリケーション用アドレスである当該第1のデータ送信装置のアドレス宛のデータ要求信号を受信した場合に、前記データ受信装置にデータを送信する手段を備え、
前記第2のデータ送信装置は、
該第2のデータ送信装置のアドレス宛のデータ要求信号を受信した場合に、前記データ受信装置にデータを送信する手段と、
前記第1のデータ送信装置の障害を検出した場合に、前記第2のデータ送信装置のアドレスを前記レプリケーション用アドレスに変更する手段と
を備えることを特徴とするデータ送信システム。 - 前記第2のデータ送信装置は、
前記第1のデータ送信装置の障害からの回復を検出した場合に、前記第2のデータ送信装置のアドレスを前記レプリケーション用アドレスに変更する前のアドレスに変更する手段
を備えることを特徴とする請求項1記載のデータ送信システム。 - 前記第2のデータ送信装置は、
前記第1のデータ送信装置の障害を検出した場合に、データを送信しないように前記第1のデータ送信装置を設定する
ことを特徴とする請求項1または2記載のデータ送信システム。 - 前記第2のデータ送信装置は、
前記第1のデータ送信装置の障害からの回復を検出した場合に、データを送信するように前記第1のデータ送信装置を設定する
ことを特徴とする請求項3記載のデータ送信システム。 - 前記第2のデータ送信装置は、
前記第1のデータ送信装置から前記データ受信装置に送信されるデータを予め当該第1のデータ送信装置に送信するものであり、
前記第1のデータ送信装置の障害を検出した場合に、前記第1のデータ送信装置に送信するデータの運用を停止し、前記第2のデータ送信装置のアドレスを前記レプリケーション用アドレスに変更したなら、当該データの運用を再開する
ことを特徴とする請求項1ないし4のいずれかに記載のデータ送信システム。 - 前記第2のデータ送信装置は、
前記第1のデータ送信装置から前記データ受信装置に送信されるデータを予め当該第1のデータ送信装置に送信するものであり、
前記第1のデータ送信装置の障害からの回復を検出した場合に、障害により停止した前記第1のデータ送信装置へのデータの送信を再開する
ことを特徴とする請求項1ないし4のいずれかに記載のデータ送信システム。 - 前記第2のデータ送信装置は、
前記第1のデータ送信装置へのデータの送信を再開するに際し、前記第2のデータ送信装置の全データを前記第1のデータ送信装置に送信する
ことを特徴とする請求項6記載のデータ送信システム。 - 前記第2のデータ送信装置は、
前記第1のデータ送信装置へのデータの送信を再開するに際し、前記データ受信装置へのデータ送信を停止し、前記データ受信装置に送信したが前記第1のデータ送信装置には送信していない全データを当該第1のデータ送信装置に送信して当該第1のデータ送信装置のデータに反映させる
ことを特徴とする請求項6記載のデータ送信システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014191046A JP5870174B1 (ja) | 2014-09-19 | 2014-09-19 | データ送信システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014191046A JP5870174B1 (ja) | 2014-09-19 | 2014-09-19 | データ送信システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP5870174B1 true JP5870174B1 (ja) | 2016-02-24 |
JP2016062407A JP2016062407A (ja) | 2016-04-25 |
Family
ID=55360946
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014191046A Active JP5870174B1 (ja) | 2014-09-19 | 2014-09-19 | データ送信システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5870174B1 (ja) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1028130A (ja) * | 1996-07-11 | 1998-01-27 | Hitachi Ltd | Macアドレス管理方式 |
US20080168303A1 (en) * | 2007-01-04 | 2008-07-10 | International Business Machines Corporation | Storage management in cascaded replication of data |
US20130173538A1 (en) * | 2012-01-04 | 2013-07-04 | International Business Machines Corporation | Managing remote data replication |
-
2014
- 2014-09-19 JP JP2014191046A patent/JP5870174B1/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1028130A (ja) * | 1996-07-11 | 1998-01-27 | Hitachi Ltd | Macアドレス管理方式 |
US20080168303A1 (en) * | 2007-01-04 | 2008-07-10 | International Business Machines Corporation | Storage management in cascaded replication of data |
US20130173538A1 (en) * | 2012-01-04 | 2013-07-04 | International Business Machines Corporation | Managing remote data replication |
Non-Patent Citations (1)
Title |
---|
JPN6015052214; EMC Education Services: IT技術者なら知っておきたいストレージの原則と技術 初版 Information Storage and Management 第1版, 20130221, 285-289ページ, 株式会社インプレスジャパン * |
Also Published As
Publication number | Publication date |
---|---|
JP2016062407A (ja) | 2016-04-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10489254B2 (en) | Storage cluster failure detection | |
US10671498B2 (en) | Method and apparatus for redundancy in active-active cluster system | |
US10146472B2 (en) | Tertiary storage unit management in bidirectional data copying | |
JP4668763B2 (ja) | ストレージ装置のリストア方法及びストレージ装置 | |
US7793060B2 (en) | System method and circuit for differential mirroring of data | |
US8285824B2 (en) | Storage system and data replication method that refuses one or more requests for changing the first logical configuration information until the first storage apparatus and second storage apparatus are synchronized | |
US9992058B2 (en) | Redundant storage solution | |
US12050558B2 (en) | Facilitating immediate performance of volume resynchronization with the use of passive cache entries | |
CN105159795A (zh) | 数据同步方法、装置和系统 | |
US9846624B2 (en) | Fast single-master failover | |
US7797571B2 (en) | System, method and circuit for mirroring data | |
US9811432B2 (en) | Systems and methods for resynchronizing mirroring partners in a storage system | |
WO2016107443A1 (zh) | 一种快照处理方法及相关设备 | |
CN112380062A (zh) | 一种基于系统备份点多次快速恢复系统的方法及系统 | |
WO2018157605A1 (zh) | 一种集群文件系统中消息传输的方法及装置 | |
JPH08212095A (ja) | クライアントサーバ制御システム | |
KR101605455B1 (ko) | 데이터 손실 없는 데이터베이스 리두 로그 이중화 방법 및 그를 위한 시스템 | |
US20150195167A1 (en) | Availability device, storage area network system with availability device and methods for operation thereof | |
CN112948484A (zh) | 分布式数据库系统和数据灾备演练方法 | |
JP5870174B1 (ja) | データ送信システム | |
US7587628B2 (en) | System, method and computer program product for copying data | |
CN117785568B (zh) | 一种双主双机热备方法及装置 | |
WO2013073022A1 (ja) | 計算機システム及び障害検出方法 | |
CN117743026A (zh) | 一种数据容灾的方法、系统、设备及存储介质 | |
JP2012248128A (ja) | ホットスタンバイシステム及びデータ冗長化方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20160105 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160108 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5870174 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |