JP2007249453A - データ管理装置及びデータ管理方法及びプログラム - Google Patents

データ管理装置及びデータ管理方法及びプログラム Download PDF

Info

Publication number
JP2007249453A
JP2007249453A JP2006070212A JP2006070212A JP2007249453A JP 2007249453 A JP2007249453 A JP 2007249453A JP 2006070212 A JP2006070212 A JP 2006070212A JP 2006070212 A JP2006070212 A JP 2006070212A JP 2007249453 A JP2007249453 A JP 2007249453A
Authority
JP
Japan
Prior art keywords
database
difference
data
area
records
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
JP2006070212A
Other languages
English (en)
Other versions
JP4718351B2 (ja
Inventor
Hidehiro Shimizu
英弘 清水
Mitsunori Kori
光則 郡
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 JP2006070212A priority Critical patent/JP4718351B2/ja
Publication of JP2007249453A publication Critical patent/JP2007249453A/ja
Application granted granted Critical
Publication of JP4718351B2 publication Critical patent/JP4718351B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Abstract

【課題】複数のデータベース間で同期を取る際に、効率的なデータ配布を実現する。
【解決手段】二つのデータ管理装置1a及び1bが、データ格納領域部5a、5bを有し、それぞれのデータ格納領域部5a、5bには、更新により追加されるレコードがデータ変換前に一時ページとして格納される更新領域10と、更新領域10に格納されたレコードがデータ変換後に主ページとして格納される参照領域11があり、領域差分生成部25は、データ格納領域部5a及び5bにおけるレコードの差異を判定し、差異が参照領域11における主ページの差異の場合に、データ格納領域部5aの参照領域11から差分のレコードを取得し、領域差分配布部26に出力し、差異が更新領域10における一時ページの差異の場合に、一時ページがデータ変換後に参照領域11に移管された後に、参照領域11から当該移管後の主ページを取得し、出力する。
【選択図】図2

Description

本発明は、複数のデータベース間でデータの内容を同一にするデータの同期方法に係り、効率的でかつデータベース利用を妨げないデータ配布を実現するデータベースリプリケーションに関する。
本発明に係るデータベースは、特開2001−101041号公報および特開2006−4304号公報で記される、圧縮処理およびデータ構造の変更等のデータ変換を行う前の更新領域と、データ変換を行った後の更新不可能な参照領域を持つデータベースである。
本発明では上記特徴のデータベースを追記型データベースと呼ぶ。
従来の異なるデータベースの内容を同一にするデータベースリプリケーションにおいて、更新されたレコードをレコード単位で送信することによって、データの内容を一致させていた(例えば、特許文献1)。
また、同期のタイミングはファイルが更新されるタイミングで更新ページを配布する方法も提案されている(例えば、特許文献2)。
特開2000−35911号公報 特開2002−278820号公報 特開2001−101041号公報 特開2006−4304号公報
従来の同期法は、特許文献1で示されるように更新されるレコード単位で差分データを送信するため、頻繁にデータ送信が発生しネットワーク負荷や同期処理のオーバヘッドが増えて同期処理の効率が低下するという問題点があった。
また、更新領域はアクセス効率の向上やデータサイズの圧縮等を行う前の状態であるため、配布処理においても参照領域に比べ転送効率が悪いと言う問題があった。
また、1回のロードで蓄積するデータサイズが大きい場合、差分データ量も増加し全ての差分データを特許文献2で示されるようにデータの検索処理を考慮しない区切りで配布すると、全ての差分データの配布が完了するまで連続排他時間もしくは連続高負荷状態が長くなると言う問題があった。
この発明は、このような従来技術の課題に対応することを主な目的としており、異なるデータベース間で同期を取る際、効率的なデータ配布を可能とするデータ管理技術を提供することを主な目的とする。
本発明に係るデータ管理装置は、
更新により追加されるレコードがデータ変換前に格納される更新領域と、更新領域に格納されたレコードがデータ変換後に格納される参照領域とを有し、参照領域に移管されたレコードは更新領域から削除される第一のデータベースを備え、
前記第一のデータベースの更新領域及び参照領域に対応する更新領域及び参照領域を有し、前記第一のデータベースと同期をとる第二のデータベースに、
接続されているデータ管理装置であって、
前記第一のデータベースと前記第二のデータベースにおけるレコードの差異を判定し、前記第一のデータベースと前記第二のデータベースにおけるレコードの差異が参照領域に格納されているレコードの差異である場合に、前記第一のデータベースの参照領域から差分のレコードを取得する差異判定部と、
前記差異判定部により取得されたレコードを前記第二のデータベースに対して出力する出力部とを有することを特徴とする。
本発明によれば、第一のデータベースと第二のデータベースにおけるレコードの差異が参照領域のレコードの差異である場合のみ、差分のレコードとして参照領域のレコードを第二のデータベースに出力するようにしているので、更新領域のレコードは差分レコードとして送信されず、小さな単位の送信が多数発生することなく効率的な同期処理を行うことができる。
さらに、データ変換後のアクセス効率が良い参照領域のレコードのみ送信を行い、更新領域のレコードを複数回の同期に渡り重複して送信することが無いため、差分レコードの配布時間を最小限にすることができる。
実施の形態1.
図1は、本実施の形態に係るデータベースシステムの一例を示す構成図である。
図1において、データ管理装置1は、データを格納するデータベース5、データ処理を行うための一次記憶装置であるメモリ6、データ処理を行う演算装置7を備えるサーバである。
端末装置2は、データ管理装置1に対してデータのロードや検索を要求するユーザの操作端末である。
ネットワーク3は、データ管理装置1と端末装置2をつなぐLAN(Local Area Network)である。
データベース5は追記型データベースである。
データ管理装置1にはデータを保存するバックアップ装置4が接続されていても良い。
ネットワーク3はWAN(Wide Area Network)でも良い。データ管理装置はネットワーク3により複数台接続されている。
図1において、データ管理装置1aが備えるデータベース5aはマスタデータベースである。マスタデータベース5aは、第一のデータベースの例である。
データ管理装置1bが備えるデータベース5bはレプリカデータベースであり、マスタデータベース5aのレプリカとなる。レプリカデータベース5bは、第二のデータベースの例である。
本実施の形態では、データベースのデータ同期においてデータ管理装置1aが同期元となり、データ管理装置1bは同期先となる。
図7は、本実施の形態の前提となる追記型データベースに格納されるデータの流れを示す図である。
端末装置2は、データ管理装置1に対してデータのロード処理およびデータ検索処理の要求を出す。
データ管理装置1はデータロード処理部20、データ検索処理部21、データアクセス制御部22、データ変換処理部23、データ格納領域部5からなる。
データ格納領域部5は更新領域10、参照領域11からなる。更新領域10は一時ページセット12からなり、参照領域11は主ページセット13からなる。
追記型データベースでは、新規にロードするデータについては、データの削除・更新や内部構造の変更が可能なように更新領域10に格納する。そして、更新領域10のデータが特定の量を超えた場合もしくは特定期間が過ぎた場合、更新領域10のデータを参照領域11に移行する。移行の際に、データをまとめて内部構造の変更や圧縮を行うなどして更新不可能とする代わりに、データのアクセス効率の向上やディスクスペースの削減の効果を得る。また、更新領域10のデータを一度参照領域11に移行すれば、参照領域のデータは二度と変更されることが無いことが保証される。
図2は、本実施の形態に係るデータ同期制御部を備えるデータ管理装置におけるデータの流れを示す図である。
データ管理装置1aはデータロード処理部20、データアクセス制御部22、データ変換処理部23、領域監視部24、領域差分生成部25、領域差分テーブル27、領域差分テーブル管理部29、データ格納領域部5aからなる。
端末装置2aはデータ管理装置1aに接続される。
データ管理装置1bはデータ検索処理部21、データアクセス制御部22、領域差分配布部26、データ格納領域部5bからなる。
データ格納領域部5a、5bは更新領域10、参照領域11からなる。更新領域10は一時ページセット12からなり、参照領域11は主ページセット13からなる。
つまり、二つのデータ管理装置1a及び1bが備えるデータ格納領域部5a、5bは、それぞれ、更新により追加されるレコードがデータ変換前に一時ページとして格納される更新領域10と、更新領域10に格納されたレコードがデータ変換後に主ページとして格納される参照領域11とを有し、参照領域11に移管された一時ページは更新領域10から削除される。そして、一時ページから主ページへの変換は、データ変換処理部23により行われる。
なお、ページとレコードの関係は、所定の複数個のレコードの集合がページである。つまり、ページとは複数個のレコードを一括して管理するための単位である。
検索するデータについては、更新領域10と参照領域11それぞれに格納されるデータを同時に取得することで全ての格納されるデータを検索する。
端末装置2aは主にデータロード処理を行うために用いられ、端末装置2bは主にデータ検索処理を行うために用いられる。データ格納領域部5aは通常マスタデータベースであり、データ格納領域部5bは通常レプリカデータベースである。
本実施の形態では、データ管理装置1aにおいてデータロード処理により更新された領域を、データ管理装置1bに配布することによりデータの同期を行う例を示す。
データ管理装置1aにおいてデータ検索処理部21、領域差分配布部26を備えても良い。データ管理装置1bにおいてデータロード処理部20、データ変換処理部23、領域監視部24、領域差分生成部25、領域差分テーブル27を備えてもよい。
図2において、データロード処理部20は、端末装置2aからの指示に基づいて、新規なデータをロードする処理を行う。
データアクセス制御部22は、データ格納領域部5に対するデータアクセスを行う。
データ変換処理部23は、一時ページから主ページへのデータ変換を行う。データ変換内容は、前述の通り、データの内部構造の変更や圧縮である。
領域監視部24は、データアクセス制御部22への問合せにより、データ格納領域部5a(第一のデータベース)の更新領域10及び参照領域11に格納されている総レコード数と、更新領域10に格納されている一時ページ数(レコード数)と、参照領域11に格納されている主ページ数(レコード数)の情報を得て、この総レコード数と一時ページ数と主ページ数の情報を領域差分生成部25に通知する。領域監視部24は、第一のデータベース状態通知部の例である。
領域差分生成部25は、データ格納領域部5a(第一のデータベース)とデータ格納領域部5b(第二のデータベース)におけるレコードの差異を判定し、データ格納領域部5aとデータ格納領域部5bにおけるレコードの差異が参照領域11に格納されているレコードの差異である場合に、データ格納領域部5aの参照領域11から差分のレコードを取得し、取得した差分のレコードをデータ管理装置1bの領域差分配布部26に差分データとして出力する。また、領域差分生成部25は、レコードの差異が更新領域10に格納されている一時ページの差異である場合に、更新領域10に格納されている一時ページがデータ変換後に参照領域11に移管された後に、参照領域11から当該移管後の主ページを取得し、領域差分配布部26に出力する。
また、領域差分生成部25は、データ格納領域部5bがデータ格納領域部5aと完全同期をとる必要があるか否かを判定し、完全同期をとる必要がある場合に、データ格納領域部5aとデータ格納領域部5bの更新領域においてレコードの差異が存在するか否かを判定し、更新領域においてレコードの差異が存在する場合に、データ格納領域部5aの更新領域から差分のレコードを取得し、取得した一時ページを差分データとして領域差分配布部26に出力する。
領域差分生成部25は、差異判定部と出力部の例である。
領域差分配布部26は、領域差分生成部25より差分データ(一時ページ又は主ページ)を受信し、受信した差分データをデータアクセス制御部22に渡して、データ格納領域部5bの更新領域10又は参照領域11に差分データを反映させる。
また、データ検索処理部21は、端末装置2bからの検索指示をデータアクセス制御部22に通知するとともに、データアクセス制御部22により検索されたデータを端末装置2bに渡す。
領域差分テーブル管理部29は、データ格納領域部5b(第二のデータベースの)の更新領域10及び参照領域11に格納されている総レコード数と、データ格納領域部5bの更新領域10の一時ページ数(レコード数)と、データ格納領域部5bの参照領域11に格納されている主ページ数(レコード数)を格納している領域差分テーブル27を管理し、データ格納領域部5aとデータ格納領域部5b間で同期を取る際に、領域差分生成部25に、データ格納領域部5bの総レコード数、一時ページ数、主ページ数を通知する。領域差分テーブル管理部29は、第二のデータベース状態通知部の例である。
図3は、領域差分テーブル27の構造を示す図である。
領域差分テーブル27は、データベース名30、一時ページ数31、主ページ数32、レコード数33からなるレコードのリストからなる。
データベース名30は同期の対象となるレプリカデータベースの名前を示し、一時ページ数31はレプリカデータベースの更新領域10を構成する一時ページ12の数を示し、主ページ数32はレプリカデータベースの参照領域11を構成する主ページ13の数を示し、レコード数33はレプリカデータベースのデータ格納領域部に格納されるレコードの総数(更新領域にあるレコードと参照領域にあるレコードの総数)を示す。
また、図2において、新規にロードするデータは、端末装置2aよりデータ管理装置1aに渡され、データアクセス制御部22を介してデータ格納領域部5aの更新領域10に格納する。
そして、更新領域10のデータが特定の量を超えた場合もしくは特定期間が過ぎた場合、データ変換処理部23により更新領域10のデータを参照領域11に移行する。移行の際に、データをまとめて内部構造の変更や圧縮を行う。
データ同期制御部8はユーザの操作により起動しても良いし、一定間隔の時間でスケジュールされたプログラムにより起動しても良いし、データロード処理部20の終了後に起動しても良いし、データ変換処理部23の終了後に起動しても良い。
データ同期制御部8によりデータ格納領域部5aに格納さているデータとデータ格納領域部5bに格納されているデータの差分を生成し、配布することでデータ格納領域部5aと5bのデータの同期を取る。
検索するデータについては、データ格納領域部5bを構成する更新領域10と参照領域11それぞれに格納されるデータを同時に取得することで全ての格納されるデータを検索する。
次に動作について説明する。
図4は、データ同期制御部8の動作を説明するためのフローチャートである。
図2に示すデータ同期制御部8において、領域監視部24がデータアクセス制御部22に問い合わせることによりデータ格納領域部5aに格納されている領域情報を取得するとともに、領域差分生成部25に出力し、領域差分生成部25が領域情報を得る(S11)。領域情報とは、データ格納領域部5aの総レコード数と一時ページ数と主ページ数が示された情報である。
次に、領域差分生成部25が、領域差分テーブル管理部29から領域差分テーブル27の領域差分情報を得る(S12)。領域差分情報とは、領域差分テーブル27に格納されている、データ格納領域部5bの総レコード数と一時ページ数と主ページ数が示された情報である。
次に、領域差分生成部25は、領域情報と領域差分情報を比較し、レコード数が同じであるか否かを判断する(S13)(差異判定ステップ)。レコード数が同じである場合は、データ格納領域部5aとデータ格納領域部5bとの間でデータが一致しているため、領域差分生成部25は処理を終了する。
同じでない場合は、領域差分生成部25は、S14に進み、完全同期を行うモードでデータ同期制御部8が起動されたかをチェックする(S14)(差異判定ステップ)。
完全同期を行うモードで起動されている場合は、領域差分生成部25はS15に進み、そうでない場合はS16に進む。
次に、完全同期モードの場合は、領域差分生成部25は、データアクセス制御部22に問い合わせて、データ格納領域部5aに格納される更新領域10を構成する一時ページ12のレコード全てを得て差分データとする(S15)(差異判定ステップ)。
次に、領域差分生成部25は、領域情報と領域差分情報を比較し、主ページ数が同じであるか否かを判断する(S16)(差異判定ステップ)。
領域差分生成部25は、主ページ数32が同じである場合はS18に進み、同じでない場合はS17に進む。
主ページ数が同じでない場合は、領域差分生成部25は、データアクセス制御部22に問い合わせて、データ格納領域部5aに格納される参照領域11を構成する主ページ13について、領域情報と領域差分情報の主ページ数32の差のページ数分ページ番号が大きい主ページを得て差分データする(S17)(差異判定ステップ)。つまり、領域情報と領域差分情報における主ページ数32の差と同じページ数の主ページを新しい順にデータ格納領域部5aから取得することで、データ格納領域部5bに未格納の主ページを取得する。
次に、領域差分生成部25は、差分データをデータ管理装置1aから送信し、データ管理装置1bの領域差分配布部26が差分データを受信する(S18)(出力ステップ)。
送受信の方法はネットワーク経由でパイプを使っても良いしソケットを使っても良いし共有ディスクを経由しても良い。
次に、データ管理装置1bでは、領域差分配布部26が、受信した差分データをデータアクセス制御部22に問い合わせてデータ格納領域部5bに格納する(S19)。
最後に、領域差分生成部25が、反映済みの一時ページ数、主ページ数、レコード数で領域差分テーブルを更新する(S20)。
しばしばS11からS17の間、データ格納領域部5aのアクセスの排他制御を行い、データロード処理部20の動作をエラーとするかもしくは待ち状態とすることがある。
また、S19の処理の間、データ格納領域部5bのアクセスの排他制御を行い、データ検索処理部21の動作をエラーとするかもしくは待ち状態とすることがある。
以上のように、マスタデータベース側において更新領域のデータが参照領域に追加されるまで更新領域のデータを差分データとしないようにしているので、小さな単位の送信が多数発生することなく効率的な同期処理を行うことができる。
さらに、データ圧縮等を行った後のアクセス効率が良いデータのみ送信を行い、更新領域のデータを複数回の同期に渡り重複して送信することが無いため、差分データの配布時間を最小限にすることができる。
また、転送効率よりも全ての追加データを対象とする完全な同期を優先させる場合には、更新領域のデータも配布可能としている。
以上のように、本実施の形態では、データベースのデータ格納領域として、データの追加を許可する更新領域とデータの参照だけを許可する参照領域をもち、更新領域のデータは参照領域に追加され、参照領域へ追加されたデータは更新領域から削除されるデータ格納手段を備えたデータ管理装置において、領域のデータの変化を監視する領域監視手段と、領域の差分部分を抜き出す領域差分生成手段と、領域の差分情報を格納する領域差分テーブルを備えたデータ同期制御手段と、差分データを別のデータベースに反映させる領域差分配布手段を備えたデータ管理装置について説明した。
また、前記データ同期制御管理手段は、前記領域差分監視手段により更新領域のデータが参照領域に追加されたことを識別し、領域差分生成手段が参照領域のみから差分データを抜き出すデータ管理装置について説明した。
また、前記データ同期制御管理手段は、前記領域差分監視手段により領域の更新を識別し、領域差分生成手段が更新領域と参照領域から差分データを抜き出すデータ管理装置について説明した。
実施の形態2.
以上の実施の形態1では、差分データをある程度まとまってから配布し転送効率を向上するようにしたものであるが、次に差分データが大量となった場合に適切な切れ目で分割して配布する実施の形態を示す。
図5は、このような場合のデータの流れを示す図である。
データ管理装置1aは、データロード処理部20、データアクセス制御部22、データ変換処理部23、領域監視部24、領域差分生成部25、領域差分テーブル27、差分分割部28、領域差分テーブル管理部29、データ格納領域部5aからなる。
端末装置2aは、データ管理装置1aに接続される。
データ管理装置1bは、データ検索処理部21、データアクセス制御部22、領域差分配布部26、データ格納領域部5bからなる。
データ格納領域部5a、5bは更新領域10、参照領域11からなる。更新領域10は一時ページセット12からなり、参照領域11は主ページセット13からなる。
図5では、図2と比較して、データ管理装置1aにおいて差分分割部28が追加されている。
差分分割部28は、領域差分生成部25(差異判定部)により取得された差分データのデータ量が、データ格納領域部5b(第二のデータベース)の処理単位のデータ量以上である場合に、領域差分生成部25により取得された差分データをデータ格納領域部5bの処理単位のデータに分割し、処理単位のデータごとにデータ格納領域部5bに対して出力する。
また、後述するように、差分分割部28は、データ格納領域部5bに対して処理単位のデータを出力する度に、一定期間出力を休止した後に、後続のデータを出力する。
本実施の形態では、データ管理装置1aにおいてデータロード処理により更新された領域を、データ管理装置1bに配布することによりデータの同期を行う例を示す。データ管理装置1aにおいてデータ検索処理部21、領域差分配布部26を備えても良い。データ管理装置1bにおいてデータロード処理部20、データ変換処理部23、領域監視部24、領域差分生成部25、領域差分テーブル27、差分分割部28を備えてもよい。
端末装置2aは主にデータロード処理を行うために用いられ、端末装置2bは主にデータ検索処理を行うために用いられる。データ格納領域部5aは通常マスタデータベースであり、データ格納領域部5bは通常レプリカデータベースである。
図5において、新規にロードするデータは、端末装置2aよりデータ管理装置1aに渡され、データアクセス制御部22を介してデータ格納領域部5aの更新領域10に格納する。そして、更新領域10のデータが特定の量を超えた場合もしくは特定期間が過ぎた場合、データ変換処理部23により更新領域10のデータを参照領域11に移行する。移行の際に、データをまとめて内部構造の変更や圧縮を行う。
データ同期制御部8はユーザの操作により起動しても良いし、一定間隔の時間でスケジュールされたプログラムにより起動しても良いし、データロード処理部20の終了後に起動しても良いし、データ変換処理部23の終了後に起動しても良い。データ同期制御部8によりデータ格納領域部5aに格納さているデータとデータ格納領域部5bに格納されているデータの差分を生成し、配布することでデータ格納領域部5aと5bのデータの同期を取る。
検索するデータについては、データ格納領域部5bを構成する更新領域10と参照領域11それぞれに格納されるデータを同時に取得することで全ての格納されるデータを検索する。
次に動作について説明する。
図6はデータ同期制御部8の動作を説明するためのフローチャートである。
図6に示すS11〜S17の処理は、図4に示すS11〜S17と同様の処理である。
図6において、領域監視部24がデータアクセス制御部22に問い合わせることによりデータ格納領域部5aに格納されている領域情報を取得するとともに、領域差分生成部25に出力し、領域差分生成部25が領域情報を得る(S11)。領域情報とは、データ格納領域部5aの総レコード数と一時ページ数と主ページ数が示された情報である。
次に、領域差分生成部25が、領域差分テーブル管理部29から領域差分テーブル27の領域差分情報を得る(S12)。領域差分情報とは、領域差分テーブル27に格納されている、データ格納領域部5bの総レコード数と一時ページ数と主ページ数が示された情報である。
次に、領域差分生成部25は、領域情報と領域差分情報を比較し、レコード数が同じであるか否かを判断する(S13)(差異判定ステップ)。レコード数が同じである場合は、領域差分生成部25はS20へ進む(S13)。
同じでない場合は、領域差分生成部25は、S14に進み、完全同期を行うモードでデータ同期制御部8が起動されたかをチェックする(S14)(差異判定ステップ)。
完全同期を行うモードで起動されている場合は、領域差分生成部25はS15に進み、そうでない場合はS16に進む。
次に、完全同期モードの場合は、領域差分生成部25は、データアクセス制御部22に問い合わせて、データ格納領域部5aに格納される更新領域10を構成する一時ページ12のレコード全てを得て差分データとする(S15)(差異判定ステップ)。
次に、領域差分生成部25は、領域情報と領域差分情報を比較し、主ページ数が同じであるか否かを判断する(S16)(差異判定ステップ)。
領域差分生成部25は、主ページ数32が同じである場合はS18に進み、同じでない場合はS17に進む。
主ページ数が同じでない場合は、領域差分生成部25は、データアクセス制御部22に問い合わせて、データ格納領域部5aに格納される参照領域11を構成する主ページ13について、領域情報と領域差分情報の主ページ数32の差のページ数分ページ番号が大きい主ページを得て差分データする(S17)(差異判定ステップ)。つまり、領域情報と領域差分情報における主ページ数32の差と同じページ数の主ページを新しい順にデータ格納領域部5aから取得することで、データ格納領域部5bに未格納の主ページを取得する。
そして、領域差分生成部25は、取得した差分データを差分分割部28に出力する。
次に、差分分割部28が、差分データについて未送信のデータが残っているかを調べ、残っていない場合はS20へ進む(S21)。
未送信の差分データが残っている場合は、差分分割部28は、残っている差分データの中でページ番号が最も小さいページ(差分データの中で最も古いページ)を1ページ分(つまり、データ格納領域部5bにおける処理単位のデータ)出力し、データ管理装置1bの領域差分配布部26で受信する(S22)。
送受信の方法はネットワーク経由でパイプを使っても良いしソケットを使っても良いし共有ディスクを経由しても良い。
データ管理装置1bで受信した1ページ分の差分データを領域差分配布部26がデータアクセス制御部22に問い合わせてデータ格納領域部5bに格納する(S23)。
次に、差分分割部28は、他のプロセスが動作できるように一定時間スリープした後、S21に戻る(S24)。
また、差分分割部28が、全ての差分データを送信した場合は、領域差分生成部25が、領域差分テーブルを更新する(S20)。
しばしばS11からS17の間、データ格納領域部5aのアクセスの排他制御を行い、データロード処理部20の動作をエラーとするかもしくは待ち状態とすることがある。また、S20からS22の処理の間、データ格納領域部5bのアクセスの排他制御を行い、データ検索処理部21の動作をエラーとするかもしくは待ち状態とすることがある。
S23でスリープする時間は、一瞬でも良いし同期先の負荷状況に応じて変更しても良い。
以上のように、データの配布の区切りを参照領域の主ページの区切りにあわせることで、データが不整合となることなくかつレコード単位で配布するよりも効率良く同期を行うことが可能である。
追記型データベースの主ページおよび一時ページは、シェアドナッシングの処理単位としているため、1回のロードで蓄積するデータサイズが大きく差分データ量が増加した場合も、全ての差分データの配布が完了するまでの間に、連続的に排他すること無く配布の区切れで同期先での検索が可能となる。
このように、本実施の形態では、抜き出した差分データを分割する差分分割手段を有し、データ同期制御管理手段において、前記領域差分生成手段が抜き出した差分データについて、前記差分分割手段がデータベース処理に必要なデータの塊に分割するデータ管理装置について説明した。
また、前記データ同期制御管理手段において、前記領域差分生成手段が抜き出した差分データについて、前記差分分割手段がデータベース処理に必要なデータの塊に分割したデータを断続的に同期先データベースに反映するデータ管理装置について説明した。
なお、実施の形態1及び2において説明したデータ管理装置1は、図1に示すように、演算装置7、メモリ6及びデータベース5を有する計算機装置である。
演算装置7は、プログラムを実行するCPU(Central Processing Unit、中央処理装置、処理装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう)である。
演算装置7は、図示していないが、バスを介して、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、通信ボード、磁気ディスク装置と接続され、これらのハードウェアデバイスを制御する。更に、演算装置7は、表示装置、キーボード、マウス、FDD(Flexible Disk Drive)、コンパクトディスク装置(CDD)、プリンタ装置、スキャナ装置等と接続していてもよい。また、磁気ディスク装置の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
メモリ6は、例えばRAMである。
また、データベース5は、例えば、磁気ディスク装置により構成される。
RAM、ROM、FDD、CDD、磁気ディスク装置の記憶媒体は、記憶装置あるいは記憶部の一例である。
通信ボード、キーボード、スキャナ装置、FDDなどは、入力部、入力装置の一例である。
また、通信ボード、表示装置、プリンタ装置などは、出力部、出力装置の一例である。
通信ボードは、図1に示すように、ネットワークに接続されている。例えば、通信ボードは、LAN(ローカルエリアネットワーク)、インターネット、WAN(ワイドエリアネットワーク)などに接続されていても構わない。
磁気ディスク装置には、オペレーティングシステム(OS)、ウィンドウシステム、プログラム群、ファイル群が記憶されている。プログラム群のプログラムは、演算装置7、オペレーティングシステム、ウィンドウシステムにより実行される。
上記プログラム群には、以上の説明において「〜部」、「〜手段」として説明した機能を実行するプログラムが記憶されている。プログラムは、演算装置7により読み出され実行される。
ファイル群には、以上の説明において、「〜の判定結果」、「〜の計算結果」、「〜の処理結果」、「〜の抽出結果」等として説明した情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリになどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介して演算装置7によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのCPUの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示・抽出のCPUの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
また、以上で説明したフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、RAMのメモリ、FDDのフレキシブルディスク、CDDのコンパクトディスク、磁気ディスク装置の磁気ディスク、その他光ディスク、ミニディスク、DVD等の記録媒体に記録される。また、データや信号は、バスや信号線やケーブルその他の伝送媒体によりオンライン伝送される。
また、以上の説明において「〜部」、「〜手段」として説明したものは、「〜回路」、「〜装置」、「〜機器」、「手段」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」、「〜手段」として説明したものは、ROMに記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等の記録媒体に記憶される。プログラムは演算装置7により読み出され、演算装置7により実行される。すなわち、プログラムは、以上の「〜部」、「〜手段」としてコンピュータを機能させるものである。あるいは、以上の「〜部」、「〜手段」の手順や方法をコンピュータに実行させるものである。
実施の形態1、2に係るデータベースシステムの構成例を示す図。 実施の形態1に係るデータ管理装置の構成例を示す図。 実施の形態1、2に係る領域差分テーブルの例を示す図。 実施の形態1に係るデータ管理装置の動作例を示すフローチャート図。 実施の形態2に係るデータ管理装置の構成例を示す図。 実施の形態2に係るデータ管理装置の動作例を示すフローチャート図。 追記型データベースを説明する図。
符号の説明
1 データ管理装置、2 端末装置、3 ネットワーク、4 バックアップ装置、5 データ格納領域部、6 メモリ、7 演算装置、8 データ同期制御部、10 更新領域、11 参照領域、12 一時ページ、13 主ページ、20 データロード処理部、21 データ検索処理部、22 データアクセス制御部、23 データ変換処理部、24 領域監視部、25 領域差分生成部、26 領域差分配布部、27 領域差分テーブル、28 差分分割部、29 領域差分テーブル管理部。

Claims (9)

  1. 更新により追加されるレコードがデータ変換前に格納される更新領域と、更新領域に格納されたレコードがデータ変換後に格納される参照領域とを有し、参照領域に移管されたレコードは更新領域から削除される第一のデータベースを備え、
    前記第一のデータベースの更新領域及び参照領域に対応する更新領域及び参照領域を有し、前記第一のデータベースと同期をとる第二のデータベースに、
    接続されているデータ管理装置であって、
    前記第一のデータベースと前記第二のデータベースにおけるレコードの差異を判定し、前記第一のデータベースと前記第二のデータベースにおけるレコードの差異が参照領域に格納されているレコードの差異である場合に、前記第一のデータベースの参照領域から差分のレコードを取得する差異判定部と、
    前記差異判定部により取得されたレコードを前記第二のデータベースに対して出力する出力部とを有することを特徴とするデータ管理装置。
  2. 前記差異判定部は、
    前記第一のデータベースと前記第二のデータベースにおけるレコードの差異が更新領域に格納されているレコードの差異である場合に、前記第一のデータベースの更新領域に格納されているレコードがデータ変換後に参照領域に移管された後に、前記第一のデータベースの参照領域から当該移管後のレコードを取得することを特徴とする請求項1に記載のデータ管理装置。
  3. 前記差異判定部は、
    前記第二のデータベースが前記第一のデータベースと完全同期をとる必要があるか否かを判定し、完全同期をとる必要がある場合に、前記第一のデータベースと前記第二のデータベースの更新領域においてレコードの差異が存在するか否かを判定し、更新領域においてレコードの差異が存在する場合に、前記第一のデータベースの更新領域から差分のレコードを取得することを特徴とする請求項1に記載のデータ管理装置。
  4. 前記差異判定部は、
    前記第一のデータベースと前記第二のデータベースの更新領域におけるレコードの差異を判定するとともに、前記第一のデータベースと前記第二のデータベースの参照領域においてレコードの差異が存在するか否かを判定し、参照領域においてレコードの差異が存在する場合に、前記第一のデータベースの参照領域から差分のレコードを取得することを特徴とする請求項3に記載のデータ管理装置。
  5. 前記データ管理装置は、
    前記データ管理装置は、更に、
    前記第一のデータベースの更新領域及び参照領域に格納されている総レコード数と、前記第一のデータベースの更新領域に格納されているレコード数と、前記第一のデータベースの参照領域に格納されているレコード数を通知する第一のデータベース状態通知部と、
    前記第二のデータベースの更新領域及び参照領域に格納されている総レコード数と、前記第二のデータベースに格納されている更新領域のレコード数と、前記第二のデータベースの参照領域に格納されているレコード数を通知する第二のデータベース状態通知部とを有し、
    前記差異判定部は、
    前記第一のデータベース状態通知部からの通知内容と前記第一のデータベースからの通知内容とに基づき、前記第一のデータベースと前記第二のデータベースにおけるレコードの差異を判定することを特徴とする請求項1に記載のデータ管理装置。
  6. 前記データ管理装置は、更に、
    前記差異判定部により取得された差分のレコードのデータ量が、前記第二のデータベースの処理単位のデータ量以上である場合に、前記差異判定部により取得された差分のレコードを前記第二のデータベースの処理単位のデータに分割し、処理単位のデータごとに前記第二のデータベースに対して出力する差分分割部を有することを特徴とする請求項1又は3に記載のデータ管理装置。
  7. 前記差分分割部は、
    前記第二のデータベースに対して処理単位のデータを出力する度に、一定期間出力を休止した後に、後続のデータを出力することを特徴とする請求項6に記載のデータ管理装置。
  8. 更新により追加されるレコードがデータ変換前に格納される更新領域と、更新領域に格納されたレコードがデータ変換後に格納される参照領域とを有し、参照領域に移管されたレコードは更新領域から削除される第一のデータベースと、
    前記第一のデータベースの更新領域及び参照領域に対応する更新領域及び参照領域を有し、前記第一のデータベースと同期をとる第二のデータベースとを、
    管理するデータ管理方法であって、
    前記第一のデータベースと前記第二のデータベースにおけるレコードの差異を判定し、前記第一のデータベースと前記第二のデータベースにおけるレコードの差異が参照領域に格納されているレコードの差異である場合に、前記第一のデータベースの参照領域から差分のレコードを取得する差異判定ステップと、
    前記差異判定ステップにより取得されたレコードを前記第二のデータベースに対して出力する出力ステップとを有することを特徴とするデータ管理方法。
  9. 更新により追加されるレコードがデータ変換前に格納される更新領域と、更新領域に格納されたレコードがデータ変換後に格納される参照領域とを有し、参照領域に移管されたレコードは更新領域から削除される第一のデータベースを備え、
    前記第一のデータベースの更新領域及び参照領域に対応する更新領域及び参照領域を有し、前記第一のデータベースと同期をとる第二のデータベースに、
    接続されているコンピュータに、
    前記第一のデータベースと前記第二のデータベースにおけるレコードの差異を判定し、前記第一のデータベースと前記第二のデータベースにおけるレコードの差異が参照領域に格納されているレコードの差異である場合に、前記第一のデータベースの参照領域から差分のレコードを取得する差異判定処理と、
    前記差異判定処理により取得されたレコードを前記第二のデータベースに対して出力する出力処理とを実行させることを特徴とするプログラム。
JP2006070212A 2006-03-15 2006-03-15 データ管理装置及びデータ管理方法及びプログラム Active JP4718351B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006070212A JP4718351B2 (ja) 2006-03-15 2006-03-15 データ管理装置及びデータ管理方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006070212A JP4718351B2 (ja) 2006-03-15 2006-03-15 データ管理装置及びデータ管理方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2007249453A true JP2007249453A (ja) 2007-09-27
JP4718351B2 JP4718351B2 (ja) 2011-07-06

Family

ID=38593700

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006070212A Active JP4718351B2 (ja) 2006-03-15 2006-03-15 データ管理装置及びデータ管理方法及びプログラム

Country Status (1)

Country Link
JP (1) JP4718351B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015203984A (ja) * 2014-04-14 2015-11-16 株式会社Tkc データベース・システム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000035911A (ja) * 1998-07-21 2000-02-02 Mitsubishi Electric Corp データベースの等価方法
JP2001101041A (ja) * 1999-09-29 2001-04-13 Mitsubishi Electric Corp データ管理装置およびデータ管理方法
JP2002259183A (ja) * 2001-02-28 2002-09-13 Hitachi Ltd 記憶装置システム及びデータのバックアップ方法
JP2006004304A (ja) * 2004-06-21 2006-01-05 Mitsubishi Electric Corp データ管理装置及びデータ管理方法及びプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000035911A (ja) * 1998-07-21 2000-02-02 Mitsubishi Electric Corp データベースの等価方法
JP2001101041A (ja) * 1999-09-29 2001-04-13 Mitsubishi Electric Corp データ管理装置およびデータ管理方法
JP2002259183A (ja) * 2001-02-28 2002-09-13 Hitachi Ltd 記憶装置システム及びデータのバックアップ方法
JP2006004304A (ja) * 2004-06-21 2006-01-05 Mitsubishi Electric Corp データ管理装置及びデータ管理方法及びプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015203984A (ja) * 2014-04-14 2015-11-16 株式会社Tkc データベース・システム

Also Published As

Publication number Publication date
JP4718351B2 (ja) 2011-07-06

Similar Documents

Publication Publication Date Title
US9609060B2 (en) Distributed storage system and method
JP5207260B2 (ja) バックアップ操作において重複排除を行うためのソース分類
US20150213100A1 (en) Data synchronization method and system
US20190129976A1 (en) Apparatus for controlling synchronization of metadata on network and method for the same
CN111475483B (zh) 数据库迁移方法、装置及计算设备
US20080294700A1 (en) File management system, file management method, file management program
JP4715774B2 (ja) レプリケーション方法、レプリケーションシステム、ストレージ装置、プログラム
CN102272751B (zh) 在数据库环境通过背景同步的数据完整性
JP5724735B2 (ja) データベース更新制御装置、データベース管理システムおよびデータベース更新制御プログラム
JP5686034B2 (ja) クラスタシステム、同期制御方法、サーバ装置および同期制御プログラム
JP5681558B2 (ja) データの保存を制御する装置及び方法
JP2007241486A (ja) 記憶装置システム
WO2023077971A1 (zh) 事务处理方法、装置、计算设备及存储介质
JP6196389B2 (ja) 分散型ディザスタリカバリファイル同期サーバシステム
JP2007041888A (ja) データベース再構成装置、およびデータベース再構成プログラム
JP4137391B2 (ja) データ管理装置、方法、プログラム、及び記録媒体
US11562000B2 (en) Storage constrained synchronization engine
CN110807039A (zh) 一种云计算环境下数据一致性维护系统及方法
CN112334891A (zh) 用于搜索服务器的集中式存储
JP2006323663A (ja) 情報処理システムとレプリケーション方法並びに差分情報保持装置とプログラム
CN110955719B (zh) 一种数据存取处理设备、系统和方法
WO2017187311A1 (en) Storage constrained synchronization engine
US20210224292A1 (en) Information processing apparatus and information processing system
TWI569159B (zh) 避免多餘的資料複製的資料同步方法及裝置
JP4718351B2 (ja) データ管理装置及びデータ管理方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080820

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110307

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4718351

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140408

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250