JPH11272533A - リレーショナルデータベース同期方法およびそのプログラムを記録した記録媒体 - Google Patents

リレーショナルデータベース同期方法およびそのプログラムを記録した記録媒体

Info

Publication number
JPH11272533A
JPH11272533A JP10076875A JP7687598A JPH11272533A JP H11272533 A JPH11272533 A JP H11272533A JP 10076875 A JP10076875 A JP 10076875A JP 7687598 A JP7687598 A JP 7687598A JP H11272533 A JPH11272533 A JP H11272533A
Authority
JP
Japan
Prior art keywords
replica
master
difference
machine
data
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.)
Granted
Application number
JP10076875A
Other languages
English (en)
Other versions
JP4187302B2 (ja
Inventor
Michiteru Kodama
道輝 児玉
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP07687598A priority Critical patent/JP4187302B2/ja
Priority to US09/145,030 priority patent/US6374262B1/en
Publication of JPH11272533A publication Critical patent/JPH11272533A/ja
Application granted granted Critical
Publication of JP4187302B2 publication Critical patent/JP4187302B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/275Synchronous replication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/953Organization of data
    • Y10S707/954Relational
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 リレーショナルデータベース同期方法に関
し、マスタデータと通常はマスタ機と孤立して更新され
るレプリカ機のデータとを矛盾なく同期させることを目
的とする。 【解決手段】 レプリカ機4を任意の時間にネットワー
ク3を通じてマスタ機1に接続後、レプリカデータ5か
らマスタ差分抽出完了時刻より最終更新日の新しいレコ
ードをレプリカ差分として抽出し、マスタ機1では、マ
スタデータ2からレプリカ差分反映時刻がマスタ差分抽
出完了時刻より新しいレコードをマスタ差分として抽出
し、マスタ差分抽出完了時刻を現時刻に更新し、レプリ
カ差分をマスタデータ2に反映し、レプリカ機4では、
マスタ差分をレプリカデータ5に反映し、マスタ差分抽
出完了時刻を更新する。これで、同期処理が完了し、マ
スタ機1との接続は任意の時間に切断できる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はリレーショナルデー
タベース同期方法に関し、特にリレーショナルデータベ
ース上のマスタ機のデータとそのデータを複製して保持
していて通常はマスタ機とは切り離して運用されるレプ
リカ機のデータとを矛盾がないように同期させるリレー
ショナルデータベース同期方法に関する。
【0002】近年、モバイルコンピューティング環境下
にあって、ノート型コンピュータ、ハンドヘルドコンピ
ュータ、PDA(personal digital assistants )など
の携帯型情報端末に顧客に関係したデータを保持してお
き、そのデータを活用することによって商談獲得の機会
を拡大し、営業活動を支援することができるSFA(Sa
les Force Automation)と呼ばれる分野のソフトウェア
が提案されている。
【0003】
【従来の技術】通常のクライアント・サーバ方式のネッ
トワーク環境下でのデータベースは、クライアントがデ
ータベースのサーバにアクセスすることによって利用さ
れる。このとき、クライアントからのアクセスが多い場
合はサーバの負荷が大きくなりクライアントからの要求
に対する応答が遅くなる。このような場合、サーバの能
力を拡大するために一般にはサーバを複数台設けてサー
バの負荷を分散するようなことが行われている。
【0004】この場合、マスタとなるサーバとスレーブ
となるサーバにはそれぞれの状態を保持しあうログファ
イルを有し、これによって、マスタサーバのマスタデー
タとスレーブサーバにおけるマスタデータの複製(レプ
リカ)との差分の管理を行っている。このログファイル
は、マスタのサーバにはスレーブのサーバの個数分有
し、各スレーブのサーバにはマスタのサーバに対するロ
グファイルをそれぞれ有している。
【0005】ここで、いずれかのサーバで更新処理がな
された場合には、すべてのサーバで最新のデータにする
べくサーバ間での同期処理、すなわちレプリケーション
が行われる。レプリケーションを行うときには、マスタ
およびスレーブ双方のサーバのデータベースに書き込み
禁止を設定し、クライアントからのアクセスを停止した
状態でログファイルの交換を行う。すべてのスレーブの
レプリケーションはスレーブサーバの個数に比例するた
め、レプリケーションは厳重なスケジューリングの下で
行われる。
【0006】一方、モバイルコンピューティング環境で
は、リレーショナルデータベース上のマスタデータを保
持しているサーバと、そのマスタデータのレプリカを保
持している個々の携帯情報端末とはネットワークを介し
て接続されるが、その接続は恒久的なものではなく、任
意の時間に行われ、しかも任意の時間間隔で切断され
る。このため、クライアント・サーバシステムにおける
サーバ間でのレプリケーションと違って、サーバと携帯
情報端末との間でのデータのレプリケーションは、携帯
情報端末をサーバに接続した時に行われることになる。
【0007】
【発明が解決しようとする課題】しかしながら、レプリ
カの数が数十を越し、レプリカを保持している携帯情報
端末がネットワークから任意の時間から任意の時間間隔
で切断され、レプリカとマスタのデータの同期がそれぞ
れのコンピュータについて任意の時間に行われるような
利用形態での運用の場合には、クライアント・サーバシ
ステムで行われていたサーバ間でのレプリケーションの
手法を適用することはできない。
【0008】すなわち、クライアント・サーバシステム
の場合のレプリカの利用が負荷分散を目的としたもので
あるため、レプリカの個数はそれほど多くはなく、マス
タデータとそのレプリカとの差分の管理を行うログファ
イルの数も多くはない。しかし、レプリカの数が数十、
数百と増えると、サーバで有しなければいけないログフ
ァイルもその数だけ増加し、それらを保持するためのデ
ィスク容量が増大し、実現が現実的でない。
【0009】また、クライアント・サーバシステムにお
けるレプリケーションは、マスタサーバとスレーブサー
バとの間での厳重なスケジューリングの下で行われ、し
かもすべてのレプリカに対する同期の完了時間がレプリ
カの個数に比例するため、レプリカの個数が極端に多い
運用環境では本来の性能が望めないなど運用に制限を受
けることになる。
【0010】また、同一レコードに対する更新があった
場合、それらをマスタデータに反映するときに必ず更新
競合が発生するが、任意のタイミングで更新を行うよう
な運用では、それが時間的にシーケンシャルに行われる
ことはないので、更新競合の問題は残り、正常に動作し
ない。
【0011】また、サーバ間のレプリケーションで更新
の競合が発生した場合の矛盾解消の方法もマスタ優先と
レプリカ優先とを準備している程度であり、現在の最も
新しく正しいデータを収集、配布することは不可能であ
るという問題点があった。
【0012】本発明はこのような点に鑑みてなされたも
のであり、リレーショナルデータベース上のマスタ機の
データとそのデータを複製して保持していて通常はマス
タ機とは切り離して運用されるレプリカ機のデータとを
同期させるリレーショナルデータベース同期方法を提供
することを目的とする。
【0013】
【課題を解決するための手段】図1は上記目的を達成す
る本発明の原理図である。図1において、マスタ機1は
リレーショナルデータベース上のマスタデータ2を保持
し、ネットワーク3に接続されている。レプリカ機4は
マスタデータ2を複製したレプリカデータ5を保持して
いる。レプリカ機4はネットワーク3を通じマスタ機に
対して任意の時間に接続され、また、任意の時間間隔で
切断される。マスタ機1との接続を切断したレプリカ機
4nは、この状態でデータ更新を行う。
【0014】上記構成において、レプリカ機4で更新さ
れたレプリカデータ5をマスタ機1のマスタデータ2と
同期を取るとき、任意の時間に、レプリカ機4をネット
ワーク3を通じてマスタ機1に接続する。次に、レプリ
カ機4で、レプリカデータ5からマスタ差分抽出完了時
刻より最終更新日の新しいレコードをレプリカ差分とし
て抽出し、これをネットワーク3を通じてマスタ機1へ
転送する。マスタ機1では、同期依頼のあったレプリカ
機が保持しているレコードを対象に、マスタデータ2か
らレプリカ差分反映時刻がマスタ差分抽出完了時刻より
新しいレコードをマスタ差分として抽出し、マスタ差分
抽出完了時刻を現時刻に更新する。次に、レプリカ差分
をマスタデータ2に反映し、マスタ差分とマスタ差分抽
出完了時刻とをレプリカ機4に転送する。レプリカ機4
では、マスタ差分をレプリカデータ5に反映し、マスタ
差分抽出完了時刻を転送されてきたマスタ差分抽出完了
時刻に更新し、マスタ機1との接続を切断する。これに
より、同期処理を任意の時間に行ったとしても、複数の
レプリカ機で別々に更新されたレコードは、レコードが
更新された時間に応じて正確にマスタ機1に収集され、
マスタ機1で更新されていたレコードはレプリカ機に正
確に配布される。
【0015】また、本発明によれば、マスタ機にあるリ
レーショナルデータベース上のマスタデータから同期依
頼のあったレプリカ機が保持しているレプリカデータの
レコードを対象に、レプリカ差分反映時刻がマスタ差分
抽出完了時刻より新しいレコードを前記マスタデータか
らマスタ差分として抽出するとともに前記マスタ差分抽
出完了時刻を現時刻に更新するマスタ差分抽出手段、前
記マスタ差分および更新された前記マスタ差分抽出完了
時刻を前記レプリカ機に転送するマスタ差分転送手段、
前記マスタ差分転送手段により転送された前記マスタ差
分を前記レプリカデータに反映するとともに前記レプリ
カ機で保持している前記マスタ差分抽出完了時刻を転送
されてきたマスタ差分抽出完了時刻に更新するマスタ差
分反映手段、前記レプリカデータから最終更新日が前記
マスタ差分抽出完了時刻より新しいレコードをレプリカ
差分として抽出するレプリカ差分抽出手段、前記レプリ
カ差分抽出手段により抽出された前記レプリカ差分を前
記マスタ機に転送するレプリカ差分転送手段、前記レプ
リカ差分転送手段により転送された前記レプリカ差分を
前記マスタデータに反映するレプリカ差分反映手段、お
よび前記マスタ差分抽出手段および前記レプリカ差分反
映手段の実行順序を管理するキュー処理手段を有するリ
レーショナルデータベース同期プログラムを記録したコ
ンピュータ読み取り可能な記録媒体が提供される。
【0016】この媒体に記録されたリレーショナルデー
タベース同期プログラムをマスタサーバおよびレプリカ
サーバのコンピュータに実行させることにより、マスタ
差分抽出手段と、マスタ差分転送手段と、レプリカ差分
反映手段と、キュー処理手段との各機能がマスタサーバ
のコンピュータによって実現され、マスタ差分反映手段
と、レプリカ差分抽出手段と、レプリカ差分転送手段と
の各機能がレプリカサーバのコンピュータによって実現
される。
【0017】
【発明の実施の形態】まず、本発明の概略について図面
を参照して説明する。図1は本発明の原理的な構成を示
す図である。図1において、マスタ機1はリレーショナ
ルデータベース上のマスタデータ2を共有データとして
保持している。このマスタ機1はまた、ネットワーク3
に恒久的に接続されている。一方、レプリカ機4はマス
タデータ2の一部を複製したレプリカデータ5を保持し
ている。このレプリカ機4はネットワーク3を通じマス
タ機1に対して任意の時間に接続され、また、任意の時
間間隔で切断される。図1では、レプリカ機4はネット
ワーク3に接続されている状態を示しており、レプリカ
機4nはネットワーク3から切断されている状態を示し
ている。レプリカ機における新規レコード作成、既存レ
コードの更新、またはレコード削除などのデータ更新
は、通常、レプリカ機4nのようにネットワーク3から
切断された状態で行われる。
【0018】ここで、レプリカ機4nにおいて更新され
たレプリカデータ5をマスタ機1のマスタデータ2と同
期を取るには、任意の時間に、レプリカ機4のように、
まず、ネットワーク3を通じてマスタ機1に接続する。
次いで、レプリカ機4では、レプリカデータ5からマス
タ差分抽出完了時刻より最終更新日の新しいレコードを
レプリカ差分として抽出し、抽出したレプリカ差分をネ
ットワーク3を通じてマスタ機1へ転送する。マスタ機
1では、まず、同期依頼のあったレプリカ機4が保持し
ているレコードを対象に、マスタデータ2からレプリカ
差分反映時刻がマスタ差分抽出完了時刻より新しいレコ
ードをマスタ差分として抽出する。このとき、同期依頼
のあったレプリカ機4に対応するマスタ差分抽出完了時
刻は現時刻に更新される。次に、レプリカ差分をマスタ
データ2に反映することにより、同期依頼のあったレプ
リカ機で更新された最終更新日の新しいレコードに対応
するマスタ機1のマスタデータ2のレコードが更新され
ることになる。次に、マスタ機1は、先に抽出したマス
タ差分を現時刻に更新されたマスタ差分抽出完了時刻と
ともにレプリカ機4に転送する。レプリカ機4では、転
送されたマスタ差分をレプリカデータ5に反映し、レプ
リカ機4で保持しているマスタ差分抽出完了時刻を転送
されてきたマスタ差分抽出完了時刻に更新する。このよ
うにして、複数のレプリカ機で別々に更新されたレコー
ドは、レコードが更新された時間に応じて正確にマスタ
機1に収集される。また、マスタ機1で更新されていた
レコードも各レプリカ機に正確に配布されたことにな
る。以上で、マスタデータ2とレプリカデータ5との同
期処理が完了したので、レプリカ機4はいつでもネット
ワーク3への接続を切断することが可能になる。
【0019】次に、本発明の実施の形態を、営業マンが
所有するすべてのモバイルコンピュータであるレプリカ
機にマスタ機の共有データのレプリカを配置し、営業マ
ンが営業所に戻ったときに同期処理を実行するような業
務に適用した場合を例にして説明する。
【0020】図2は商談管理データベースシステムの機
器構成を示す図である。図2において、商談管理データ
ベースのサーバであるマスタ機11がLAN(local ar
ea network)12に接続されており、このLAN12に
は複数のレプリカ機13a〜13nがデータ交換可能な
形態にて接続されている。この複数のレプリカ機13a
〜13nとLAN12との接続形態としては、たとえば
LAN12に接続されたクライアントとのケーブルによ
るシリアル接続または赤外線接続を介して行われる。あ
るいは、LAN12に接続された図示しないダイアルア
ップサーバを利用し、レプリカ機に装着したモデムおよ
び公衆回線を介してLAN12に接続することができ
る。
【0021】マスタ機11には商談管理データベースが
実装され、各レプリカ機13a〜13nにはその商談管
理データベースのマスタデータのレプリカが保持されて
いる。レプリカ機13a〜13nは、たとえば一人の営
業マンに対して一台割り当てられており、通常はそれぞ
れLAN12から切り離された状態で使用される。出先
で更新された商談情報は営業所に戻ったときにLAN1
2に接続して、同期処理を実行することになる。
【0022】次に、マスタ機11およびレプリカ機13
a〜13nの構成について説明する。ただし、レプリカ
機13a〜13nについてはすべて同じ構成を有してい
るので、ここでは代表してある1台のレプリカ機13n
のみについて説明する。
【0023】図3はマスタ機およびレプリカ機の同期処
理に関する構成例を示す図である。図3において、マス
タ機11では、商談管理データベース(DB)21がマ
スタデータベースとして運用されている。この商談管理
データベース21では、マスタデータがたとえば同期対
象テーブルとしての商談テーブル22および顧客テーブ
ル23と、複製管理テーブル24とからなっているとす
る。商談テーブル22および顧客テーブル23は、商談
関連情報および顧客情報の他にそれぞれ同期情報を持っ
ている。マスタ機11はさらに、レプリカ機13nから
転送されたレプリカ差分ファイル25を商談管理データ
ベース21に反映するレプリカ差分反映部26と、商談
管理データベース21からマスタ差分ファイル28を抽
出するマスタ差分抽出部27と、マスタ差分ファイル2
8をレプリカ機13nに転送するマスタ差分転送部とを
有している。
【0024】レプリカ機13nには、マスタデータの一
部を複製して運用するレプリカデータベース31があ
る。このレプリカデータベース31のレプリカデータ
は、マスタ機11と同様、同期対象テーブルとしての商
談テーブル32および顧客テーブル33と、複製管理テ
ーブル34とからなっている。商談テーブル32および
顧客テーブル33は、商談関連情報および顧客情報の他
にそれぞれ同期情報を持っている。レプリカ機13nは
さらに、レプリカデータベース31からレプリカ差分フ
ァイル35を抽出するレプリカ差分抽出部36と、レプ
リカ差分ファイル35をマスタ機11に転送するレプリ
カ差分転送部37と、マスタ機11から転送されたマス
タ差分ファイル38をレプリカデータベース31に反映
するマスタ差分反映部39とを有している。
【0025】図4は複製管理テーブルの一例を示す図で
ある。複製管理テーブルは、同期処理の際に必要な更新
識別情報を保持しておくためのテーブルであって、マス
タ機11およびレプリカ機13nに存在する。この複製
管理テーブルは、少なくとも「利用者番号」、「グルー
プ番号」、および「マスタ差分抽出完了時刻」のフィー
ルドから構成されている。ここで、「利用者番号」は営
業マンを識別するために割り当てられた番号であり、レ
プリカが配布されたレプリカ機を特定するための番号で
もある。営業マンはグループで行動することが多いの
で、グループの範囲の中でデータの共有ができるよう考
慮して、レプリカを配布する対象を特定するための「グ
ループ番号」が設けられている。つまり、同じ営業グル
ープにいる営業マンは同じ顧客を訪問することがある。
そのときに前人の営業マンの折衝情報を参照することが
できるよう、グループ単位でデータのレプリカを作るよ
うなことが要求され、その場合にグループ番号が利用さ
れる。また、複数のグループに所属している場合には、
レプリカ作成時に、それぞれのグループ番号がその利用
者番号のレプリカ機上に作成される。「マスタ差分抽出
完了時刻」はそのレプリカ機に対するマスタ側の差分を
抽出した時刻を示すもので、たとえば図示の例がマスタ
機11における複製管理テーブルであるとすると、ある
グループ番号に関して、利用者番号が12番の営業マン
は「1997年9月2日23時33分52秒」にマスタ
機11から差分を抽出したことを示している。図示の例
がレプリカ機13nにおける複製管理テーブルとし、あ
るグループ番号に関して抽出した差分が正しくレプリカ
に反映されたとすれば、レプリカはその時刻にマスタ機
11のデータベースの内容と完全に一致しているといえ
る。
【0026】また、更新識別のためにレプリカを作成す
るデータベースのそれぞれのテーブル、ここでは商談テ
ーブルおよび顧客テーブルには、商談関連情報および顧
客情報以外に同期処理のための同期情報をそれぞれ有し
ている。商談テーブルの場合を例に図5にそのデータ構
成を示す。
【0027】図5は商談テーブルのデータ構成例を示す
図である。この商談テーブルには、商談関連情報の他に
同期情報を保持するためのフィールドが新たに設けられ
ている。同期情報としては、少なくとも「利用者番
号」、「グループ番号」、「最終更新日」、「削除フラ
グ」、「レプリカ差分反映時刻」および「補助主キー」
のフィールドから構成されている。
【0028】「利用者番号」および「グループ番号」
は、複製管理テーブルの「利用者番号」および「グルー
プ番号」と同じである。「最終更新日」は、レプリカ機
でデータが更新された時間を表し、同期後は、マスタ機
およびすべてのレプリカ機でこの時間は等しくなる。
「削除フラグ」は、レプリカ機でレコード削除を行った
ときに削除を行ったことを記録するもので、実際のレコ
ードの削除は、通常の同期終了後に行われる。「レプリ
カ差分反映時刻」は、レプリカ機で更新されたレコー
ド、つまりレプリカ差分がマスタ機の商談管理データベ
ースに反映された時刻である。「補助主キー」は利用者
番号と連結することにより主キーとなるキーである。主
キーは、通常、商談管理データベースシステムの中で一
意であって、これでレコードを識別できるが、モバイル
で運用する場合は、新たにデータを追加したときにそれ
ぞれのレプリカ機で同一の主キーが作られてしまう矛盾
が発生する可能性があるので、利用者番号と連結して主
キーとする補助主キーが必要になる。
【0029】以上の複製管理テーブルと商談テーブルお
よび顧客テーブルに追加されたフィールドの情報とを用
いて同期処理を行うが、次に、その手順を新規レコード
作成、レコード更新、およびレコード削除について順次
説明する。
【0030】図6は新規レコード作成の処理の流れを示
すフローチャートである。レプリカ機の側で新規にレコ
ードを作成する場合、まず、対象となるテーブルに新規
レコードを追加する(ステップS1)。このとき、対象
となるテーブルがたとえば図5に示した商談テーブルで
あるとすると、このテーブルの同期情報のフィールドに
おいて、「利用者番号」フィールドはレプリカ機に割り
当てられた「利用者番号」にする。また、「グループ番
号」フィールドは「複製管理テーブル」の中の「利用者
番号」が一致するグループの中から、新規レコード作成
者が選択して設定する。「最終更新日」フィールドは新
規レコードが作成された時間をレプリカ機のシステム時
計から取得して設定する。「削除フラグ」フィールドは
「削除しない」に設定し、「レプリカ差分反映時刻」フ
ィールドはマスタ機側で自動的に付けられるので、ここ
では特に何も設定しなくてよい。そして、「補助主キ
ー」フィールドには、「利用者番号」に対して一意とな
る値を設定する。商談関連情報の各フィールドについて
はそれぞれ適宜初期化する。
【0031】次に、マスタ機と接続し(ステップS
2)、新規に作成されたレコードをマスタ機の商談デー
タベースに反映すべく、マスタ機との同期処理を行う
(ステップS3)。この同期処理の詳細は、図7で詳述
する。最後に、任意の時間にマスタ機との接続を切断す
る(ステップS4 )。
【0032】図7は同期処理の流れを示すフローチャー
トである。同期処理では、まず、レプリカ機にて、レプ
リカデータベースから更新のあったレコード、すなわち
レプリカ差分を抽出する(ステップS11)。このレプ
リカ差分抽出処理の詳細は、図8にて詳述する。次に、
レプリカ差分をマスタ機に転送し(ステップS12)、
レプリカ差分を受け取ったマスタ機では、レプリカ機が
接続した時点で更新されていたレコードの商談管理デー
タベースのマスタデータからの抽出、すなわちマスタ差
分抽出処理をし(ステップS13)、商談管理データベ
ースのマスタデータに対するレプリカ差分の反映処理を
行い(ステップS14)、マスタ差分および複製管理テ
ーブルをレプリカ機に転送する(ステップS15)。マ
スタ差分抽出処理の詳細は、図9で詳述し、レプリカ差
分反映処理の詳細は、図10で詳述する。そして、レプ
リカ機では、マスタ機から転送されたマスタ差分をレプ
リカデータベースに反映する(ステップS16)。この
マスタ差分反映処理の詳細は、図11で詳述する。
【0033】図8はレプリカ差分抽出処理の流れを示す
フローチャートである。レプリカ機におけるレプリカ差
分の抽出処理においては、まず、「複製管理テーブル」
から「利用者番号」が現レプリカ機に割り当てられた利
用者番号と一致する1レコードを抽出し、参照用の「一
時テーブル」と称するテーブルに格納する(ステップS
21)。次に、商談テーブル、顧客テーブルなどすべて
のテーブルについて以降の繰り返しの処理を行う(ステ
ップS22)。まず、すべてのテーブルについて処理が
終了したかどうかの判断があり(ステップS23)、す
べてのテーブルの処理が終了したならば、このレプリカ
差分抽出処理は終了する。
【0034】次に、一時テーブルに抽出されたレコード
から「グループ番号」を抽出し、その「グループ番号」
と一致するレコードを商談テーブル、顧客テーブルなど
の各テーブルから抽出する(ステップS24)。あるテ
ーブルについての抽出処理が終了したかどうかが判断さ
れ(ステップS25)、終了したならば、次のテーブル
の処理のためにステップS22に戻る。次に、それぞれ
抽出されたレコードについて、以降の繰り返しの処理を
行う(ステップS26)。次に、レコードの終りかどう
かの判断があり(ステップS27)、レコードの終わり
ならば、次のレコードの抽出のためにステップS24に
戻る。次に、あるレコードについて、「グループ番号」
で抽出してきたレコードの中から「最終更新日」と複製
管理テーブルの「マスタ差分抽出完了時刻」とを比較す
る(ステップS28)。ここで、そのレコードの「最終
更新日」が「マスタ差分抽出完了時刻」より古ければ、
次のレコードを調べるために、ステップS26に戻り、
「最終更新日」が「マスタ差分抽出完了時刻」より新し
い場合は、そのレコードを抽出し、レプリカ差分ファイ
ルに追加して保存し(ステップS29)、ステップS2
6に戻る。これにより、商談テーブル、顧客テーブルな
どのすべてのテーブルから、同じグループのレコードの
中から新しいレコードを抽出することができる。
【0035】図9はマスタ差分抽出処理の流れを示すフ
ローチャートである。レプリカ差分がマスタ機に転送さ
れると、マスタ機では、まず、マスタ差分の抽出処理が
行われる。このマスタ差分の抽出処理においては、ま
ず、処理依頼を行ったレプリカの「利用者番号」と一致
するレコードを「複製管理テーブル」から抽出し、「一
時テーブル」に格納する(ステップS31)。次に、商
談テーブル、顧客テーブルなどすべてのテーブルについ
て以降の繰り返しの処理を行う(ステップS32)。ま
ず、すべてのテーブルについて処理が終了したかどうか
の判断があり(ステップS33)、すべてのテーブルの
処理が終了したならば、このマスタ差分抽出処理は終了
する。
【0036】次に、一時テーブルに抽出されたレコード
から「グループ番号」を抽出し、その「グループ番号」
と一致するレコードを商談テーブル、顧客テーブルなど
の各テーブルから抽出する(ステップS34)。あるテ
ーブルについての抽出処理が終了したかどうかが判断さ
れ(ステップS35)、終了したならば、次のテーブル
の処理のためにステップS32に戻る。次に、それぞれ
抽出されたレコードについて、以降の繰り返しの処理を
行う(ステップS36)。次に、あるレコードについ
て、「グループ番号」で抽出してきたレコードの中から
「レプリカ差分反映時刻」と複製管理テーブルの「マス
タ差分抽出完了時刻」とを比較する(ステップS3
7)。ここで、そのレコードの「レプリカ差分反映時
刻」が「マスタ差分抽出完了時刻」より古ければ、次の
レコードを調べるために、ステップS36に戻り、「レ
プリカ差分反映時刻」が「マスタ差分抽出完了時刻」よ
り新しい場合には、そのレコードを抽出し、マスタ差分
ファイルに追加して保存する(ステップS38)。次
に、レコードの終りかどうかの判断があり(ステップS
39)、レコードの終わりでなければ、次のレコードの
抽出のためにステップS36に戻る。あるテーブルにつ
いてのレコード処理がすべて終了すると、「複製管理テ
ーブル」の「マスタ差分抽出完了時刻」を現在時刻に更
新する。
【0037】図10はレプリカ差分反映処理の流れを示
すフローチャートである。レプリカ機から転送されてき
たレプリカ差分をマスタ機の商談管理データベースに反
映するとき、まず、商談テーブル、顧客テーブルなどす
べてのテーブルについて以降の繰り返しの処理を行う
(ステップS51)。次に、すべてのテーブルについて
処理が終了したかどうかの判断があり(ステップS5
2)、すべてのテーブルの処理が終了したならば、この
レプリカ差分反映処理は終了する。次に、レプリカ差分
のレコードについて同様に繰り返しの処理を行い(ステ
ップS53)、レコードが終りかどうかが判断される
(ステップS54)。レコードが終りでなければ、一時
テーブルに抽出されたレコードから「利用者番号」と
「補助主キー」との結合キーが一致するレコードについ
て、レプリカ差分の「最終更新日」とマスタ差分の「最
終更新日」とを比較する(ステップS55)。ここで、
レプリカ差分における「最終更新日」が新しい場合は、
マスタデータのレコードを更新し(ステップS56)、
レプリカ差分反映時刻を現時刻とする(ステップS5
7)。その後、ステップS51に戻って、以上の操作を
すべてのテーブルについて行うことになる。また、ステ
ップS55にて、レプリカ差分の「最終更新日」がマス
タ差分の「 最終更新日」より新しくない場合およびマス
タ差分にレプリカ差分のレコードに該当する比較対象が
ない場合には、レプリカ差分に対応するレコードがマス
タにないかどうかが判断される(ステップS58)。レ
プリカ差分に対応するレコードがマスタにあって、それ
の「最終更新日」が新しい場合は更新の必要はないの
で、ステップS53に戻る。レプリカ機で新規に作成さ
れている場合は、そのレコードはマスタにはないので、
次に、そのレプリカ差分をマスタに追加し (ステップS
59)、レプリカ差分反映時刻を現時刻に変更する。
【0038】その後、マスタ機から、マスタ差分ファイ
ルと「複製管理テーブル」のファイルとをレプリカ機に
転送し、最後にレプリカ機において、マスタ差分をレプ
リカデータベースへ反映する処理および複製管理テーブ
ルの更新処理を行う。
【0039】図11はマスタ差分反映処理の流れを示す
フローチャートである。マスタ機から転送されてきたマ
スタ差分をレプリカ機のレプリカデータベースに反映す
るとき、まず、商談テーブル、顧客テーブルなどすべて
のテーブルについて以降の繰り返しの処理を行う(ステ
ップS61)。次に、すべてのテーブルについて処理が
終了したかどうかの判断があり(ステップS62)、す
べてのテーブルの処理が終了したならば、このマスタ差
分反映処理は終了する。次に、マスタ差分のレコードに
ついて同様に繰り返しの処理を行い(ステップS6
3)、レコードが終りかどうかが判断される(ステップ
S64)。ここで、レコードが終りであれば、次のテー
ブルに処理を移すため、ステップS61に戻る。また、
レコードが終りでなければ、「利用者番号」と「補助主
キー」との結合キーが一致するレコードについて、「最
終更新日」をマスタ差分の「最終更新日」と比較する
(ステップS65)。ここで、マスタ差分の「最終更新
日」が新しい場合は、レプリカデータの対象となるレコ
ードをマスタ差分によって更新し、「複製管理テーブ
ル」を転送されてきた新しい「複製管理テーブル」に置
き換える(ステップS66)。また、ステップS65に
おいて、マスタ差分の「最終更新日」が新しくない場合
およびレプリカに比較対象のレコードがない場合は、マ
スタ差分に対応するレコードがレプリカにないかどうか
が判断される (ステップS67)。マスタ差分に対応す
るレコードがレプリカにあって、その「 最終更新日」が
新しい場合は、更新の必要がないので、ステップS63
に戻る。マスタ差分に対応するレコードがレプリカにな
ければ、マスタ差分をレプリカに追加することになる
(ステップS68)。
【0040】次に、レコード更新の場合の同期処理につ
いて説明する。図12はレプリカ機でレコード更新を行
った場合の同期処理の流れを示すフローチャートであ
る。レプリカ機の側で既存のレコードを更新する場合は
以下の手順に従う。まず、レプリカ機における商談テー
ブル、顧客テーブルなどの対象となるレコードのユーザ
領域、すなわち商談テーブルの同期情報を除く商談関連
情報、顧客テーブルの同期情報を除く顧客情報をユーザ
の要請に応じて更新する(ステップS71)。次に、更
新したレコードの同期情報の「最終更新日」を更新した
現時刻に設定する(ステップS72)。その後、レプリ
カ機をマスタ機に接続し(ステップS73)、図7に示
した同期処理を行い(ステップS74)、マスタ機から
切断する(ステップS75)。
【0041】次に、レコード削除の場合の同期処理につ
いて説明する。図13はレプリカ機でレコード削除を行
った場合の同期処理の流れを示すフローチャートであ
る。レプリカ機で既存のレコードの削除を行った場合
は、以下の手順に従う。まず、対象となるレコードの削
除要求を受けると(ステップS81)、ここではそのレ
コードの削除はすぐには実行しない。次に、そのレコー
ドにおける同期情報の「削除ブラグ」を「削除しない」
から「削除する」に変更する(ステップS82)。次
に、「最終更新日」をレコード削除した現在時刻に設定
する(ステップS83)。その後、マスタ機と接続して
同期処理を行う(ステップS84,S85)。この同期
処理が終了し、マスタ機から切断した後に(ステップS
86)、レプリカ機の側で、各テーブルから「削除フラ
グ」が「削除する」に設定されているレコードを探索
し、「削除フラグ」が「削除する」に設定されたレコー
ドがあれば、そのレコードを削除する(ステップS8
7)。
【0042】次に、同期処理時におけるマスタ機との接
続時間を短くした本発明によるリレーショナルデータベ
ース同期方法の別の実施の形態について説明する。図1
4は第2の実施の形態におけるマスタ機およびレプリカ
機の構成例を示す図である。図14において、図3に示
した構成要素同じ要素については同一の符号を付してそ
の詳細な説明は省略する。図14によれば、レプリカ機
13nの側には、その構成に何ら変更はない。マスタ機
11には、マスタ差分抽出処理およびレプリカ差分反映
処理の実行順序を管理するキュー処理部41が新たに設
けられている。このキュー処理部41は、マスタ差分抽
出キュー42およびレプリカ差分反映キュー43を備え
ている。
【0043】次に、以上のような構成にてマスタ機11
とレプリカ機13nにおけるマスタデータとレプリカデ
ータとの同期処理について説明する。図15は高速化し
た同期処理の流れを示すフローチャートである。レプリ
カ機の側で新規レコード作成、レコード更新、またはレ
コード削除行った場合、それに対する同期処理は以下の
手順で行う。まず、レプリカ機とマスタ機との接続を行
った後、レプリカ機の側では、図8に示した手順に従っ
て、レプリカ差分を作成する(ステップS91)。次
に、作成されたレプリカ差分をマスタ機に転送する(ス
テップS92)。マスタ機の側では、キュー登録を行う
(ステップS93)。次に、マスタ機では、接続してい
るレプリカ機に関する処理の順番になると、図9に示し
た手順に従ってマスタ差分抽出処理を行い(ステップS
94)、マスタ差分および複製管理テーブルをレプリカ
機に転送する(ステップS95)。この後で、レプリカ
差分の反映を確認することなくレプリカ機とマスタ機と
の接続を切断する(ステップS96)。その後、レプリ
カ機において、図11に示した手順に従って、マスタ機
から転送されたマスタ差分をレプリカデータベースに反
映し、複製管理テーブルを更新する(ステップS9
7)。その後、マスタ機では、先に切断されたレプリカ
機に関する処理の順番になると、図10に示した手順に
従って商談管理データベースへのレプリカ差分の反映処
理が行われる(ステップS98)。ここで、ステップS
98におけるレプリカ差分反映処理については、たとえ
ば夜の間にバッチ処理される。このように、マスタ機
は、マスタ差分および複製管理テーブルをレプリカ機に
転送した直後に商談管理データベースを解放し、マスタ
機におけるレプリカ差分反映処理を後で行うようにした
ことにより、マスタ機とレプリカ機との接続を早く切断
することができ、同期処理を高速化できる。
【0044】ここで、レプリカ機の側では切断のタイミ
ングが異なるだけで、処理は図3の場合の処理と同じで
あるので、マスタ機11の側で行われる処理、すなわ
ち、ステップS93のキュー登録、ステップS94のマ
スタ差分抽出処理、およびステップS97のマスタ差分
反映処理に絞って、以下に説明する。
【0045】図16はマスタ側処理の流れを示すフロー
チャート、図17はキュー処理の流れを示すフローチャ
ートである。まず、図16において、レプリカ機から同
期処理の依頼があると、キュー処理部41はマスタ差分
抽出キュー42に利用者番号を登録し(ステップS10
1)、レプリカ差分反映キュー43に利用者番号を登録
する(ステップS102)。その後、図17に示した別
のプロセスで動いているキュー処理の中で、マスタ差分
抽出キュー42がクリアされるのを待ち合わせ(ステッ
プS103)、レプリカ差分反映キュー43がクリアさ
れるのを待ち合わせる(ステップS104)。この処理
は、同期処理の依頼があるごとに繰り返される。
【0046】一方、キュー処理に関しては、マスタ差分
抽出処理はレプリカ差分反映処理よりも高い優先度で実
施される。すなわち、マスタ差分抽出キュー42に登録
された順番に従って、以下のマスタ差分の抽出処理を待
ちキューごとに繰り返し行う(ステップS111)。こ
のとき、マスタ差分抽出キュー42が空であるかどうか
が判断され(ステップS112)、空でなければ、この
繰り返しを続行する。次に、図9に示した手順に従って
マスタ差分抽出処理が行われ(ステップS113)、マ
スタ差分の抽出が終われば、抽出の終わった待ちキュー
をマスタ差分抽出キュー42からクリアする(ステップ
S114)。その後、マスタ差分抽出キュー42が空に
なると、次に、レプリカ差分反映キュー43に登録され
た順番に従って、以下のレプリカ差分反映処理を待ちキ
ューごとに繰り返し行う(ステップS115)。すなわ
ち、図10に示した手順に従ってレプリカ差分反映処理
が行われ(ステップS116)、このレプリカ差分反映
処理が終了すると、レプリカ差分反映キュー43からそ
のレプリカ差分の反映を終えた待ちキューをクリアする
(ステップS117)。ここで、すべてのレプリカ差分
反映処理が終了すると、マスタ差分抽出キュー42への
新たな登録待ちとなり、新たな登録があれば、また、同
様にしてマスタ差分抽出処理から開始される。
【0047】
【発明の効果】以上説明したように本発明では、任意の
時間に、レプリカ機をマスタ機に接続し、レプリカデー
タからマスタ差分抽出完了時刻より最終更新日の新しい
レコードをレプリカ差分として抽出し、そのレプリカ差
分をマスタ機へ転送し、次に、マスタデータからレプリ
カ差分反映時刻がマスタ差分抽出完了時刻より新しいレ
コードをマスタ差分として抽出するとともにマスタ差分
抽出完了時刻を現時刻に更新し、レプリカ差分をマスタ
データに反映し、マスタ差分とマスタ差分抽出完了時刻
とをレプリカ機に転送し、そのマスタ差分をレプリカデ
ータに反映し、マスタ差分抽出完了時刻を転送されてき
たマスタ差分抽出完了時刻に更新するように構成した。
これにより、マスタ機と切断された状態で別個に更新さ
れた個々のレプリカ機のレプリカデータは、それが更新
された時間に応じてマスタ機に正確に収集され、それま
でのマスタ機で更新されていたデータもまた、正確に各
レプリカ機に正確に配布することができるため、レプリ
カ機はネットワークから任意の時間から任意の時間間隔
で切断することが可能となり、また同期のタイミングも
自由に設定できるようになる。
【0048】また、マスタ機およびレプリカ機の双方で
同期に必要なデータは同期処理のたびに毎回抽出してい
るので、マスタ機の側でレプリカ機ごとのトランザクシ
ョンログを作成する必要がなく、したがってレプリカ機
の数が増えることによるディスク領域(トランザクショ
ン領域)が増えることもなく、ディスク容量を節約する
ことができる。
【0049】さらに、マスタ差分をレプリカ機に転送し
た後の時点でレプリカ機とマスタ機との接続を切断し、
マスタ機におけるレプリカ差分反映を後でバッチ処理す
ることにより、レプリカ機とマスタ機との接続を早期に
切断でき、同期処理を高速化することができる。
【図面の簡単な説明】
【図1】本発明の原理的な構成を示す図である。
【図2】商談管理データベースシステムの機器構成を示
す図である。
【図3】マスタ機およびレプリカ機の同期処理に関する
構成例を示す図である。
【図4】複製管理テーブルの一例を示す図である。
【図5】商談テーブルのデータ構成例を示す図である。
【図6】新規レコード作成の処理の流れを示すフローチ
ャートである。
【図7】同期処理の流れを示すフローチャートである。
【図8】レプリカ差分抽出処理の流れを示すフローチャ
ートである。
【図9】マスタ差分抽出処理の流れを示すフローチャー
トである。
【図10】レプリカ差分反映処理の流れを示すフローチ
ャートである。
【図11】マスタ差分反映処理の流れを示すフローチャ
ートである。
【図12】レプリカ機でレコード更新を行った場合の同
期処理の流れを示すフローチャートである。
【図13】レプリカ機でレコード削除を行った場合の同
期処理の流れを示すフローチャートである。
【図14】第2の実施の形態におけるマスタ機およびレ
プリカ機の構成例を示す図である。
【図15】高速化した同期処理の流れを示すフローチャ
ートである。
【図16】マスタ側処理の流れを示すフローチャートで
ある。
【図17】キュー処理の流れを示すフローチャートであ
る。
【符号の説明】
1 マスタ機 2 マスタデータ 3 ネットワーク 4,4n レプリカ機

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 マスタ機にあるリレーショナルデータベ
    ース上のマスタデータを複製したレプリカデータを多数
    のレプリカ機で保持し、通常は前記マスタ機とはオフラ
    インの状態で個々のレプリカ機が前記レプリカデータを
    運用する場合に、前記レプリカデータとマスタデータと
    の同期を取るリレーショナルデータベース同期方法にお
    いて、 任意の時間に前記レプリカ機を前記マスタ機に接続して
    同期依頼をし、 前記レプリカ機にて前記レプリカデータから最終更新日
    がマスタ差分抽出完了時刻より新しいレコードをレプリ
    カ差分として抽出し、 抽出した前記レプリカ差分を前記マスタ機に転送し、 前記マスタ機にて同期依頼のあった前記レプリカ機が保
    持しているレコードを対象に、レプリカ差分反映時刻が
    マスタ差分抽出完了時刻より新しいレコードを前記マス
    タデータからマスタ差分として抽出して前記マスタ差分
    抽出完了時刻を現時刻に更新し、 前記レプリカ差分を前記マスタデータに反映し、 前記マスタ差分および更新された前記マスタ差分抽出完
    了時刻を前記レプリカ機に転送し、 前記レプリカ機にて前記マスタ機から転送された前記マ
    スタ差分を前記レプリカデータに反映し、前記レプリカ
    機で保持している前記マスタ差分抽出完了時刻を転送さ
    れてきたマスタ差分抽出完了時刻に更新し、 前記レプリカ機と前記マスタ機との接続を切断する、 ことを特徴とするリレーショナルデータベースの同期方
    法。
  2. 【請求項2】 前記マスタデータおよびレプリカデータ
    は、同期対象テーブルと複製管理テーブルとから構成さ
    れていることを特徴とする請求項1記載のリレーショナ
    ルデータベースの同期方法。
  3. 【請求項3】 前記複製管理テーブルは、前記レプリカ
    機を特定するための利用者番号と、複数の前記レプリカ
    機からなるグループを特定するためのグループ番号と、
    前記マスタ差分抽出完了時刻とを保持していることを特
    徴とする請求項2記載のリレーショナルデータベースの
    同期方法。
  4. 【請求項4】 前記同期対象テーブルは、前記レプリカ
    機を特定するための利用者番号と、複数の前記レプリカ
    機からなるグループを特定するためのグループ番号と、
    前記レプリカ機でレコードが更新された前記最終更新日
    と、前記レプリカ機で行った削除を記録する削除フラグ
    と、前記レプリカ差分反映時刻と、前記利用者番号と組
    みにすることにより利用者を一意に特定する主キーとな
    る補助主キーとを保持していることを特徴とする請求項
    2記載のリレーショナルデータベースの同期方法。
  5. 【請求項5】 マスタ機にあるリレーショナルデータベ
    ース上のマスタデータを複製したレプリカデータを多数
    のレプリカ機で保持し、通常は前記マスタ機とはオフラ
    インの状態で個々のレプリカ機が前記レプリカデータを
    運用する場合に、前記レプリカデータとマスタデータと
    の同期を取るリレーショナルデータベース同期方法にお
    いて、 任意の時間に前記レプリカ機を前記マスタ機に接続して
    同期依頼をし、 前記レプリカ機にて前記レプリカデータから最終更新日
    がマスタ差分抽出完了時刻より新しいレコードをレプリ
    カ差分として抽出し、 抽出した前記レプリカ差分を前記マスタ機に転送し、 前記マスタ機にて同期依頼のあった前記レプリカ機をマ
    スタ差分抽出キューに登録し、 前記マスタ機にて同期依頼のあった前記レプリカ機をレ
    プリカ差分反映キューに登録し、 前記マスタ差分抽出キューに登録された待ちキューが前
    記同期依頼のあった前記レプリカ機の順番になったとき
    に前記レプリカ機が保持しているレコードを対象に、レ
    プリカ差分反映時刻がマスタ差分抽出完了時刻より新し
    いレコードを前記マスタデータからマスタ差分として抽
    出して前記マスタ差分抽出完了時刻を現時刻に更新し、 前記マスタ差分および更新された前記マスタ差分抽出完
    了時刻を前記レプリカ機に転送し、 前記レプリカ機と前記マスタ機との接続を切断し、 前記レプリカ機にて前記マスタ機から転送された前記マ
    スタ差分を前記レプリカデータに反映し、前記レプリカ
    機で保持している前記マスタ差分抽出完了時刻を転送さ
    れてきたマスタ差分抽出完了時刻に更新し、 前記レプリカ差分反映キューに登録された待ちキューが
    前記同期依頼のあった前記レプリカ機の順番になったと
    きに前記レプリカ差分を前記マスタデータに反映する、 ことを特徴とするリレーショナルデータベースの同期方
    法。
  6. 【請求項6】 前記マスタデータおよびレプリカデータ
    は、同期対象テーブルと複製管理テーブルとから構成さ
    れていることを特徴とする請求項5記載のリレーショナ
    ルデータベースの同期方法。
  7. 【請求項7】 前記複製管理テーブルは、前記レプリカ
    機を特定するための利用者番号と、複数の前記レプリカ
    機からなるグループを特定するためのグループ番号と、
    前記マスタ差分抽出完了時刻とを保持していることを特
    徴とする請求項6記載のリレーショナルデータベースの
    同期方法。
  8. 【請求項8】 前記同期対象テーブルは、前記レプリカ
    機を特定するための利用者番号と、複数の前記レプリカ
    機からなるグループを特定するためのグループ番号と、
    前記レプリカ機でレコードが更新された前記最終更新日
    と、前記レプリカ機で行った削除を記録する削除フラグ
    と、前記レプリカ差分反映時刻と、前記利用者番号と組
    みにすることにより利用者を一意に特定する主キーとな
    る補助主キーとを保持していることを特徴とする請求項
    6記載のリレーショナルデータベースの同期方法。
  9. 【請求項9】 前記レプリカ差分をマスタデータに反映
    するステップは、夜間バッチにより行うことを特徴とす
    る請求項5記載のリレーショナルデータベースの同期方
    法。
  10. 【請求項10】 マスタ機にあるリレーショナルデータ
    ベース上のマスタデータから同期依頼のあったレプリカ
    機が保持しているレプリカデータのレコードを対象に、
    レプリカ差分反映時刻がマスタ差分抽出完了時刻より新
    しいレコードを前記マスタデータからマスタ差分として
    抽出するとともに前記マスタ差分抽出完了時刻を現時刻
    に更新するマスタ差分抽出手段、前記マスタ差分および
    更新された前記マスタ差分抽出完了時刻を前記レプリカ
    機に転送するマスタ差分転送手段、前記マスタ差分転送
    手段により転送された前記マスタ差分を前記レプリカデ
    ータに反映するとともに前記レプリカ機で保持している
    前記マスタ差分抽出完了時刻を転送されてきたマスタ差
    分抽出完了時刻に更新するマスタ差分反映手段、前記レ
    プリカデータから最終更新日が前記マスタ差分抽出完了
    時刻より新しいレコードをレプリカ差分として抽出する
    レプリカ差分抽出手段、前記レプリカ差分抽出手段によ
    り抽出された前記レプリカ差分を前記マスタ機に転送す
    るレプリカ差分転送手段、前記レプリカ差分転送手段に
    より転送された前記レプリカ差分を前記マスタデータに
    反映するレプリカ差分反映手段、および前記マスタ差分
    抽出手段および前記レプリカ差分反映手段の実行順序を
    管理するキュー処理手段を有するリレーショナルデータ
    ベース同期プログラムを記録したコンピュータ読み取り
    可能な記録媒体。
JP07687598A 1998-03-25 1998-03-25 リレーショナルデータベース同期方法およびそのプログラムを記録した記録媒体 Expired - Fee Related JP4187302B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP07687598A JP4187302B2 (ja) 1998-03-25 1998-03-25 リレーショナルデータベース同期方法およびそのプログラムを記録した記録媒体
US09/145,030 US6374262B1 (en) 1998-03-25 1998-09-01 Relational database synchronization method and a recording medium storing a program therefore

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP07687598A JP4187302B2 (ja) 1998-03-25 1998-03-25 リレーショナルデータベース同期方法およびそのプログラムを記録した記録媒体

Publications (2)

Publication Number Publication Date
JPH11272533A true JPH11272533A (ja) 1999-10-08
JP4187302B2 JP4187302B2 (ja) 2008-11-26

Family

ID=13617821

Family Applications (1)

Application Number Title Priority Date Filing Date
JP07687598A Expired - Fee Related JP4187302B2 (ja) 1998-03-25 1998-03-25 リレーショナルデータベース同期方法およびそのプログラムを記録した記録媒体

Country Status (2)

Country Link
US (1) US6374262B1 (ja)
JP (1) JP4187302B2 (ja)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001142766A (ja) * 1999-11-10 2001-05-25 Nec Corp データベース交換システム
JP2001297023A (ja) * 2000-04-13 2001-10-26 Packaging Technology:Kk データベース更新装置
JP2001297024A (ja) * 2000-04-14 2001-10-26 Nec Corp 共有情報の同期処理システム及びその同期処理方法
JP2002024104A (ja) * 2000-07-11 2002-01-25 Honda Motor Co Ltd 電子ファイル管理システム
JP2002297885A (ja) * 2001-03-30 2002-10-11 Dentsu Public Relations Inc 広報活動支援方法およびこの方法を実現するシステム
JPWO2003040925A1 (ja) * 2001-10-22 2005-03-03 アイシン・エィ・ダブリュ株式会社 情報管理システム、情報管理システム用サーバ及び情報管理システム用情報端末
JP2008305288A (ja) * 2007-06-11 2008-12-18 Hitachi Ltd 情報システム、および、情報システムの情報保存方法
JP2009009551A (ja) * 2007-06-28 2009-01-15 Seiko Epson Corp 情報管理システム、表示システム、管理装置及びプログラム
JP2009020873A (ja) * 2007-06-15 2009-01-29 Hitachi Ltd データ更新方法、データ更新システム、および、そのデータ更新システムに用いられる端末
WO2009147704A1 (ja) * 2008-06-04 2009-12-10 株式会社 アテナテレコムラボ テーブルとテーブル項目の平行編集プログラム
JPWO2009025022A1 (ja) * 2007-08-20 2010-11-18 コニカミノルタエムジー株式会社 情報処理システム、およびプログラム
JP2012003468A (ja) * 2010-06-16 2012-01-05 Mitsubishi Electric Corp データ部分入替処理装置、データ部分入替処理方法およびデータ部分入替処理装置
US8171003B2 (en) 2007-06-06 2012-05-01 Kunio Kamimura Method and apparatus for changing reference of database
WO2014068877A1 (ja) * 2012-11-02 2014-05-08 日本電気株式会社 情報処理装置
EP3070619A1 (en) 2015-03-16 2016-09-21 Canon Kabushiki Kaisha Information processing apparatuses performing synchronization of data and data synchronization methods
US9678996B2 (en) 2007-06-06 2017-06-13 Kunio Kamimura Conflict resolution system for database parallel editing
JP2018073231A (ja) * 2016-11-01 2018-05-10 富士通株式会社 ストレージシステムおよびストレージ装置

Families Citing this family (75)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6715099B1 (en) * 1999-06-02 2004-03-30 Nortel Networks Limited High-availability architecture using high-speed pipes
JP3963417B2 (ja) * 1999-11-19 2007-08-22 株式会社東芝 データ同期処理のための通信方法および電子機器
JP3686564B2 (ja) * 1999-12-21 2005-08-24 株式会社日立製作所 データベースシステム、データベースのレプリカ生成方法およびデータベースのレプリカ生成プログラムを記録したコンピュータ読み取り可能な記録媒体
US6611849B1 (en) * 2000-09-29 2003-08-26 Palm Source, Inc. System for synchronizing databases on multiple devices utilizing a home base
JP2002116945A (ja) * 2000-10-11 2002-04-19 Nec Corp オブジェクト配信システム及びそれに用いる携帯端末におけるメモリ管理方法
US7006249B2 (en) * 2001-01-18 2006-02-28 Kabushiki Kaisha Toshiba Image forming system
US20020161784A1 (en) * 2001-02-28 2002-10-31 Tarenskeen Herbert J. Method and apparatus to migrate using concurrent archive and restore
US7548898B1 (en) * 2001-02-28 2009-06-16 Teradata Us, Inc. Parallel migration of data between systems
US7571215B2 (en) * 2001-07-16 2009-08-04 Bea Systems, Inc. Data replication protocol
US7113980B2 (en) * 2001-09-06 2006-09-26 Bea Systems, Inc. Exactly once JMS communication
JP2003108417A (ja) * 2001-10-01 2003-04-11 Toshiba Corp データ共有およびデータ配信方法
US20030182328A1 (en) * 2001-10-29 2003-09-25 Jules Paquette Apparatus and method for sharing data between multiple, remote sites of a data network
US20030172070A1 (en) * 2002-03-06 2003-09-11 Sawadsky Nicholas Justin Synchronous peer-to-peer multipoint database synchronization
US7328243B2 (en) * 2002-10-31 2008-02-05 Sun Microsystems, Inc. Collaborative content coherence using mobile agents in peer-to-peer networks
FR2848314A1 (fr) * 2002-12-04 2004-06-11 Medi Systeme Procede de synchronisation au sein d'un systeme de type client serveur destine a la gestion d'un systeme qualite, de management, d'evaluation ou de coordination
EP1443423A1 (en) * 2003-01-28 2004-08-04 Bombardier Transportation (Technology) Germany GmbH Apparatus and method for data replication in a data network
GB2401693B (en) * 2003-05-15 2005-08-17 Sun Microsystems Inc Conflictless replication in a multi-master directory system
US7552123B2 (en) * 2003-08-13 2009-06-23 At&T Intellectual Property I, L.P. Methods, systems and computer program products for synchronizing records in billing and service databases
JP4394493B2 (ja) * 2004-03-24 2010-01-06 株式会社日立製作所 ファイル管理方法、ファイル管理装置、及び、ファイル管理プログラム
GB2414089A (en) * 2004-05-07 2005-11-16 Paul Pickering Adding temporal characteristics to an existing database
EP1607883B1 (en) * 2004-06-15 2009-08-12 Sap Ag A data processing system and method for monitoring database replication
US7962449B2 (en) * 2004-06-25 2011-06-14 Apple Inc. Trusted index structure in a network environment
US7730012B2 (en) * 2004-06-25 2010-06-01 Apple Inc. Methods and systems for managing data
CN100368998C (zh) * 2004-07-23 2008-02-13 中兴通讯股份有限公司 一种多数据库数据同步方法
CA2622404A1 (en) * 2004-09-15 2006-03-23 Adesso Systems, Inc. System and method for managing data in a distributed computer system
US8244913B1 (en) * 2004-10-13 2012-08-14 Progress Software Corporation Replication horizon determination with an independent distributed database system
US8001077B2 (en) * 2005-12-14 2011-08-16 International Business Machines Corporation Distributed method for synchronizing and updating bookmarks on multiple computer devices
US7711707B2 (en) * 2005-12-14 2010-05-04 International Business Machines Corporation Method for synchronizing and updating bookmarks on multiple computer devices
US7953710B2 (en) * 2006-06-23 2011-05-31 Microsoft Corporation Multi-master database synchronization without loss of convergence
US7827138B2 (en) * 2006-10-02 2010-11-02 Salesforce.Com, Inc. Method and system for synchronizing a server and an on-demand database service
US8289542B2 (en) * 2007-09-12 2012-10-16 Xerox Corporation Distributed limit-based accounting for print jobs
US9990674B1 (en) 2007-12-14 2018-06-05 Consumerinfo.Com, Inc. Card registry systems and methods
US8127986B1 (en) 2007-12-14 2012-03-06 Consumerinfo.Com, Inc. Card registry systems and methods
US20090319525A1 (en) * 2008-06-23 2009-12-24 Microsoft Corporation Lost write protection via stream-based replication
US8312033B1 (en) 2008-06-26 2012-11-13 Experian Marketing Solutions, Inc. Systems and methods for providing an integrated identifier
US8060424B2 (en) 2008-11-05 2011-11-15 Consumerinfo.Com, Inc. On-line method and system for monitoring and reporting unused available credit
US9239767B2 (en) * 2008-12-22 2016-01-19 Rpx Clearinghouse Llc Selective database replication
GB2484086A (en) * 2010-09-28 2012-04-04 Metaswitch Networks Ltd Reliability and performance modes in a distributed storage system
US9665854B1 (en) 2011-06-16 2017-05-30 Consumerinfo.Com, Inc. Authentication alerts
US9483606B1 (en) 2011-07-08 2016-11-01 Consumerinfo.Com, Inc. Lifescore
US9106691B1 (en) 2011-09-16 2015-08-11 Consumerinfo.Com, Inc. Systems and methods of identity protection and management
GB2495079A (en) 2011-09-23 2013-04-03 Hybrid Logic Ltd Live migration of applications and file systems in a distributed system
US9501543B2 (en) 2011-09-23 2016-11-22 Hybrid Logic Ltd System for live-migration and automated recovery of applications in a distributed system
US9477739B2 (en) 2011-09-23 2016-10-25 Hybrid Logic Ltd System for live-migration and automated recovery of applications in a distributed system
US10311027B2 (en) 2011-09-23 2019-06-04 Open Invention Network, Llc System for live-migration and automated recovery of applications in a distributed system
US10331801B2 (en) 2011-09-23 2019-06-25 Open Invention Network, Llc System for live-migration and automated recovery of applications in a distributed system
US9547705B2 (en) * 2011-09-23 2017-01-17 Hybrid Logic Ltd System for live-migration and automated recovery of applications in a distributed system
US9483542B2 (en) 2011-09-23 2016-11-01 Hybrid Logic Ltd System for live-migration and automated recovery of applications in a distributed system
US8738516B1 (en) 2011-10-13 2014-05-27 Consumerinfo.Com, Inc. Debt services candidate locator
US9853959B1 (en) 2012-05-07 2017-12-26 Consumerinfo.Com, Inc. Storage and maintenance of personal data
EP2722774B1 (en) * 2012-10-18 2015-12-09 Siemens Aktiengesellschaft Long term archiving of data in a MES system
US9654541B1 (en) 2012-11-12 2017-05-16 Consumerinfo.Com, Inc. Aggregating user web browsing data
US9916621B1 (en) 2012-11-30 2018-03-13 Consumerinfo.Com, Inc. Presentation of credit score factors
US10255598B1 (en) 2012-12-06 2019-04-09 Consumerinfo.Com, Inc. Credit card account data extraction
US10102570B1 (en) 2013-03-14 2018-10-16 Consumerinfo.Com, Inc. Account vulnerability alerts
US9406085B1 (en) 2013-03-14 2016-08-02 Consumerinfo.Com, Inc. System and methods for credit dispute processing, resolution, and reporting
US9870589B1 (en) 2013-03-14 2018-01-16 Consumerinfo.Com, Inc. Credit utilization tracking and reporting
US10685398B1 (en) 2013-04-23 2020-06-16 Consumerinfo.Com, Inc. Presenting credit score information
US9443268B1 (en) 2013-08-16 2016-09-13 Consumerinfo.Com, Inc. Bill payment and reporting
US10325314B1 (en) 2013-11-15 2019-06-18 Consumerinfo.Com, Inc. Payment reporting systems
US9477737B1 (en) * 2013-11-20 2016-10-25 Consumerinfo.Com, Inc. Systems and user interfaces for dynamic access of multiple remote databases and synchronization of data based on user rules
US9405643B2 (en) 2013-11-26 2016-08-02 Dropbox, Inc. Multi-level lookup architecture to facilitate failure recovery
US9547706B2 (en) * 2014-03-10 2017-01-17 Dropbox, Inc. Using colocation hints to facilitate accessing a distributed data storage system
US9892457B1 (en) 2014-04-16 2018-02-13 Consumerinfo.Com, Inc. Providing credit data in search results
CN105518641B (zh) 2014-05-05 2018-05-04 华为技术有限公司 点对点数据复制方法、设备和系统以及主节点切换方法、设备和系统
US10468126B1 (en) 2014-08-19 2019-11-05 Multiscale Health Networks, Llc. Clinical activity network generation
US10892046B1 (en) * 2014-08-19 2021-01-12 Multiscale Health Networks Llc Systems and methods for dynamically extracting electronic health records
JP6497920B2 (ja) * 2014-12-11 2019-04-10 キヤノン株式会社 画像処理装置、その制御方法及びプログラム
JP6727775B2 (ja) * 2015-08-31 2020-07-22 キヤノン株式会社 サーバ装置、制御システム、制御方法、及び、プログラム
US10901864B2 (en) 2018-07-03 2021-01-26 Pivotal Software, Inc. Light-weight mirror container
US20200074541A1 (en) 2018-09-05 2020-03-05 Consumerinfo.Com, Inc. Generation of data structures based on categories of matched data items
US11315179B1 (en) 2018-11-16 2022-04-26 Consumerinfo.Com, Inc. Methods and apparatuses for customized card recommendations
US11868494B1 (en) * 2018-11-26 2024-01-09 Amazon Technologies, Inc. Synchronization of access management tags between databases
US11238656B1 (en) 2019-02-22 2022-02-01 Consumerinfo.Com, Inc. System and method for an augmented reality experience via an artificial intelligence bot
US11941065B1 (en) 2019-09-13 2024-03-26 Experian Information Solutions, Inc. Single identifier platform for storing entity data

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07230442A (ja) 1994-02-16 1995-08-29 Rishiyou:Kk 営業活動支援システム
US5706509A (en) * 1995-04-28 1998-01-06 Intel Corporation Application independent record level synchronization
US5991771A (en) * 1995-07-20 1999-11-23 Novell, Inc. Transaction synchronization in a disconnectable computer and network
JPH0991184A (ja) 1995-09-25 1997-04-04 Fujitsu Ltd 図面システム
US5924096A (en) * 1997-10-15 1999-07-13 Novell, Inc. Distributed database using indexed into tags to tracks events according to type, update cache, create virtual update log on demand

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001142766A (ja) * 1999-11-10 2001-05-25 Nec Corp データベース交換システム
JP2001297023A (ja) * 2000-04-13 2001-10-26 Packaging Technology:Kk データベース更新装置
JP2001297024A (ja) * 2000-04-14 2001-10-26 Nec Corp 共有情報の同期処理システム及びその同期処理方法
JP2002024104A (ja) * 2000-07-11 2002-01-25 Honda Motor Co Ltd 電子ファイル管理システム
JP2002297885A (ja) * 2001-03-30 2002-10-11 Dentsu Public Relations Inc 広報活動支援方法およびこの方法を実現するシステム
JPWO2003040925A1 (ja) * 2001-10-22 2005-03-03 アイシン・エィ・ダブリュ株式会社 情報管理システム、情報管理システム用サーバ及び情報管理システム用情報端末
US8171003B2 (en) 2007-06-06 2012-05-01 Kunio Kamimura Method and apparatus for changing reference of database
US9678996B2 (en) 2007-06-06 2017-06-13 Kunio Kamimura Conflict resolution system for database parallel editing
JP2008305288A (ja) * 2007-06-11 2008-12-18 Hitachi Ltd 情報システム、および、情報システムの情報保存方法
JP2009020873A (ja) * 2007-06-15 2009-01-29 Hitachi Ltd データ更新方法、データ更新システム、および、そのデータ更新システムに用いられる端末
JP2009076078A (ja) * 2007-06-28 2009-04-09 Seiko Epson Corp 情報管理システム、表示システム、管理装置及びプログラム
JP2009009551A (ja) * 2007-06-28 2009-01-15 Seiko Epson Corp 情報管理システム、表示システム、管理装置及びプログラム
JPWO2009025022A1 (ja) * 2007-08-20 2010-11-18 コニカミノルタエムジー株式会社 情報処理システム、およびプログラム
WO2009147704A1 (ja) * 2008-06-04 2009-12-10 株式会社 アテナテレコムラボ テーブルとテーブル項目の平行編集プログラム
JP2012003468A (ja) * 2010-06-16 2012-01-05 Mitsubishi Electric Corp データ部分入替処理装置、データ部分入替処理方法およびデータ部分入替処理装置
WO2014068877A1 (ja) * 2012-11-02 2014-05-08 日本電気株式会社 情報処理装置
JPWO2014068877A1 (ja) * 2012-11-02 2016-09-08 日本電気株式会社 情報処理装置
US9871698B2 (en) 2012-11-02 2018-01-16 Nec Corporation Information processing device
EP3070619A1 (en) 2015-03-16 2016-09-21 Canon Kabushiki Kaisha Information processing apparatuses performing synchronization of data and data synchronization methods
US10623247B2 (en) 2015-03-16 2020-04-14 Canon Kabushiki Kaisha Information processing apparatus performing synchronization of data and data synchronization methods
JP2018073231A (ja) * 2016-11-01 2018-05-10 富士通株式会社 ストレージシステムおよびストレージ装置

Also Published As

Publication number Publication date
US6374262B1 (en) 2002-04-16
JP4187302B2 (ja) 2008-11-26

Similar Documents

Publication Publication Date Title
JP4187302B2 (ja) リレーショナルデータベース同期方法およびそのプログラムを記録した記録媒体
US7853722B2 (en) Simplified application object data synchronization for optimized data storage
US6615223B1 (en) Method and system for data replication
CN102257494B (zh) 选择性的数据库复制方法
US9515878B2 (en) Method, medium, and system for configuring a new node in a distributed memory network
CN102395962B (zh) 对数据库表的哈希和列表组合划分
US8095504B2 (en) N-way synchronization of computer databases
CN100440206C (zh) 与物理存储表示无关地同步逻辑视图的方法和系统
JP4025475B2 (ja) データベース交換システム
US8868491B2 (en) Method and system for using global equivalency sets to identify data during peer-to-peer synchronization
CN108475271A (zh) 容器数据库的应用容器
CN106991113A (zh) 数据库环境中的表格复制
JP2004295870A (ja) アプリケーション定義のシステムにおける整合性ユニットのレプリケーション
JP2008197745A (ja) ストレージ仮想化システムにおける記憶制御装置
JP2001076005A (ja) データベースシステム
EP4189914B1 (en) Using multiple blockchains for applying transactions to a set of persistent data objects in persistent storage systems
JP4136615B2 (ja) データベースシステム及びデータベースのアクセス方法
CN101551822B (zh) 一种数据库复制方法和装置
JP2001306372A (ja) 文書管理方法およびその方法を実施するためのプログラムを記憶した記憶媒体
JP2011522337A (ja) サーバクラスタに配信されるコンピュータシステムのソフトウェアモジュールの同期化方法、同期化システムおよびデータストレージへの適用
JP2000132435A (ja) 異種データベース管理システム間のデータ整合処理装置
JP2012508412A (ja) サーバクラスタに配信されるコンピュータシステムのソフトウェアモジュール集合の同期化方法および同期化システム
JP3698021B2 (ja) 広域分散資産版管理システム、広域分散資産版管理方法、記録媒体
US20240126747A1 (en) Control method, and adapter
JP2003015926A (ja) 更新差分抽出システム、方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080610

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080808

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: 20080909

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080909

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110919

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees