JP2005157897A - データベースの等価方法 - Google Patents

データベースの等価方法 Download PDF

Info

Publication number
JP2005157897A
JP2005157897A JP2003397888A JP2003397888A JP2005157897A JP 2005157897 A JP2005157897 A JP 2005157897A JP 2003397888 A JP2003397888 A JP 2003397888A JP 2003397888 A JP2003397888 A JP 2003397888A JP 2005157897 A JP2005157897 A JP 2005157897A
Authority
JP
Japan
Prior art keywords
server
database
update
master
update time
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.)
Pending
Application number
JP2003397888A
Other languages
English (en)
Inventor
Takeshi Narai
剛士 成相
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2003397888A priority Critical patent/JP2005157897A/ja
Publication of JP2005157897A publication Critical patent/JP2005157897A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】更新時刻をデータベース内に取り込んで管理することにより、更新情報ファイルが排除できるデータベースの等価方法を提供する。
【解決手段】ネットワークに対し接続、切断が行われる複数のサーバで構成される計算機の分散システムにおいて各サーバのデータベース間のデータ等価を行う方法であって、各データをこれの更新時刻を付加した更新レコードとしてデータベース中に格納する工程と、ネットワークから切断された後に再度接続されたサーバが自サーバの最終更新時刻を所定のサーバに送信する工程と、上記所定のサーバが上記最終更新時刻を受信した時に自データベースを検索して上記最終更新時刻以降の更新レコードを上記ネットワークに再度接続されたサーバに送信する工程と、上記ネットワークに再度接続されたサーバが送信された更新レコードに従って自データベースの更新を行う工程と、を備えた。
【選択図】図2

Description

