JP2008009814A - データレプリケーションシステム及びデータレプリケーション方法 - Google Patents
データレプリケーションシステム及びデータレプリケーション方法 Download PDFInfo
- Publication number
- JP2008009814A JP2008009814A JP2006180908A JP2006180908A JP2008009814A JP 2008009814 A JP2008009814 A JP 2008009814A JP 2006180908 A JP2006180908 A JP 2006180908A JP 2006180908 A JP2006180908 A JP 2006180908A JP 2008009814 A JP2008009814 A JP 2008009814A
- Authority
- JP
- Japan
- Prior art keywords
- data
- computer
- replication
- database system
- data transmission
- 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
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【解決手段】運用系コンピュータ1のデータベースシステム11と待機系コンピュータ2のデータベースシステム21とが、レプリケーション先コンピュータ3,4,……のデータベースシステム31,41,……に対するデータ更新処理の状態を管理するデータ更新管理手段と、上記レプリケーション先コンピュータ3,4,……のデータベースシステム31,41,……に対するデータ送信を管理するデータ送信管理手段とを有し、両者のデータ更新管理手段同士及び両者のデータ送信管理手段同士が同期されるようになっているデータレプリケーションシステム。また、このシステムによるデータレプリケーション方法。
【選択図】 図1
Description
なお、レプリケーション先となるコンピュータ3,4,……の台数は1台であっても構わない。
このデータ送信先管理テーブル11bは、データ送信元テーブルの上記テーブル名を格納するテーブル名列11b−1と、そのテーブルのデータの送信先となるコンピュータ3,4,……のIPアドレスを格納する送信先IPアドレス列11b−2から構成され、データベースのテーブル名とそのレプリケーション先のアドレスを対照して管理する。
図示した例では、テーブルAAAに関し2つのレコード(テーブル名/アドレス対照データ(データ更新管理データ))が保持されており、このテーブルAAAは192.168.1.100及び192.168.1.101のIPアドレスを付された上記2つのコンピュータ3及び4にレプリケーションすべきものとされ、また、テーブルBBBは192.168.1.100のIPアドレスを付された上記コンピュータ3にレプリケーションすべきものとされている。
図示した例では、SEQ番号0として、送信先データベースのテーブルAAAにデータを挿入するSQL命令が、また、SEQ番号1として、送信先データベースのテーブルBBBからデータを削除するSQL命令が保持されている。
上記送信先IPアドレス列11d−2は、データ送信先管理テーブル11bのデータ等を基に設定することができる。
図示した例では、SEQ番号0をとした、上記コンピュータ3(IPアドレス192.168.1.100)及びコンピュータ4(IPアドレス192.168.1.101)を示す2つのレコードが、また、SEQ番号を1とした、上記コンピュータ3を示すレコードが保持されている。
上記運用系と待機系の両データベースシステム11,21は、データ更新管理部12,22間、データ送信管理部13,23間、ユーザテーブル11a,21a間、データ送信先管理テーブル11b,21b間、上記データ更新管理テーブル11c,21c間、データ送信管理テーブル11d,21d間等において常にデータの整合性を保って同期されている。
さらに両データベースシステム11,21はデータベース上のユーザテーブル11aが更新された場合、ユーザに更新が行なわれたことを通知する機能を有する。
そのレプリカデータベースシステム31,41はそれぞれ、上記運用系コンピュータ1のユーザテーブル11a(上記待機系コンピュータ2のユーザテーブル21a)の全部または一部のデータの複製を保持するレプリカユーザテーブル31a,41aを有する。
コンピュータ1,2の上記データ送信管理部13,23は、このレプリカデータベースシステム31,41をサーバとしてクライアント接続が行えるようになっている。
b,21b、上記データ更新管理テーブル11c,21c、データ送信管理テーブル11d,21dについて、常に同じ状態になるようデータの同期が行われている。
運用系コンピュータ1のアプリケーションプログラムから、ユーザテーブル11aに対してデータ更新が行われる。
このデータ更新イベントをトリガとして、データ更新管理部12は、更新されたユーザテーブル11aのデータ内容及びテーブル名(以下、「更新データ」という。)を読み出す。
自コンピュータに障害が発生しているか否かの状態確認を行なう。自コンピュータに障害が発生していれば(S2:NO)、コンピュータ1は処理をイベント待ち状態とする。
ステップS1にて読み出した更新データ中のテーブル名を検索キーとして、データ送信先管理テーブル11bを検索する。該当レコードが検索されなければ(S3:NO)、レプリケーションを要しない送信対象外のテーブルとみなし、イベント待ち状態とする。
ステップS3にて、該当するレコードが検索された場合(S3:YES)、当該レコードの送信先IPアドレス列11b−2の値を読み出す。
ステップS1にて読み出しておいた更新データのデータ内容を、レプリカデータベースシステム31,41のテーブル構成にカスタマイズし、そのレプリカユーザテーブル31a,41aの更新処理をするためのSQL文に変換する。
変換されたSQL文は、INSERT文,DELETE文、UPDATE文のいずれかとなる。
データ更新管理テーブル11cのSEQ列11c−1に対して最大値検索を行なう。
未送信データが存在する場合、ステップS6にて、データ更新管理テーブル11cに残存しているレコードが検索されるので(S7:YES)、(検索されたSEQ番号+1)の値をSEQ列11c−1に設定し、SQL列11c−2にステップでS5で変換したSQL文を設定しレコードを登録する(S8)。
また、データ送信管理テーブル11dのSEQ列11d−1にも同一のSEQ番号を設定し、サーバIPアドレス列11d−2には、ステップS4にて検索されたサーバIPアドレス列11b−2と同値を設定し、レコードの登録を行なう。
ステップS3で、データ送信先管理テーブル11bに、複数のレコードが検索された場合、複数のコンピュータ3,4,……に同一のデータ内容のレプリケーションを行うため、複数のレコードの登録を行う。
また、データ送信管理テーブル11dのSEQ列11d−1にも同様のSEQ列を設定し、サーバIPアドレス列11d−2には、S4にて検索された送信先IPアドレス列11b−2と同値を設定し、レコードの登録を行なう。
ステップS3で、データ送信先管理テーブル11bに、複数のレコードが検索された場合、複数のレコードの登録を行う。
データ送信管理部13が、コンピュータ3上のレプリカデータベースシステム31(及び/またはコンピュータ4上のレプリカデータベースシステム41)に対してデータ更新を行なうためには、当該レプリカデータベースシステム31,41をデータベースサーバとしたクライアント接続を行なう必要がある。
そこで、データ送信管理部13は、データ送信先管理テーブル11bを検索し、データ送信を行なうべきレプリカデータベースシステム31及び/または41に対して、クライアント接続を行なう。
レプリカデータベースシステム31,41へ送信するべきデータが存在するか、データ更新管理テーブル11cを検索し、SQL列11c−2のSQL文を読み出す。この検索は、検索順序を考慮し、SEQ列11c−1に対して、最小値検索を行なう(S12)。
レコードの検索が行なえなかった場合(S12:レコードなし)、一時休止状態となり(S19)、以降周期的にデータ更新管理テーブル11cの監視を行なう。
ステップS12の処理にて、データ検索が行なわれた場合(S12:データあり)、自コンピュータに障害が発生していないかを確認する(S13)。
自コンピュータに障害が発生していれば(S13:YES)、一時休止状態にする(ステップS19)。
ステップS13において、自コンピュータに障害が発生することなく正常な運用状態にある場合(ステップS13;NO)、ステップS12の処理で検索されたレコードのSEQ番号で、データ送信管理テーブル11dのレコードを検索して、更新データの送信を行なうべきコンピュータ3,4,……のIPアドレスを読み出す。
ステップS14にて検索されたレコードのIPアドレスを付されたコンピュータ3,4……に対して、ステップS12で読み出したデータ更新管理テーブル11cのSQL列11c−2のSQL文でデータ送信・更新を行なう。
<ステップS16>
データ送信・更新の処理が正常終了したら、該当するレコードをデータ送信管理テーブル11dから削除する。
データ送信管理部13は、データ送信管理テーブル11dのレコードの有無でレプリケーション処理の完了如何の管理を行なう。
つまり、データ送信管理テーブル11dにレコードが存在しているIPアドレスのコンピュータに対してのレプリケーション処理は、未完了状態にあることになる。
データ送信管理テーブル11d上に、ステップS12で検索されたのと同じSEQ値をもつ他のレコードが存在するか検索を行ない、他のレコードが存在すれば(S17:NO)、該当するコンピュータ3(または4)に対してステップS14からの処理を行う。
データ送信管理テーブル11d上に同じSEQ値のレコードが無い場合(S17:YES)、全てのレプリケーション先コンピュータ3,4,……へのデータ更新が完了したことになるので、データ更新管理テーブル11cから、ステップS12で検索された該当するレコードを削除する。
一時休止状態となる。データを周期的に監視するため、休止状態解除後は、再度ステップS12のデータ更新管理テーブルの検索を行なう。
運用系コンピュータ1に代わり運用状態となった待機系コンピュータ2は、そのデータ更新管理テーブル21c及びデータ送信管理テーブル21d等を含め、上記運用系コンピュータ1と常に同じ状態に同期されて、運用系コンピュータ1が途中まで処理していたレプリケーション処理状態の情報を有しているので、運用系コンピュータ1の処理を、これに代わって、無中断で継続する。
図5に示した本実施例のデータレプリケーションシステムは、運用系コンピュータ1と待機系コンピュータ2が、それぞれ特定の単一のレプリカデータベースシステム31,41にクライアント接続されるデータ送信管理部13,14、23,24を2つずつ備えている点、実施例1と相違する。
その他の点は実施例1と同一ゆえ、説明を省略する。
2 待機系コンピュータ
3,4,…… (レプリケーション先の)コンピュータ
11,21,31,41 データベースシステム
11a,21a,31a,41a ユーザテーブル
11b,21b データ送信先管理テーブル
11c,21c データ更新管理テーブル
11d,21d データ送信管理テーブル
12,22 データ更新管理部
13,23 データ送信管理部
Claims (12)
- 運用系コンピュータと、これと同じデータベースシステムを備えた待機系コンピュータと、これらとは異なるデータベースシステムを備えたレプリケーション先コンピュータからなり、上記待機系コンピュータのデータベースシステムは、上記運用系コンピュータのデータベースシステムと同じ状態に同期され、該運用系コンピュータに障害が発生したときにその処理を引き継ぎ、上記レプリケーション先コンピュータのデータベースシステムに対してレプリケーションを行うホットスタンバイ構成となっているレプリケーションシステムにおいて、上記運用系コンピュータのデータベースシステムと上記待機系コンピュータのデータベースシステムとが、上記レプリケーション先コンピュータのデータベースシステムに対するデータ更新処理の状態を管理するデータ更新管理手段と、上記レプリケーション先コンピュータのデータベースシステムに対するデータ送信を管理するデータ送信管理手段とを有し、両者のデータ更新管理手段同士及び両者のデータ送信管理手段同士が同期されるようになっていることを特徴とするデータレプリケーションシステム。
- 上記運用系コンピュータのデータベースシステム及び上記待機系コンピュータのデータベースシステムが、データベースのテーブル名と上記レプリケーション先のコンピュータのアドレスとを対照して管理するデータ送信先管理テーブルを有することを特徴とする請求項1記載のデータレプリケーションシステム。
- 上記運用系コンピュータのデータベースシステム及び待機系コンピュータのデータベースシステムが、データベースの更新種別をシーケンス番号と対照して管理するデータ更新管理テーブルを有することを特徴とする請求項1または2記載のデータレプリケーションシステム。
- 上記運用系コンピュータのデータベースシステム及び待機系コンピュータのデータベースシステムが、上記シーケンス番号とレプリケーション先コンピュータのアドレスとを対照して管理するデータ送信管理テーブルを有することを特徴とする請求項3記載のデータレプリケーションシステム。
- 上記データ更新管理手段は、上記データ送信先管理テーブルを参照して上記データ更新管理テーブル及びデータ送信管理テーブルを更新し、上記データ送信管理手段は、上記レプリケーション先コンピュータのデータベースシステムに接続し、上記データ更新管理テーブル及びデータ送信管理テーブルを参照してそのデータベースシステムを更新することを特徴とする請求項4記載のデータレプリケーションシステム。
- 上記データ更新管理テーブルの更新種別がSQL文で記述されていることを特徴とする請求項3ないし5のいずれかに記載のデータレプリケーションシステム。
- 運用系コンピュータと、これと同じデータベースシステムを備えた待機系コンピュータと、これらとは異なるデータベースシステムを備えたレプリケーション先コンピュータとからなり、上記待機系コンピュータのデータベースシステムが、上記運用系コンピュータのデータベースシステムと同じ状態に同期されるホットスタンバイ構成となっているデータレプリケーションシステムにおけるデータレプリケーション方法であって、上記運用系コンピュータと上記待機系コンピュータとが、上記レプリケーション先コンピュータのデータベースシステムに対するデータ更新を管理するデータ更新管理と、同データベースシステムに対するデータ送信を管理するデータ送信管理とを、互いのデータ更新管理データ及びデータ送信管理データを同じにしながら同期して行い、上記運用系コンピュータに障害が発生したときに、上記待機系コンピュータが、上記レプリケーション先コンピュータのデータベースシステムに対するデータ更新処理を、上記データ更新管理データ及びデータ送信管理データを参照して運用系コンピュータに引き継いで実行することを特徴とするデータレプリケーション方法。
- データ更新管理データが、データベースのテーブル名と上記レプリケーション先コンピュータのアドレスとを対照して管理するテーブル名/アドレス対照データを含むことを特徴とする請求項7記載のデータレプリケーション方法。
- データ更新管理データが、データベースの更新種別をシーケンス番号と対照して管理するシーケンス番号/更新種別対照データを含むことを特徴とする請求項7または8記載のデータレプリケーション方法。
- データ送信管理データが、上記シーケンス番号とレプリケーション先コンピュータのアドレスとを対照して管理するシーケンス番号/アドレス対照データを含むことを特徴とする請求項9記載のデータレプリケーション方法。
- 上記データ更新管理及び上記データ送信管理では、上記テーブル名/アドレス対照データを参照して上記シーケンス番号/更新種別対照データ及びシーケンス番号/アドレス対照データを更新し、上記データ更新処理では、上記シーケンス番号/更新種別対照データ及びシーケンス番号/アドレス対照データを参照して上記レプリケーション先コンピュータのデータベースシステムを更新することを特徴とする請求項10記載のデータレプリケーション方法。
- データベースの更新種別がSQL文で記述されていることを特徴とする請求項7ないし11のいずれかに記載のデータレプリケーション方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006180908A JP2008009814A (ja) | 2006-06-30 | 2006-06-30 | データレプリケーションシステム及びデータレプリケーション方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006180908A JP2008009814A (ja) | 2006-06-30 | 2006-06-30 | データレプリケーションシステム及びデータレプリケーション方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008009814A true JP2008009814A (ja) | 2008-01-17 |
Family
ID=39067946
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006180908A Pending JP2008009814A (ja) | 2006-06-30 | 2006-06-30 | データレプリケーションシステム及びデータレプリケーション方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008009814A (ja) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003122509A (ja) * | 2001-08-08 | 2003-04-25 | Hitachi Ltd | リモートコピー制御方法、これを用いた記憶サブシステム、及び、これらを用いた広域データストレージシステム |
WO2004017194A2 (en) * | 2002-08-16 | 2004-02-26 | International Business Machines Corporation | Method, system, and program for providing a mirror copy of data |
JP2005018510A (ja) * | 2003-06-27 | 2005-01-20 | Hitachi Ltd | データセンタシステム及びその制御方法 |
JP2005276094A (ja) * | 2004-03-26 | 2005-10-06 | Hitachi Ltd | 分散ストレージ装置のファイル管理方法及び分散ストレージシステム並びにプログラム |
WO2006049202A1 (ja) * | 2004-11-08 | 2006-05-11 | Nec Corporation | データ多重化システム |
-
2006
- 2006-06-30 JP JP2006180908A patent/JP2008009814A/ja active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003122509A (ja) * | 2001-08-08 | 2003-04-25 | Hitachi Ltd | リモートコピー制御方法、これを用いた記憶サブシステム、及び、これらを用いた広域データストレージシステム |
WO2004017194A2 (en) * | 2002-08-16 | 2004-02-26 | International Business Machines Corporation | Method, system, and program for providing a mirror copy of data |
JP2005018510A (ja) * | 2003-06-27 | 2005-01-20 | Hitachi Ltd | データセンタシステム及びその制御方法 |
JP2005276094A (ja) * | 2004-03-26 | 2005-10-06 | Hitachi Ltd | 分散ストレージ装置のファイル管理方法及び分散ストレージシステム並びにプログラム |
WO2006049202A1 (ja) * | 2004-11-08 | 2006-05-11 | Nec Corporation | データ多重化システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8788519B2 (en) | System and methods for metadata management in content addressable storage | |
US7885922B2 (en) | Apparatus and method for creating a real time database replica | |
JP5466459B2 (ja) | 階層ストレージ管理(hsm)制御ストレージ環境で双方向オーファン照合を行う方法、システムおよぶコンピュータ・プログラム | |
US7954003B2 (en) | Fault management system in multistage copy configuration | |
US20060236049A1 (en) | Remote copy system and remote copy method | |
US8255360B1 (en) | Synchronization of database changes among multiple devices | |
JP2004295870A (ja) | アプリケーション定義のシステムにおける整合性ユニットのレプリケーション | |
US20050262166A1 (en) | Method and system for synchronizing data between electronic devices | |
JP4159750B2 (ja) | 分散計算機システム及びメンテナンスデータ適用方法 | |
US20140156595A1 (en) | Synchronisation system and method | |
JP6196389B2 (ja) | 分散型ディザスタリカバリファイル同期サーバシステム | |
KR101424568B1 (ko) | 트랜잭션 재시작 가능한 클라이언트 장치와 데이터베이스 서버 및 방법 | |
US8386503B2 (en) | Method and apparatus for entity removal from a content management solution implementing time-based flagging for certainty in a relational database environment | |
KR20160004721A (ko) | 데이터 손실 없는 데이터베이스 리두 로그 이중화 방법 및 그를 위한 시스템 | |
JP4189332B2 (ja) | データベース管理システム、データベース管理方法、データベース登録要求プログラムおよびデータベース管理プログラム | |
JP2006350411A (ja) | 分散データベースリカバリ方法及び同リカバリシステム及び同リカバリプログラム | |
JP2008009814A (ja) | データレプリケーションシステム及びデータレプリケーション方法 | |
US7979540B2 (en) | Configurable recovery of aborted session data | |
US20210194980A1 (en) | System and method for robust local cache handling | |
JP2006004024A (ja) | ディレクトリサーバに実行させるためのプログラム | |
JP7340956B2 (ja) | 冗長システム及びデータ同期方法 | |
WO2017077643A1 (ja) | データ管理システム | |
JP2006146589A (ja) | 処理システムおよび調停サーバ | |
JP2007018143A (ja) | 文書検索装置および方法 | |
JP2006085324A (ja) | レプリケーションシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20080404 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20080407 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090519 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111207 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111220 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120612 |