この発明は、複数サーバがネットワーク接続されて構成される計算機の分散システムにおいて、サーバがある期間、ネットワークから切り離されても、各サーバのデータベースを常に最新の状態、すなわち同一の状態に保つためのデータベースの等価方法に関する。
従来のデータベースの等価方法では、マスターサーバにネットワークを介して複数のサーバが接続されたシステムにおいて、マスターサーバは現在のデータが格納された現在データベースを更新すると、その更新データを例えば接続された1つのサーバであるサーバAに送信してサーバAの現在データベースを更新させる。サーバAが未接続になると、マスターサーバはこれに設けられた未更新フラグファイルのレコードのフラグを立て、サーバAを接続する際に、フラグを立てた未接続期間のレコード番号に対応する現在データベースの更新データを抽出してサーバAに送信し、サーバAの現在データベースを更新させる。このようにしてサーバAを接続させる場合、未接続期間に更新したデータ(差分データ)のみを送信して等価時間を短縮していた(例えば特許文献1参照)。
特開2000−35911号公報
従来の方法では、データベースとは別に更新情報ファイル(未更新フラグファイル)が必要であり、リソースを余分にとってしまうという問題があった。またマスターサーバからの更新情報は他サーバに等価できるが、逆に他サーバの更新をマスターサーバに等価できないという問題があった。
本発明は上記の課題を解決することを目的としており、更新時刻等の更新に関する情報をデータベース内に取り込んで管理することにより、更新情報ファイルが排除でき、また二重系のような両サーバから更新される場合のデータ等価が行えるデータベースの等価方法を提供することを目的とする。
この発明は、ネットワークに対し接続、切断が行われる複数のサーバで構成される計算機の分散システムにおいて各サーバのデータベース間のデータ等価を行うデータベースの等価方法であって、各データをこれの更新時刻を付加した更新レコードとしてデータベース中に格納する工程と、ネットワークから切断された後に再度接続されたサーバが自サーバの最終更新時刻を所定のサーバに送信する工程と、上記所定のサーバが上記最終更新時刻を受信した時に自データベースを検索して上記最終更新時刻以降の更新レコードを上記ネットワークに再度接続されたサーバに送信する工程と、上記ネットワークに再度接続されたサーバが送信された更新レコードに従って自データベースの更新を行う工程と、を備えたことを特徴とするデータベースの等価方法にある。
この発明では、複数サーバに存在するデータベース間の等価方法において、更新情報ファイルが排除でき、またさらにマスターサーバの多重系や、サーバの動的な追加削除、別形式のデータベースへの保存が簡易な工程で実現できる。
実施の形態1.
図1は本発明の実施の形態1によるデータベース間の等価を行うシステムの構成図を示す。図1において、マスターサーバ101は、データベース102、データベース更新プログラム103、データベース等価プログラム104を備える。またサーバA111はネットワーク106を介してマスターサーバ101に接続された1つのサーバを例示し、サーバA111はデータベース109、データベース等価受信プログラム105を備える。また、従来のようなデータに更新時刻を付加して保存するファイルは存在しない代わりに、各サーバのデータベース102、109上の全てのレコード201、202についてデータにそれぞれ更新時刻が付加されている。なお詳細な説明は省略するが、当然ながらネットワーク106に伝送される各データはアドレス制御等により発信元と送信先が分かるよういなっている。また、本願における各プログラムはそれぞれのコンピュータ等のハードウェア資源を利用して所定の機能を達成する機能ブロックとして示されたものであり、これららの機能に従って以下の動作が行われる。
次に動作について説明すると、マスターサーバ101はデータベース更新情報(更新する実際のデータ)107があれば、データベース更新プログラム103がデータベース102の当該レコード201を更新し、更新時刻を設定する(これを一次的なデータの更新とする)。
そしてマスターサーバ101とサーバA111が接続状態にあれば、データベース等価プログラム104によって、更新データはサーバA111上のデータベース等価受信プログラム105に送られ、データベース109の当該レコード202を更新し、等価が行われる(これを上記一次的なデータの更新に従う二次的なデータの更新とする)。
前項でマスターサーバ101とサーバA111が非接続状態で、データ送信できない場合も特にマスターサーバ101は特別な動作はしない。そしてサーバA111がネットワーク106すなわちマスターサーバ101へ接続される度に、データベース等価受信プログラム105が前回接続時の最終更新時刻をマスターサーバ101のデータベース等価プログラム104に送信する。マスターサーバ101のデータベース等価プログラム104は受信したサーバA111の最終更新時刻から最新時刻までの更新データをデータベース102の更新時刻に基づき取得し、サーバA111に送信することで、サーバ111Aが切断していた間のデータ等価が行われる。
これを図1のシステムでのデータベース間の等価動作を示す図2の処理フローに従って説明すると、サーバA111がマスターサーバ101へ接続される度に前回接続時の最終更新時刻をマスターサーバ101に送信する(S201,S213)。マスターサーバ101は受信したサーバA111の最終更新時刻以降の最新時刻までの更新レコードをデータベース102の更新時刻に基づき検索してサーバA111に送信する(S203)。サーバA111ではデータベース更新情報待ち状態で(S215)、マスターサーバ101から更新レコードが送られてくると、データベース109のレコード202の更新が行われ、これによりサーバA111が切断されていた間のデータ等価が行われる。その後、マスターサーバ101が切断されるまでは、レコードの更新があればその都度行われ(S217,S219)、切断されるとサーバA111は再接続待ち状態になる(S221)。一方、マスターサーバ101は、更新レコード送信後、データ更新が有れば(S205)、データベース102に更新データと更新時刻を書き込んでレコードを更新し(S207)、サーバA111が切断されていなければ(S209)更新レコードを送信(S211)、切断されていれば接続を待つ。
このように処理を行うことにより、従来、マスターサーバにあった更新情報ファイルが不要になり、またサーバA接続時、非接続時によってマスターサーバの動作を変えないので、処理を簡素化できる。
実施の形態2.
図3は本発明の実施の形態2によるデータベース間の等価を行うシステムの構成図を示す。上記実施の形態と同一もしくは相当部分は同一符号で示し説明は省略する(以下同様)。マスターサーバA101とマスターサーバB108はホットスタンバイ形式の二重系を構成する計算機のペアの一例である。両サーバには二重系管理プログラム120、121がそれぞれ存在し互いにネットワーク106を介してリンクしており、マスターサーバA101、マスターサーバB108のどちらが主系計算機であるかをデータベース更新プログラム103、113およびデータベース等価プログラム104、110に通知する。
次に動作について説明すると、マスターサーバA101が主系で、B108が従系である場合、更新データは図3中の実線のように流れる。データベース更新情報107から入力されたデータは、データベース更新プログラム103によって、マスターサーバA101のデータベース102にその更新時刻および更新データが書込まれる。書込まれたデータはデータベース等価プログラム104によりマスターサーバB108上のデータベース等価プログラム110に送られ、マスターサーバB上のデータベース109に書込まれる。なお、マスターサーバB上のデータベース更新プログラム113は、二重系管理プログラム121から情報を通知され、従系の間はデータベース109の更新を行わないようにする。
また、マスターサーバB108がネットワーク106に接続していなかった場合は等価は行われず、マスターサーバB108がネットワーク106に再接続されて復帰した時点でマスターサーバB108上のデータベース等価プログラム110がマスターサーバA101上のデータベース等価プログラム104に最終更新時刻を送信し、マスターサーバA101上のデータベース等価プログラム104はデータベース102から受信最終更新時刻以降のデータを送信することによって、切断中の更新データが等価される。
図3のシステムでのデータベース間の等価動作を図4の処理フローに示す。図4においてマスターサーバA101とマスターサーバB108は同一フローチャートになり、一方が主系の時に他方は必ず従系になる。図2と同一符号の部分は同一もしくは対応ステップを示す。図4の動作はマスターサーバA101とマスターサーバB108のうちの主系側が図2に示す実施の形態1のマスターサーバ101側の動作になり、従系側がサーバA111側の動作になる。そして二重系管理プログラム121による主系、従系の切替えをステップS200、S204およびS218でチェックして系の切替えを行っている点が異なる。
このようにして実施の形態2ではマスターサーバ二重系を実現することが可能となる。
実施の形態3.
図5は本発明の実施の形態3によるデータベース間の等価を行うシステムの構成図を示す。このシステムではマスターサーバA101およびマスターサーバB108に関しては実施の形態2と同様であり、これにさらに実施の形態1におけるサーバA111に相当する更新データ入力を行わないサーバとしてサーバC301、サーバD401がネットワーク106上に存在する。サーバC301は更新時刻とデータからなるレコード302を格納するデータベース303およびデータベース等価受信プログラム304を備え、例えば新規参入のサーバとして示されたサーバD401も同様に更新時刻とデータからなるレコード402を格納するデータベース403およびデータベース等価受信プログラム304を備える。
図6は図5のシステムにおけるマスターサーバA101の処理フローを示す。図2、図4と同一符号の部分は同一もしくは対応ステップを示す。実施の形態2における図4の処理フローと比較して、主系時の処理を処理ルーチン1(ステップS201〜S211、S222を含む)としてまとめ、複数のサーバからの最終更新時刻受信に対応している点が異なっている。ステップS222では、系の切替えがあった時の処理ルーチン1の終了通知でルーチンの終了としている。すなわち主系時においては、複数のサーバからの最終更新時刻の受信を待ち(ステップS601)、受信したサーバ毎に処理ルーチン1を起動して実行し(ステップS603)、系の切替えがあったら(ステップS204)、処理ルーチン1に終了通知を発行する。
図6の処理フローから、例えば主系のマスターサーバA101は、等価を要求するサーバが従系マスターサーバB108であるか、サーバC301であるかを知る必要はなく、同じように処理ルーチン1を実行する。そのため処理は簡素化されるという利点がある。これにより、例えば当初存在していなかったサーバD401が途中でシステムに参入したとしても、サーバDは主系のマスターサーバであるサーバA101に最終更新時刻を送信するだけで、元から存在していたサーバC301と同様に等価のサービスを受けることができる。なおこの実施の形態3は図1に示す実施の形態1の構成のシステムにおいてサーバが追加された場合においても同様に実施可能である。
つまり、このシステムはプログラムに変更を加えることなく、動的に等価データベースを持つサーバの数を増減させることが可能である。
実施の形態4.
図7は本発明の実施の形態4によるデータベース間の等価を行うシステムの構成図を示す。マスターサーバA101、マスターサーバB108、サーバC301に関しては、実施の形態3と同様である。サーバD401にはデータ等価受信プログラム404の他に、汎用データベースI/F(インタフェース)プログラム405、最終更新時刻ファイル406、汎用データベース403aが存在する。
実施の形態4では、サーバD401もサーバC301と同様に最終更新時刻を主系マスターサーバA101に送信することにより、等価サービスを受けられる。ただし、受信したデータは汎用データベースI/Fプログラム405によって、元のデータベース(特に図示せず)とは別の汎用データベース403aに、別の形式402としてデータ保存され、この更新時刻は、最終更新時刻ファイル406に上書きされる。これは最終更新時刻を送信するだけで等価サービスが受けられる特長を利用して、最終更新時刻ファイル604だけを追加し、データ自体は、汎用データベースI/Fプログラム405を変更することにより、任意のデータベースに任意の形式で保存できるようにしたものである。
これにより、任意の形式のサーバにおいて、最終更新時刻ファイルを送信することにより任意のデータベースに任意の形式で更新レコードが保存され等価サービスが受けられる。
実施の形態5.
図8は本発明の実施の形態5によるデータベース間の等価を行うシステムの構成図を示す。マスターサーバA101、マスターサーバB108、サーバD401に関しては、実施の形態3と同様である。実施の形態5では、マスターサーバC301aが追加される。マスターサーバC301aの構成は、マスターサーバA101、マスターサーバB201と同様であり、データベース302、データベース更新プログラム303、データベース等価プログラム304および二重系管理プログラム306を備えると共に、データベース更新情報307が入力される。
実施の形態5でのマスターサーバC301aの動きはマスターサーバA101、マスターサーバB108と同様である。ただし従系になったマスターサーバが実施の形態3では固定の相手先に最終更新情報を送信するのに対し、図8では二重系管理プログラム306に主系サーバを問い合わせた後、主系サーバに最終更新時刻を送信する点が異なる。他の動作は実施の形態3と同様である。
このようにして実施の形態5ではマスターサーバの多重系を実現することが可能となる。
本発明の実施の形態1によるデータベース間の等価を行うシステムの構成図である。 図1のシステムでのデータベース間の等価動作を示す処理フローである。 本発明の実施の形態2によるデータベース間の等価を行うシステムの構成図である。 図3のシステムでのデータベース間の等価動作を示す処理フローである。 本発明の実施の形態3によるデータベース間の等価を行うシステムの構成図である。 図5のシステムでのデータベース間の等価動作を示す処理フローである。 本発明の実施の形態4によるデータベース間の等価を行うシステムの構成図である。 本発明の実施の形態5によるデータベース間の等価を行うシステムの構成図である。
符号の説明
101 マスターサーバ(A)、102,109,303,403 データベース、103,113 データベース更新プログラム、104 データベース等価プログラム、105,304,404 データベース等価受信プログラム、106 ネットワーク、107,117 データベース更新情報、108 マスターサーバ(B)、111 サーバA、120,121 二重系管理プログラム、201,202,302,402 (更新)レコード、301 サーバC、401 サーバD、403a 汎用データベース、405 汎用データベースI/Fプログラム、406 最終更新時刻ファイル。

Claims (5)

  1. ネットワークに対し接続、切断が行われる複数のサーバで構成される計算機の分散システムにおいて各サーバのデータベース間のデータ等価を行うデータベースの等価方法であって、
    各データをこれの更新時刻を付加した更新レコードとしてデータベース中に格納する工程と、
    ネットワークから切断された後に再度接続されたサーバが自サーバの最終更新時刻を所定のサーバに送信する工程と、
    上記所定のサーバが上記最終更新時刻を受信した時に自データベースを検索して上記最終更新時刻以降の更新レコードを上記ネットワークに再度接続されたサーバに送信する工程と、
    上記ネットワークに再度接続されたサーバが送信された更新レコードに従って自データベースの更新を行う工程と、
    を備えたことを特徴とするデータベースの等価方法。
  2. 上記データベースの等価が、それぞれに一次的なデータの更新が行われる2つのマスターサーバ間で行われ、上記マスターサーバ間における、受信した上記最終更新時刻に従って一次的なデータの更新による上記更新レコードを送信する主系マスターサーバと、送信された上記更新レコードを受信し上記一次的なデータの更新に従った二次的なデータの更新を自データベースに行う従系マスターサーバとの切替え制御を行う工程をさらに備えたことを特徴とする請求項1に記載のデータベースの等価方法。
  3. 上記最終更新時刻以降の更新レコードを送信する工程において、複数の他サーバより受信した上記最終更新時刻についてそれぞれに上記最終更新時刻以降の更新レコードを送信すると共に、上記自データベースの更新を行う工程を上記最終更新時刻を送信した各サーバにおいてそれぞれに上記送信された更新レコードに従って行うことを特徴とする請求項1又は2に記載のデータベースの等価方法。
  4. 上記ネットワークにデータの最終更新時刻を記憶するファイルと共に汎用データベースを備えたサーバが接続されており、
    上記汎用データベースを備えたサーバから上記最終更新時刻を所定のサーバに送信する工程と、
    上記所定のサーバが上記最終更新時刻を受信した時に自データベースを検索して上記最終更新時刻以降の更新レコードを上記汎用データベースを備えたサーバに送信する工程と、
    上記汎用データベースを備えたサーバが送信された更新レコードを所望の形式で上記汎用データベースに保存する工程と、
    を備えたことを特徴とする請求項1ないし3のいずれか1項に記載のデータベースの等価方法。
  5. 上記データベースの等価が、一次的なデータの更新が行われる3つ以上のマスターサーバを含むサーバ間で行われ、上記マスターサーバ間における、受信した上記最終更新時刻に従って一次的なデータの更新による上記更新レコードを送信する主系マスターサーバと、送信された上記更新レコードを受信し上記一次的なデータの更新に従った二次的なデータの更新を自データベースに行う従系マスターサーバとの切替え制御を行う工程をさらに備えたことを特徴とする請求項3に記載のデータベースの等価方法。
JP2003397888A 2003-11-27 2003-11-27 データベースの等価方法 Pending JP2005157897A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003397888A JP2005157897A (ja) 2003-11-27 2003-11-27 データベースの等価方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003397888A JP2005157897A (ja) 2003-11-27 2003-11-27 データベースの等価方法

Publications (1)

Publication Number Publication Date
JP2005157897A true JP2005157897A (ja) 2005-06-16

Family

ID=34722917

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003397888A Pending JP2005157897A (ja) 2003-11-27 2003-11-27 データベースの等価方法

Country Status (1)

Country Link
JP (1) JP2005157897A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007293821A (ja) * 2006-03-30 2007-11-08 Fujitsu Ltd データベースシステム管理方法及びデータベースシステム
US7650369B2 (en) 2006-03-30 2010-01-19 Fujitsu Limited Database system management method and database system
GB2484086A (en) * 2010-09-28 2012-04-04 Metaswitch Networks Ltd Reliability and performance modes in a distributed storage system
KR101480293B1 (ko) 2012-11-30 2015-01-12 주식회사 엘지씨엔에스 분산 파일시스템 처리 장치와 방법 및 이를 저장한 기록 매체

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007293821A (ja) * 2006-03-30 2007-11-08 Fujitsu Ltd データベースシステム管理方法及びデータベースシステム
US7650369B2 (en) 2006-03-30 2010-01-19 Fujitsu Limited Database system management method and database system
GB2484086A (en) * 2010-09-28 2012-04-04 Metaswitch Networks Ltd Reliability and performance modes in a distributed storage system
KR101480293B1 (ko) 2012-11-30 2015-01-12 주식회사 엘지씨엔에스 분산 파일시스템 처리 장치와 방법 및 이를 저장한 기록 매체

Similar Documents

Publication Publication Date Title
KR101153137B1 (ko) 동기적 통신 모드와 비동기적 통신 모드 사이를전이하기위한 방법 및 시스템
US7890646B2 (en) Synchronization orchestration
CN101167069B (zh) 文件对等同步的系统和方法
KR20070084302A (ko) 범용 데이터 동기화를 위한 시스템 및 방법
KR20060083118A (ko) 공유된 객체로의 복수의 사용자 개정들을 동기화시키는방법 및 시스템
WO2006075424A1 (ja) 情報配信システム、配信要求プログラム、転送プログラム、配信プログラム等
JPH11232226A (ja) 協同作業支援システム及び記録媒体
JP2007164523A (ja) 情報処理装置、分散同期型情報システム、情報同期方法、及び、プログラム
US7499958B1 (en) Systems and methods of replicating all or part of a data store
KR101467583B1 (ko) 미디어-장치 컨텐츠에 대한 변화를 식별하기 위한 객체-기반 프로토콜 활용 방법 및 실체적인 기계-판독가능 매체
EP2078385B1 (en) Method and apparatus for preventing duplicate saving of resource between universal plug and play devices providing content directory service
CN110019484B (zh) 数据库系统及实现方法、管理设备、数据接口设备和介质
JP2005157897A (ja) データベースの等価方法
JP2005250921A (ja) バックアップシステムおよび方法
JP5685213B2 (ja) 差分レプリケーションシステム、マスターデータベース装置、及びスレーブデータベース装置
CN113301088B (zh) 消息处理方法、装置、系统、电子设备及可读存储介质
JP2007086987A (ja) データベース二重化システム、センタサーバ、リモートサーバ、データベース二重化方法及びプログラム
US7693840B1 (en) Method and system for distribution of common elements
CN109325057B (zh) 中间件管理方法、装置、计算机设备以及存储介质
JP2000040025A (ja) デ―タベ―ス管理装置、および、そのプログラムが記録された記録媒体
JP5080636B2 (ja) レプリ処理方法、プログラム及び装置
CN106407320B (zh) 文件处理方法、装置及系统
JP2005173724A (ja) 文書管理システム、ファイルサーバ、文書管理プログラム、文書管理方法
JP2006004024A (ja) ディレクトリサーバに実行させるためのプログラム
JPH11327989A (ja) データベース管理装置、および、そのプログラムが記録された記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060801

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090414

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090804