(57)【特許請求の範囲】
【請求項１】
第一のデータベースと、
ログ反映手段と、
制御情報記憶部と、
制御情報削除手段とを備え、
前記ログ反映手段は、通信路を介して受信した他のデータベース内のデータの更新内容を表す更新ログのうち、第一の更新ログを前記第一のデータベース内の第一のデータに反映させ、かつ前記第一のデータを表す制御情報を前記制御情報記憶部に記憶させる第一の制御と、前記更新ログのうち、第二の更新ログの更新内容が前記第一のデータに対する更新内容か否かを前記制御情報に基づいて判断し、前記第一のデータと異なるデータの更新内容である場合に前記第二の更新ログの更新内容を前記第一のデータベースに反映させる第二の制御とを行い、
前記制御情報削除手段は、前記制御情報記憶部に所定期間記憶された前記制御情報を削除する
情報処理システム。
【請求項２】
請求項１に記載の情報処理システムであって、
前記第一の更新ログは同期型レプリケーションによって反映される更新ログであり、前記第二の更新ログは、非同期型または準同期型レプリケーションによって反映される更新ログである、情報処理システム。
【請求項３】
請求項２に記載の情報処理システムであって、
前記制御情報削除手段は、第三の更新ログを読み込んで、前記制御情報を削除する処理を実行し、
前記第三の更新ログは、前記第一の更新ログに伴って生じ、非同期型または準同期型レプリケーションによって反映される更新ログである、情報処理システム。
【請求項４】
請求項１から３のいずれかに記載の情報システムであって、
前記ログ反映手段は、前記第二の更新ログの更新内容が前記第一のデータに対する更新ログであると判断した場合、前記第二の更新ログの更新内容を破棄する、情報処理システム。
【請求項５】
請求項１から４のいずれかに記載の情報処理システムであって、
前記ログ反映手段は、前記第二の更新ログを更新ログ記憶部から読みだし、前記第二の制御を行う、情報処理システム。
【請求項６】
請求項５に記載の情報処理システムであって、
前記第二の更新ログは、更新ログ受信手段によって受信され、前記更新ログ記憶部に出力される、情報処理システム。
【請求項７】
請求項１から６のいずれかに記載の情報処理システムであって、
前記第一のログ及び前記第二のログはレコードイメージを含む、情報処理システム。
【請求項８】
請求項１から７のいずれかに記載の情報処理システムであって、
前記ログ反映手段が複数のデータベースに対し、前記第一の制御及び前記第二の制御を行う、情報処理システム。
【請求項９】
請求項１から７のいずれかに記載の情報処理システムであって、
前記第一のデータベースと、前記ログ反映手段と、前記制御情報記憶部と、前記制御情報削除手段と、の組が複数ある、情報処理システム。
【請求項１０】
第一のデータベースを第二のデータベースへレプリケーションするレプリケーションシステムにおいて、
前記第一のデータベースの第一の更新を受信し、前記第一の更新を前記第二のデータベースに適用し、前記第一の更新が適用された第一のデータを示す制御情報を制御情報記憶部に記憶させる第一のステップと、
前記第一のデータベースの第二の更新を受信し、前記第二の更新を更新情報記憶部に記憶させ、前記第二の更新の更新内容が前記第一のデータに対する更新か否かを前記制御情報に基づいて判断する第二のステップと、
前記制御情報が、前記制御情報記憶部に所定期間記憶された後削除される第三のステップと、有する情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム及び情報処理方法に関し、特に同期型レプリケーション及び非同期型レプリケーションを用いた、情報処理システム及び情報処理方法に関する。
【背景技術】
【０００２】
レプリケーションを行う方法として、マスタデータベースへの更新単位で、同じ更新内容をレプリカデータベースにも更新する方法がある。この方法でレプリケーションする場合、主に同期型と非同期型の二種類が存在する。レプリケーションを行うときには、レプリケーション先のレプリカデータベースごとに、同期型か非同期型かのいずれかのレプリケーションを選択して固定するのが一般的である。これは、同一のレプリカデータベースに対し同期型と非同期型のレプリケーションを行う場合に、同一レコードに対して更新が反映される順序が変わることによってマスタデータベースとレプリカデータベースとで更新内容が異なる問題を回避するためである。しかし、この問題にもかかわらず、同一のレプリカデータベースに対し、同期型と非同期型のレプリケーションを適宜選択して行う手法がとられることがある。
【０００３】
同一のレプリカデータベースに対し同期型と非同期型のレプリケーションを行う場合に生じる上述した問題について説明する。マスタデータベース内のあるレコードに対して、まず、非同期型レプリケーションを行う更新をし、次に同期型レプリケーションを行う更新をしたとする。この場合、新しい更新に対応する同期型のレプリケーションが先にレプリカデータベースに対し行われ、古い更新に対応する非同期型のレプリケーションがその後に行われるおそれがある。同期型レプリケーションによってレコードに反映された新しい更新内容が、非同期型レプリケーションによって古い更新内容で上書きされてしまうため、マスタデータベースとレプリカデータベースの更新内容が不一致となる。
【０００４】
図１２を参照すると、特許文献１には、上述の問題を解決するため、正側記憶システムのディスク制御装置（２０）とディスク装置（３０）及び、バックアップデータのコピー先である副側記憶システムの副ディスク制御装置（２１）と副ディスク装置（３１）で構成されている記憶システムにおいて、非同期の遠隔２重コピーから同期の遠隔２重コピーへシフトした場合、副ディスク装置（３１）へ未コピーのデータが残っている場合は、送るデータへ一時保留指示を付与し、副ディスク装置（３１）への書き込みを一時保留するようにした技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００１−２３６２５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に記載の技術では、ディスク装置（３０）に行った更新と同じ順序で、副ディスク装置（３１）へ反映させることができる。しかし、上述したように、非同期の遠隔２重コピーの際の未コピーのデータが残っている場合は、後から生じる同期の遠隔２重コピーのデータの副ディスク装置（３１）への書き込みは一時保留される。このため、このような状況において同期の遠隔２重コピー（同期型のレプリケーション）のスループットが低下する。
【０００７】
本発明の目的は、レプリカデータベースに先に同期された新しい更新内容を、後から同期された古い更新内容で上書きしてしまうことがないデータベースシステム、データベースのレプリケーション方法及びプログラムを提供することにある。
【０００８】
また、本発明の他の目的は、同一のレプリカデータベースに対し、同期型及び非同期型などの複数の同期方法によるレプリケーションを行う場合に、レプリケーション全体のスループットを低下させないデータベースシステム、データベースのレプリケーション方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００９】
本発明の情報処理システムは、第一のデータベースと、ログ反映手段と、制御情報記憶部と、を備え、ログ反映手段は、通信路を介して受信した他のデータベース内のデータの更新内容を表す更新ログのうち、第一の更新ログを第一のデータベース内の第一のデータに反映させ、かつ第一のデータを表す制御情報を制御情報記憶部に記憶させる第一の制御と、更新ログのうち、第二の更新ログの更新内容が第一のデータに対する更新内容か否かを制御情報に基づいて判断し、第一のデータと異なるデータの更新内容である場合に第二の更新ログの更新内容を第一のデータベースに反映させる第二の制御とを行う。
【発明の効果】
【００１０】
本発明の情報処理システムによれば、新しい更新内容に更新されたデータベース内のデータに対して、古い更新内容が反映されない。また、本発明の情報処理システムによれば、同一のレプリカデータベースに対し、同期型と非同期型、または同期型と準同期型によるレプリケーションを行う際に、レプリケーション全体のスループットを低下させることがない。
【図面の簡単な説明】
【００１１】
【図１】本発明の第一の実施形態における情報処理システム１０の構成を示すブロック図である。
【図２】本発明の第一の実施形態における情報処理システム１０の構成を示すブロック図である。
【図３】本発明の第二の実施形態におけるレプリケーションシステム２００の構成を示すブロック図である。
【図４】本発明の第二の実施形態における同期型レプリケーションの処理を示すフローチャートである。
【図５】本発明の第二の実施形態における非同期型レプリケーションの処理を示すフローチャートである。
【図６】本発明の第二の実施形態における更新ログ格納表を示す概念図である。
【図７】本発明の第二の実施形態における非同期更新制御表を示す概念図である。
【図８】本発明の第二の実施形態におけるレプリカデータベースへの反映処理を説明する図である。
【図９】本発明の第一の実施形態における他のデータベース１１から第一のデータベース１にレプリケーションされる表及びデータの例である。
【図１０】本発明の第四の実施形態におけるレプリケーションシステム２００の構成を示すブロック図である。
【図１１】特許文献１に記載の遠隔コピーシステムの構成を示す図である。
【図１２】本発明の第四の実施形態におけるレプリケーションシステム２００の構成を示すブロック図である。
【図１３】本発明の第一の実施形態における情報処理システム１０の構成を示すブロック図である。
【発明を実施するための形態】
【００１２】
以下に、本発明を実施するための好ましい形態について図面を参照して詳細に説明する。ただし、以下に述べる実施形態は本発明を実施するために技術的に好ましい限定がされているが、発明の範囲を以下に限定するものではない。
【００１３】
［第一の実施形態］第一の実施形態について図面を参照して詳細に説明する。図１は、第一の実施形態における情報処理システム１０の構成を示すブロック図である。図１を参照すると、情報処理システム１０は、第一のデータベース１と、ログ反映手段２と、制御情報記憶部３とを備えている。
【００１４】
［構成の説明］図１を参照すると、第一のデータベース１は、通信路５を介して他のデータベース１１と接続されている。ログ反映手段２は、通信路５を介して受信した、他のデータベース１１内のデータの更新内容を表す更新ログについて、以下の第一の制御と第二の制御を行う。具体的には、第一の制御は、更新ログのうち、第一の更新ログを第一のデータベース１内の第一のデータに反映させ、第一のデータを表す制御情報を制御情報記憶部３に記憶させるものである。また、第二の制御は、更新ログのうち、第二の更新ログが第一のデータに対する更新ログか否かを制御情報に基づいて判断し、第一のデータと異なるデータの更新ログである場合に、第二の更新ログを第一のデータベース１に反映させるものである。
【００１５】
［動作の説明］次に、図１を参照して情報処理システム１０の動作を説明する。初めに、ログ反映手段２は、通信路５を介して、他のデータベース内のデータの更新内容を表す更新ログを受信する。次に、ログ反映手段２は、以下に示す第一の制御と第二の制御を行う。
【００１６】
まず、ログ反映手段２は、更新ログのうち、第一の更新ログを第一のデータベース１内の第一のデータに反映させ、第一のデータを表す制御情報を制御情報記憶部３に記憶させる第一の制御を行う。
【００１７】
次に、ログ反映手段２は、更新ログのうち、第二の更新ログが第一のデータに対する更新ログか否かを制御情報に基づいて判断し、第一のデータと異なるデータの更新ログである場合に第二の更新ログを第一のデータベース１に反映させる第二の制御を行う。
【００１８】
ここでは、第一の制御を行ったあとに第二の制御を行う場合を説明したが、第一、第二の制御は順不同に行うことができる。例えば、第一の更新ログと第二の更新ログが、いずれも第一のデータベース１内の第一のデータに対する更新ログであり、第二の制御を第一の制御の前に行う場合を想定する。この場合、ログ反映手段２が第二の制御を行う際、第一のデータを表す制御情報が制御情報記憶部３に記憶されていないため、第二の更新ログは第一のデータベース１に反映される。また、第一、第二の制御のいずれかを連続して行ってもよい。
【００１９】
［効果の説明］本実施形態の情報処理システムによれば、第一の更新ログによって新しい更新内容となったデータベース内のデータに対して、後から処理する第二の更新ログが、該データに関するより古い更新内容であるかどうかを制御情報によって判断できるため、より古い更新内容が後から反映されることがない。また、後から処理する第二の更新ログは、一時保留にされずに処理されるため、レプリケーション全体のスループットが高まる。
【００２０】
図１及び上述の説明では第一のデータベース１を一つ有する情報処理システム１０として説明した。しかし、図２のように、第一のデータベース１を複数有する構成としてもよい（図２において、二つ目のデータベースを第二のデータベース１´として示している）。図２の構成の場合、ログ反映手段２は第一のデータベース１及び第二のデータベース１´の両方に対し、第一の制御と第二の制御を行う。この構成をとることにより、システムの耐障害性をより高めることができる。
【００２１】
加えて、情報処理システム１０は、図１３に示すように制御情報削除手段４をさらに備えてもよい。制御情報削除手段４は、制御情報記憶部３に所定期間記憶された制御情報を削除する。
【００２２】
より具体的には、上述の動作の説明において、ログ反映手段２の第二の制御の後に、制御情報削除手段４は、制御情報記憶部３に所定期間記憶された制御情報を削除する。ここでは、第二の制御の後、制御情報削除手段４によって制御情報が削除されるとして説明したが、以下のように、処理順は前後しうる。
【００２３】
まず、他のデータベース１１側の処理順において、第一の更新ログが第二の更新ログより後の更新である場合、第一の更新ログに関する制御情報の削除は、ログ反映手段２の第二の制御の後に行われる（第一のケース）。一方、第一の更新ログが第二の更新ログより前の更新である場合は、制御情報削除手段４による制御情報の削除の後、ログ反映手段２の第二の制御が行われる（第二のケース）。
【００２４】
つまり、第一及び第二の更新ログが共に第一のデータ（例えば、同一のレコード）に対する更新である場合、第一のケースの場合は第二のログが第一のデータに対する更新ログであると判断され、第一のデータベース１に反映されない。一方第二のケースの場合、第一のデータに関する制御情報が無いため、第二の更新ログは、第一のデータベース１に反映される。
【００２５】
情報処理システム１０が制御情報削除手段をさらに備えることで、同一のレプリカデータベースに対し、複数の同期方法によるレプリケーションを行う際に、更新ログが一時保留にされずに都度処理されるため、レプリケーション全体のスループットを高めることできる。
【００２６】
［第二の実施形態］次に、第一の実施形態における情報処理システム１０の構成例として、情報処理システム２００´を説明する。第二の実施形態では、情報処理システム２００´と、第一の実施形態における他のデータベース１１に相当する、マスタデータベース１１１を備える情報処理システム２００´´とを備えるレプリケーションシステム２００として説明する。
【００２７】
図３乃至図５を参照して、レプリケーションシステム２００の構成及び動作を説明する。図３は、第二の実施形態におけるレプリケーションシステム２００の構成を示すブロック図である。図４は、第二の実施形態における同期型レプリケーションの処理を示すフローチャートである。また、図５は、第二の実施形態における非同期型レプリケーションの処理を示すフローチャートである。
【００２８】
第二の実施形態におけるレプリケーションシステム２００では、第一の実施形態における第一の更新ログは同期型レプリケーションで更新される更新ログ、第二の更新ログは非同期型レプリケーションで更新される更新ログと対応する。更新は１トランザクションごとに処理される。また、レプリケーションシステム２００では、マスタデータベース１１１の更新方法を、更新ごとに同期型・非同期型レプリケーションを選択することができる。また、第二の実施形態におけるレプリケーションの更新単位はレコードである。
【００２９】
［構成の説明］以下、図３を参照してレプリケーションシステム２００の構成を説明する。図３を参照すると、レプリケーションシステム２００は、情報処理システム２００´及び情報処理システム２００´´を含む。
【００３０】
情報処理システム２００´´は、第一の実施形態における他のデータベース１１としてマスタデータベース１１１と、アプリケーション１１２上の更新ログ生成手段１１２ａと、更新ログ格納手段１１３ａと、第一の実施形態における通信路として更新ログ送信手段１０５ａとを備える。更新ログ格納手段１１３ａは、情報処理システム２００´へ送信するまで第二の更新ログを格納する。
【００３１】
情報処理システム２００´は、第一の実施形態における第一のデータベース１としてレプリカデータベース１０１と、第一の実施形態におけるログ反映手段２及び制御情報削除手段４として制御手段１０２と、を備えている。また、情報処理システム２００´は、第一の実施形態における制御情報記憶部３として非同期更新制御表１０３ａを記憶した記憶部１０３と、第一の実施形態における通信路５として更新ログ受信手段１０５ｂを備えている。さらに、情報処理システム２００´は、ログ反映手段２が第二の制御を行うまで受信した第二の更新ログを格納する更新ログ格納手段１１３ｂを備える。
【００３２】
次に、情報処理システム２００´´の構成をさらに詳細に説明する。情報処理システム２００´´において、アプリケーション１１２は、マスタデータベース１１１を参照および更新するプログラムである。アプリケーション１１２は、情報処理システム２００´´に対し１つ以上存在する。アプリケーション１１２は更新ログ生成手段１１２ａを有している。マスタデータベース１１１の更新の１トランザクション単位で、アプリケーション１１２は同期型レプリケーションを行うか非同期型レプリケーションを行うかを選択し、更新ログ生成手段１１２ａによって更新ログを生成する。
【００３３】
更新ログ生成手段１１２ａは、同期型レプリケーションで更新する更新ログを生成したときに、非同期更新制御表１０３ａの特定の制御情報の削除を示す更新内容を、非同期型レプリケーションで更新する更新ログとして、更新ログ格納手段１１３ａに格納する。更新ログ格納手段１１３ａは、更新ログ生成手段１１２ａがマスタデータベース１１１更新時に生成した更新ログを格納する。生成される更新ログには、更新対象のレコードを特定する情報である更新対象のユーザ表名と更新対象レコードのキー名、さらに更新内容が１組以上含まれているものとする。
【００３４】
図６を参照すると、更新ログは、更新の発生順序、更新対象のレコードを特定する情報、レコードイメージ等を含む。更新順序を表す情報は、マスタデータベース１１１への非同期型レプリケーションにより更新する情報である。更新順序を表す情報は、更新ログ格納時に更新ログに付加される。更新順序を制御する方法として、更新順に通番を付加することができるが、更新順序が制御できれば他の手段でもよい。
【００３５】
図３を参照すると、更新ログ送信手段１０５ａは、情報処理システム２００´の更新ログ受信手段１０５ｂに接続されている。更新ログ送信手段１０５ａは、更新ログ格納手段１１３ａに格納された更新ログを非同期に読み込んで、情報処理システム２００´の更新ログ受信手段１０５ｂへ更新ログを送信する。
【００３６】
次に、情報処理システム２００´の構成をさらに詳細に説明する。レプリカデータベース１０１は、マスタデータベース１１１の更新のレプリケーション先となるデータベースである。
【００３７】
制御手段１０２は、レプリカデータベース１０１と更新ログ格納手段１１３ｂ、及び非同期更新制御表１０３ｂと接続している。制御手段１０２は、レプリカデータベース１０１に更新ログを反映する。制御手段１０２は、更新ログ格納手段１１３ｂを参照し、レプリカデータベース１０１に反映していない更新ログをレプリカデータベース１０１へ反映する。その際、更新ログに付加された更新順序に従って、更新ログをレプリカデータベース１０１へ反映する。
【００３８】
制御手段１０２は、同期型レプリケーションを行う更新の場合、更新ログ格納手段１１３ｂを介さず、更新ログ生成手段１１２ａから直接更新ログを受け取り、レプリカデータベース２０１へ反映する。
【００３９】
制御手段１０２は、更新ログ格納手段１１３ｂから更新ログを取得すると、非同期更新制御表１０３ａを参照し、更新ログをレプリカデータベース１０１に反映すべきか否かを判断する。
【００４０】
図７を参照すると、非同期更新制御表１０３ａは、制御対象ユーザ表と制御対象キーとからなる。制御対象ユーザ表は、制御情報であって、その更新ログに含まれる更新対象ユーザ表名である。制御対象キーは、制御情報であって、更新対象レコードのキー名である。制御対象ユーザ表及び制御対象キーは、同期型レプリケーションでレプリカデータベース１０１に更新ログが反映されたときに、制御手段１０２によって非同期更新制御表１０３ａに登録される。制御対象キーはユーザ表内のレコードを一意に決定するものである。同期型レプリケーションの非同期型レプリケーションに対する使用タイミングに依存して、同一のユーザ表の同一のキーに対応する制御情報が２つ以上登録される場合がある。
【００４１】
例えば、連続して２つの更新ログが同期型レプリケーションによって更新される場合、さらにこの二つの更新ログに関する同期型レプリケーションが、非同期型レプリケーションで更新されかつ古い更新である更新ログより先に更新されるときに、非同期更新制御表１０３ａに制御情報が２つ登録される。
【００４２】
図３を参照すると、制御手段１０２は、更新ログ格納手段１１３ｂから取得した更新ログの更新内容が示す制御対象ユーザ表及び制御対象キーが非同期更新制御表１０３ａに登録された制御対象ユーザ表及び制御対象キーに一致する場合、その更新ログを破棄する。また、制御手段１０２は、更新ログ格納手段１１３ｂから取得した更新ログの更新内容が、非同期更新制御表１０３ａの特定の制御情報の削除を示す内容である場合、該当する制御情報を削除する。
【００４３】
更新ログ受信手段１０５ｂは、更新ログ送信手段１０５ａから受信した更新ログを更新ログ格納手段１１３ｂに格納する。更新ログ格納手段１１３ｂにおいて、更新ログは、更新ログ格納手段１１３ａへ格納されたときに付加された更新順序に従って更新ログが格納される。
【００４４】
［動作の説明］次に、レプリケーションシステムの動作を、マスタデータベース１１１の更新から、レプリカデータベース１０１の更新まで、図３、４、及び５を参照して説明する。図４は、第二の実施形態における同期型レプリケーションの処理を示したフローチャートである。図５は、第二の実施形態における非同期型レプリケーションの処理を示したフローチャートである。
【００４５】
まず、情報処理システム２００´´におけるアプリケーション１１２の動作について説明する。アプリケーション１１２は、ユーザが同期型レプリケーション若しくは非同期型レプリケーションを選択することにより、又は、更新される情報の種別に応じて、同期型レプリケーション若しくは非同期型レプリケーションを選択する。
【００４６】
アプリケーション１１２がマスタデータベース１１１の１トランザクション単位の更新について非同期型レプリケーションを選択すると、更新ログ生成手段１１２ａは更新ログを生成する。生成された更新ログは、更新ログ格納手段１１３ａに格納される。
【００４７】
次に生じたマスタデータベース１１１の更新について、同期型レプリケーションが選択されると、アプリケーション１１２は更新ログ生成手段１１２ａによって同期型レプリケーションで更新する更新ログを生成する。このとき、更新ログ生成手段１１２ａは、非同期更新制御表１０３ａの特定の制御情報の削除を示す更新内容を、非同期型レプリケーションで更新する更新ログとして、更新ログ格納手段１１３ａに格納する。ここで特定の制御情報とは、前述の同期型レプリケーションで更新する更新ログがレプリカデータベース１０１に反映されたときに、制御手段１０２によって非同期更新制御表１０３ａに登録される制御情報である。
【００４８】
次に、情報処理システム２００´におけるレプリケーション動作について図面を参照して説明する。アプリケーション１１２において、非同期型レプリケーションを指定したデータベース更新の後に、同期型レプリケーションを選択した更新を行う時点から説明を開始する。
【００４９】
図４を参照すると、マスタデータベース１１１の更新時に、アプリケーション１１２は同期型レプリケーションを選択してマスタデータベース１１１を更新する。マスタデータベース１１１の更新がコミットされたときに、更新ログ生成手段１１２ａは更新単位であるトランザクション内の全ての更新の更新ログを生成する（ｓｔｅｐ１）。
【００５０】
同期型レプリケーションの処理を説明する。ここで、レコード更新内容がレコード内の一部の更新であった場合でも、更新ログには該当レコードのデータ全体を更新ログの更新内容に格納する。これは、同期型レプリケーション処理で該当レコードを更新する際は、非同期型レプリケーションで更新される、未反映であるより古い更新の更新ログの更新内容も含まれるようにすることで、レコードのデータを最新にするためである。ただし、下記（１）〜（３）のいずれかの場合は、レコードのデータ全体を取得しなおす必要はない。
（１）常に更新対象レコードのレコード全体を格納して更新ログを生成している場合。
（２）レコード追加の場合。（必ず更新内容にレコード全体のデータを含むため）
（３）レコード削除の場合。（該当レコードのキーがわかれば十分であるため）
更新ログ生成手段１１２ａは、更新ログ生成後、生成した更新ログを制御手段１０２に送信する（ｓｔｅｐ２）。
【００５１】
制御手段１０２は、更新ログ生成手段１１２ａから更新ログを受信すると（ｓｔｅｐ３）、受信した更新ログをレプリカデータベース１０１へ反映する（ｓｔｅｐ４）。制御手段１０２は、今回更新したユーザ表名とキー名の組み合わせからなる制御情報を非同期更新制御表１０３ａに登録する（ｓｔｅｐ５）。
図８を参照すると、制御手段１０２は、ユーザ表がテーブルＡのキー１のレコードに対する更新を反映した場合、非同期更新制御表１０３ａに当該表の３行目に示されるとおりの制御情報を追加する。
図６において、制御手段１０２は、非同期更新制御表１０３ａへの登録完了後、更新ログ生成手段１１２へ処理完了の応答を送信する（ｓｔｅｐ６）。更新ログ生成手段１１２は、制御手段１０２から処理完了の応答を受信すると（ｓｔｅｐ７）、非同期更新制御表１０３ａに今回登録した制御情報を削除するための削除情報を、更新ログと同様の形式で更新ログ格納手段１１３ａに格納する（ｓｔｅｐ８）。
【００５２】
図６を参照すると、例えば、通番２１まで更新ログが更新ログ格納手段１１３ａに格納されている状態で、ユーザ表がテーブルＡのキー１のレコードに対する更新ログを同期型レプリケーションによって処理した場合、図４の通番２２の通りの更新ログを格納する。削除情報を含む更新ログの格納が完了したら、マスタデータベース１１１の更新処理が完了する。
【００５３】
図６を参照すると、ｓｔｅｐ４において、制御手段１０２が更新ログを反映する際に、非同期型レプリケーションの更新を追い抜いてレプリカデータベース１０１を更新する。このため、レコード追加やレコード削除について、非同期型レプリケーションでの処理を選択していた場合に、マスタデータベース１１１で行った更新を、非同期型レプリケーションの更新を追い抜いてレプリカデータベース１０１へ反映できない可能性がある。例えば、非同期型レプリケーションで登録したレコード追加の更新ログを追い抜いて、同期型で同レコードを更新した場合である。このような場合でも正常にレプリケーション処理を行うため、同期型レプリケーションにおける更新ログ反映処理では、下記（１）〜（３）の通りの対応をする。
（１）更新ログがレコード追加の場合に、既にレコードがある場合は、レコード更新する。
（少なくとも非同期型レプリケーションの更新ログの「レコード削除」を追い抜いているので、上書きすれば同じ結果が得られる）
（２）更新ログがレコード更新の場合に、レコードが存在しないとき、レコード追加する。
（少なくとも非同期型レプリケーションの更新ログの「レコード追加」を追い抜いているので、レコードを追加し、さらに更新内容を反映させれば同じ結果が得られる）
（３）更新ログがレコード削除の場合に、既にレコードが存在しないとき、何もしない。
（少なくとも非同期型レプリケーションの更新ログの「レコード追加」を追い抜いているので、何もせず、非同期更新制御表１０３ａに制御情報を書いておくのみでよい。）
次に、非同期型レプリケーションの処理を説明する。図５を参照すると、制御手段１０２は、定期的に更新ログ格納手段１１３ｂを参照し、レプリカデータベース１０１に反映していない更新ログが存在している場合、そのうちの最も古い更新ログを取得する（ｓｔｅｐ１）。制御手段１０２は、更新ログを取得したとき、更新ログに格納された更新内容全てに対して、次の通りの処理を行う。
【００５４】
まず、制御手段１０２は、更新内容が非同期更新制御表１０３ａの制御情報の削除を示しているか否かを確認する（ｓｔｅｐ２−１）。制御情報の削除を示していない場合（ｓｔｅｐ２−１がＮｏの場合）は、非同期型レプリケーションを指定されて生成された更新ログである。次に、制御手段１０２は、処理対象のユーザ表とキーを取得して非同期更新制御表１０３ａに該当する制御情報が存在するか否かを確認する（ｓｔｅｐ３）。
【００５５】
該当する制御情報が非同期更新制御表１０３ａに１件も存在しなかった場合（ｓｔｅｐ３−１がＮｏの場合）、制御手段１０２は、その更新内容をレプリカデータベース１０１へ反映する（ｓｔｅｐ４）。制御手段１０２は、非同期更新制御表１０３ａに該当する制御情報が存在した場合（ｓｔｅｐ３−１がＹｅｓの場合）、その更新内容をレプリカデータベース１０１に反映させない。これは、その更新内容がマスタデータベース１１１で発生した、より新しいトランザクションであって、同じレコードに対して同期型レプリケーションを指定した更新が発生し、その同期型レプリケーション処理が既にレプリカデータベース１０１へ反映された状態であるためである。つまり、同期型レプリケーション処理が非同期型レプリケーション処理を追い抜いている状態である。そのため、この更新内容はレプリカデータベース１０１に反映する必要はない。制御手段１０２は、反映させなかった更新内容を破棄、または削除等処理する。
【００５６】
更新内容が非同期更新制御表１０３ａの制御情報削除を示している場合（ｓｔｅｐ２−１がＹｅｓの場合）、該当する制御情報を１件削除する（ｓｔｅｐ５）。制御情報を削除した結果、非同期更新制御表１０３ａに制御情報が１件もなくなった場合、同期型レプリケーション処理が非同期型レプリケーション処理を追い抜いている状態が解消されたことを示している。
【００５７】
処理の具体例として、更新ログ格納手段１１３ａが図６の状態で、通番２０の更新ログを反映する前に通番２２に相当する同期型レプリケーションが処理された場合を考える。通番２２に相当する同期型レプリケーション処理で、非同期更新制御表１０３ａにテーブルＡのキー１の制御情報が登録される。そのため、通番２０の更新ログを制御手段１０２が取得したとき、非同期更新制御表１０３ａに該当する制御情報が存在するため、通番２０の更新ログは反映されない。通番２２の更新ログを制御手段１０２が取得した際、更新内容が非同期更新制御表１０３ａの制御情報の削除であるため、非同期更新制御表１０３ａからテーブルＡのキー１のレコードを削除する。テーブルＡのキー１のレコードの制御情報が削除されたため、新たにこのレコードの制御情報が登録されるまでに発生したテーブルＡのキー１のレコードの更新ログはレプリカデータベース１０１に反映される。
【００５８】
上述したように、制御手段１０２が非同期更新制御表１０３ａを用いたレプリケーション処理の制御を行うことで、同期型レプリケーション処理に基づく更新が非同期型レプリケーション処理に基づく更新を追い抜いた後で、非同期型レプリケーション処理が同期型レプリケーション処理の更新を上書きしてしまう事象が発生しなくなる。これにより、更新単位で同期型か非同期型かを選択してレプリケーションを行うことが可能になる。
【００５９】
なお、同期型レプリケーション処理で非同期更新制御表１０３ａに登録した制御情報を削除する前に、同一のユーザ表およびキーに対して同期型レプリケーション処理を実施した場合、既に制御情報が登録されているかどうかにかかわらず、同一の制御情報を登録する。例えば、図７の１行目と２行目のテーブルＢキー３の制御情報がこの状態の例である。この場合、該当する全ての制御情報が削除された時点で、同期型レプリケーション処理の追い抜きがなくなったことになる。
【００６０】
ここで、非同期型レプリケーションと同期型レプリケーションが混在した場合の反映処理で、レプリカデータベース２０１内のユーザ表のレコードと非同期更新制御表２０９の制御情報がどのように遷移するかを、図８の具体例を基に説明する。図８は、第二の実施形態におけるレプリカデータベースへの反映処理を説明する図である。
【００６１】
図８の各表は左から更新ログ格納手段１１３ｂ、非同期更新制御表１０３ａ、テーブルＡ（レプリカデータベース１０１上のユーザ表）を表している。更新ログ格納手段１１３ｂ内の通番に取り消し線が入っている更新ログは、制御手段１０２で処理が完了している更新ログを表している。
【００６２】
まず、図８の（１）のとおりに更新ログ格納手段１１３ｂに通番３３まで更新ログが登録されており、レプリカデータベース１０１へは通番３１までの更新が反映済みである状態とする。この状態から、同期型レプリケーションを指定して、テーブルＡのキー１のレコードの値を“Ｚ１”に更新した場合に、非同期更新制御表１１３ｂおよびテーブルＡがどのように更新されるかについて説明する。
【００６３】
図８の（１）の状態では更新ログ格納手段１１３ｂの通番３１の更新ログまで反映されているため、レプリカデータベース１０１上のテーブルＡのキー１の値は“Ｘ１”となっている。また、非同期更新制御表１０３ａには制御情報は無い。この状態で、更新ログ生成手段１１２ａが同期型レプリケーションを指定し、次に制御手段１０２がマスタデータベース１０１上のテーブルＡのキー１の値を“Ｚ１”に更新すると、更新完了時には、図８（２）の通り、レプリカデータベース１０１上のテーブルＡのキー１の値は“Ｚ１”になり、非同期更新制御表１０３ａにはユーザ表としてテーブルＡ、制御対象キーとしてキー１の制御情報が登録され、更新ログ格納手段１１３ａには通番３４として、非同期更新制御表１０３ａのテーブルＡキー１の制御情報を削除するための更新ログが格納される。
【００６４】
その後、制御手段１０２が通番３２の更新ログを読み込むと、この更新ログはテーブルＡキー２に対する更新ログであり、非同期更新制御表１０３ａには該当する制御情報が登録されていないので、この更新ログはレプリカデータベース１０１のテーブルＡに反映される。次に通番３３の更新ログを読み込むと、この更新ログはテーブルＡキー１に対する更新ログであり、非同期更新制御表１０３ａには該当する制御情報が登録されているため、この更新内容はレプリカデータベース１０１のテーブルＡには反映されず破棄される。通番３３まで処理が完了した時点で、図８の（４）の状態になる。
【００６５】
その後、通番３４の更新ログを読み込むと、非同期更新制御表１０３ａのテーブルＡキー１の制御情報を削除する内容であるため、該当する制御情報を削除する。これにより図８（４）の状態となる。テーブルＡのキー１のレコードの制御情報が削除されたため、新たにこのレコードの制御情報が登録されるまでに発生したテーブルＡのキー１のレコードの更新ログはレプリカデータベース１０１に反映される。
【００６６】
［効果の説明］本実施形態のレプリケーションシステムにおいて、マスタデータベース１１１への任意の更新に対して、同期型または非同期型レプリケーションのどちらでレプリカデータベース１０１へレプリケーションするかを、更新単位で選択することができる。これにより、例えば次のようなデータベースシステムを構築することが可能である。
【００６７】
本実施形態における発明を適用したデータベースシステムでは、通常のイベントのトランザクションでは、非同期型レプリケーションでマスタデータベースを更新することでトランザクションのスループット低下を抑えられる。一方、重要なイベントのトランザクションが発生した場合に同期型レプリケーションでマスタデータベースを更新することで、重要なイベントのトランザクションは確実にレプリカデータベースに反映させて、確実なバックアップを取ることが可能である。
【００６８】
また、レコードを追加してからレコードを最終データ状態に更新するまで、途中経過を随時更新していくようなデータを扱うデータベースシステムにおいて、レコード追加時と最終データ状態への更新時には同期型レプリケーションを使用し、途中経過の更新は非同期型レプリケーションを使用することで、レコード追加と最終データ更新のタイミングでのマスタデータベースとレプリカデータベースのデータ遅延状況を抑え、途中経過更新時はスループット低下を抑えることが可能である。
【００６９】
［第三の実施形態］次に、本発明を航空管制システムに適用した例を説明する。図９は第一の実施形態における他のデータベース１１から第一のデータベース１にレプリケーションされる表及びデータの例である。
【００７０】
本航空管制システムは、飛行中の航空機の位置情報を逐次更新するシステムである。図９を参照すると、本システムは、データベース内の表に、各航空機と対応する主キーと、特定の地点を通過した時刻を示す通過時刻と、取得した位置情報とを列として持つ。
【００７１】
本システムでは、位置情報の更新は非同期型レプリケーション、通過時刻の更新は同期型レプリケーションで行われる。位置情報の更新は以下の点で非同期型レプリケーションによる更新が適しているといえる。第一に、位置情報の更新は大量に発生する点、第二に、一部の位置情報のデータが欠損しても、すぐに新しい更新がなされる点である。一方、特定位置の通過時刻は特定位置を通過した時にのみ更新されるデータであるため、同期型レプリケーションで更新される。このように、同一レコード内で、データの更新頻度や重要度が異なるカラムがある場合に、本発明が適用できる。
【００７２】
［第四の実施形態］次に、第一の実施形態における情報処理システム１０の変形例として、図１０に示す情報処理システム２００´´、２００´´´を説明する。第四の実施形態では、１つのレプリカデータベースを備える情報処理システムを複数（２つ）有する点で、第一、第二の実施形態と構成が異なる。図１０、１１は、第四の実施形態におけるレプリケーションシステム２００の構成を示すブロック図である。ここで、情報処理システム２００´及び２００´´は第二の実施形態と同様であり、情報処理システム２００´´´は、マスタデータベース１１１の２つめのレプリカデータベース１０１´を備える。
【００７３】
まず、第四の実施形態と第二の実施形態との構成における差異を説明する。図１０を参照すると、更新ログ送信手段１０５ａは更新ログ受信手段１０５ｂと更新ログ受信手段１０５ｃの両方に更新ログを送信する。レプリカデータベース１０１´が、同期型・非同期型レプリケーションを併用して更新される場合は、図１０のように、情報処理システム２００´、２００´´は同様の構成となる。一方、レプリカデータベース１０１´が、レプリカデータベース１０１ことなり、非同期型レプリケーションのみで更新される場合、図１１を参照すると、情報処理システムに２００´´´に、非同期更新制御表が無い構成となる。
【００７４】
次に、第四の実施形態と第二の実施形態との動作における差異を説明する。レプリカデータベース１０１´も同期型・非同期型レプリケーションを併用して更新される場合、同期型レプリケーション処理における処理完了応答を受信する際に、制御手段１０２および制御手段１０２´の両方から処理完了の応答を受信してから、次の処理を行う。一方、レプリカデータベース１０１´が非同期型レプリケーションのみで更新される場合は、まずレプリカデータベース１０１を同期的に更新する際に、同じ更新内容を非同期型レプリケーションで処理する更新ログとして登録する。その際、制御情報の削除を含む更新ログの前に、前述の更新ログを登録する。レプリカデータベース１０１には、同期型レプリケーションと同じ更新内容の非同期型レプリケーションの更新ログが届くため、制御情報による制御が必要である。この場合、レプリカデータベース１０１´の制御手段１０２´は、制御情報の削除を含む更新ログに対する処理は何も行わない。
【００７５】
このようにレプリカデータベースを増やすことで、システムの耐障害性がさらに向上する。なお、レプリカデータベースをさらに増やした場合も、同じ要領で各種手段および表を合わせて増やすことで対応が可能である。
【００７６】
次に、２つめのレプリカデータベースに対しては全て非同期型レプリケーションを行う場合について説明する。同期型レプリケーションを行う必要のある更新であっても、１つのレプリカデータベースに対してレプリケーションできていれば十分であるといったシステムを構築する場合に有効である。同期型レプリケーション処理の際に、同期型レプリケーションを行うレプリカデータベースの更新ログ反映手段だけから処理完了応答を受け取ればいいので、全てのレプリカデータベースに対して同期型レプリケーションを行う場合に比べて、スループットが向上する。
【００７７】
２つめのレプリカデータベースに対しては全て非同期型レプリケーションを行う場合の構成例を図１１に示す。２つめのバックアップシステムである情報処理システム２００´´´のレプリカデータベース１０１´に対してレプリケーション処理を行う手段として、更新ログ受信手段１０５ｂと同様の処理を行う更新ログ受信手段１０５ｃと、更新ログ格納手段１１３ｂと同様に更新ログを格納するための更新ログ格納手段１１３ｃと、制御手段１０２と同様の処理を行う制御手段１０２´を配置する。レプリカデータベース１０１´に対しては非同期型レプリケーションしか行わないため、非同期更新制御表は必要ない。
【００７８】
この構成において、実施例から下記の点を変更することで、両方のレプリカデータベースに対してレプリケーションを行うことができる。
【００７９】
同期型レプリケーション処理において、図４のｓｔｅｐ８で示している、更新ログ生成手段１１２ａが非同期更新制御表１０３ａの制御情報を削除するための更新ログを更新ログ格納手段１１３ｂに格納するときに、同期型レプリケーション処理対象の更新ログも合わせて格納する。これにより、同期型レプリケーションを選択した際の更新内容を、非同期型レプリケーションによってレプリカデータベース１０１に反映することができる。ただし更新ログを格納する際は、制御手段１０２が制御情報の削除処理の更新内容を最後に読み込むような順番となるように更新内容を格納する。これにより、制御手段１０２で同期型レプリケーションを行った更新が二重に反映されないようにする。
【００８０】
同期型レプリケーション処理を行わない制御手段１０２´は、非同期更新制御表が存在しないので、非同期更新制御表に関する処理は行わない。つまり、更新ログから非同期更新制御表の制御情報削除の更新内容を取得すると、それに対する処理は何も行わない。また、更新ログ反映時は非同期更新制御表に制御情報がないとみなして、全ての更新ログを反映する。
【００８１】
これにより、１つ目のレプリカデータベースでは同期型レプリケーションと非同期型レプリケーションが選択でき、２つ目のレプリカデータベースでは非同期レプリケーションのみ行うような構成をとることができる。
【００８２】
［その他の実施形態］上記の実施形態では、更新単位である１トランザクションごとに同期型、非同期型レプリケーションを切り替えられる例を説明した。しかし、以下のように、１トランザクション内で同期型、非同期型レプリケーションを併用することは可能であり、上述した実施形態と同様の効果を得ることが可能である。
【００８３】
以下、第二の実施形態の構成を例に図３を参照して説明する。１トランザクション内の複数の更新において、同期型レプリケーションを指定された更新は同期型レプリケーションで処理する。また、非同期型レプリケーションを指定された更新は、非同期型レプリケーションで処理する。ここで、同期型レプリケーションで処理する場合、非同期更新制御表１０３ａの削除情報を有する更新ログは、後の非同期型レプリケーションの更新ログに含めることも可能である。
【００８４】
ただし、１トランザクション内に同期型レプリケーションの更新と非同期型レプリケーションの更新が混在している場合、以下の問題が生じる。すなわち、非同期型レプリケーションの更新がレプリカデータベース１０１へ反映されるまでは、レプリカデータベース１０１で原子性（Atomicity）が保たれない状態となる。このため、原子が保たれない状態を許容できるような場合に限り、本実施形態を適用することができる。
【００８５】
また、トランザクションごとに更新ログを生成する都合上、同期型レプリケーション後から非同期型レプリケーションの更新を行う場合には、同期型レプリケーション処理の完了待ちが発生する。具体的には、まず、同期型の更新を含む更新ログが制御手段１０２に送信され、レプリカデータベース１０１への反映が完了し、更新ログ生成手段１１２ａに反映した旨の通知がなされる。次に、更新ログ生成手段１１２ａは、前述の同期型の更新に関する制御情報を削除する削除情報と非同期型の更新の内容とを含む更新ログを更新ログ格納手段１１３ａに登録する。
【００８６】
このため、レプリカデータベース１０１の更新確定を待たないため早く処理が完了できるという非同期型レプリケーションのメリットが損なわれてしまう。このため、特別な理由がない限りは、１トランザクション内の更新は同期型か非同期型かどちらか一方に統一することが望ましい。
【００８７】
上記の実施形態では、同期型及び非同期型レプリケーションを組み合わせた場合について説明したが、同期型及び準同期型レプリケーションを組み合わせた場合でも、本発明を適用することができる。ここで準同期型レプリケーションでは、図３を参照すると、更新ログが更新ログ格納手段１１３ｂに格納されたことを確認し、次の更新処理に移る。更新ログ格納手段１１３ｂに格納された更新ログは、非同期でレプリカデータベース１０１に反映される。
【００８８】
上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
［付記１］第二のシステムだけのクレーム
第一のデータベースと、
ログ反映手段と、
制御情報記憶部と、を備え、
前記ログ反映手段は、通信路を介して受信した他のデータベース内のデータの更新内容を表す更新ログのうち、第一の更新ログを前記第一のデータベース内の第一のデータに反映させ、かつ前記第一のデータを表す制御情報を制御情報記憶部に記憶させる第一の制御と、前記更新ログのうち、第二の更新ログの更新内容が前記第一のデータに対する更新内容か否かを前記制御情報に基づいて判断し、前記第一のデータと異なるデータの更新内容である場合に前記第二の更新ログの更新内容を前記第一のデータベースに反映させる第二の制御とを行う、情報処理システム。
［付記２］
付記１に記載の情報処理システムにおいて、
制御情報削除手段をさらに備え、
前記制御情報削除手段は、前記制御情報記憶部に所定期間記憶された前記制御情報を削除する、情報処理システム。
［付記３］
付記１または２に記載の情報処理システムであって、
前記第一の更新ログは同期型レプリケーションによって反映される更新ログであり、前記第二の更新ログは、非同期型または準同期型レプリケーションによって反映される更新ログである、情報処理システム。
［付記４］
付記３に記載の情報処理システムであって、
前記制御情報削除手段は、第三の更新ログを読み込んで、前記制御情報を削除する処理を実行し、
前記第三の更新ログは、前記第一の更新ログに伴って生じ、非同期型または準同期型レプリケーションによって反映される更新ログである、情報処理システム。
［付記５］
付記１から４のいずれかに記載の情報システムであって、
前記ログ反映手段は、前記第二の更新ログの更新内容が前記第一のデータに対する更新ログであると判断した場合、前記第二の更新ログの更新内容を破棄する、情報処理システム。
［付記６］
付記１から５のいずれかに記載の情報処理システムであって、
前記ログ反映手段は、前記第二の更新ログを更新ログ記憶部から読みだし、前記第二の制御を行う、情報処理システム。
［付記７］
付記６に記載の情報処理システムであって、
前記第二の更新ログは、更新ログ受信手段によって受信され、前記更新ログ記憶部に出力される、情報処理システム。
［付記８］
付記１から６のいずれかに記載の情報処理システムであって、
前記第一のログ及び前記第二のログはレコードイメージを含む、情報処理システム。
［付記９］
付記１から８のいずれかに記載の情報処理システムであって、
前記ログ反映手段が複数のデータベースに対し、前記第一の制御及び前記第二の制御を行う、情報処理システム。
［付記１０］
付記１から８のいずれかに記載の情報処理システムであって、
前記第一のデータベースと、前記ログ反映手段と、前記制御情報記憶部と、前記制御情報削除手段と、の組が複数ある、情報処理システム。
［付記１１］方法
第一のデータベースを第二のデータベースへレプリケーションするレプリケーションシステムにおいて、
前記第一のデータベースの第一の更新を受信し、前記第一の更新を前記第二のデータベースに適用し、前記第一の更新が適用された第一のデータを示す制御情報を制御情報記憶部に記憶させる第一のステップと、
前記第一のデータベースの第二の更新を受信し、前記第二の更新を更新情報記憶部に記憶させ、前記第二の更新の更新内容が前記第一のデータに対する更新か否かを前記制御情報に基づいて判断する第二のステップと、
を有する情報処理方法。
［付記１２］
前記制御情報が、前記制御情報記憶部に所定期間記憶された後削除される第三のステップをさらに有する、付記１１記載の情報処理方法。
［付記１３］
前記第二のステップにおいて、前記制御手段が前記第二の更新の更新内容が前記制御情報に示される前記データに対する更新であると判断すると、前記第二の更新の更新内容を破棄する、付記１１または１２に記載の情報処理方法。
［付記１４］
前記第三のステップにおいて、前記第一の更新ログの発生に伴って生成される前記制御情報を削除する処理を受信し、実行する、付記１１から１３のいずれかに記載の情報処理方法。
［付記１５］
第一の制御手段と、前記第一の制御手段によって更新される第一のデータベースと、前記第一の制御手段によって前記第一のデータベースの更新内容を表す更新ログが記憶される第一の更新情報記憶部と、を有する第一のシステムと、
第二の制御手段と、前記更新ログが記憶され、前記第二の制御手段が前記更新ログを読み込む第二の更新情報記憶部と、前記第二の更新情報記憶部から読み込んだ前記更新ログに基づいて、または前記第一のデータベースが同期的に更新された際に前記第一の制御手段から受信した前記更新ログに基づいて、前記第二の制御手段によって更新される第二のデータベースと、前記第二のデータベースが同期的に更新された際に、前記第二のデータベース内の同期的に更新されたデータが前記第二の制御手段によって記憶される同期更新記憶部と、を有する第二のシステムと、を備え、
前記第二の更新情報記憶部は非同期的に前記更新ログを取得し、前記第二の制御手段は、前記第二の更新情報記憶部から読み込んだ前記更新ログの更新内容に基づいて前記第二のデータベースを更新する際に、前記同期更新記憶部の前記同期的に更新されたデータを参照し、更新の要否を判断する、情報処理システム。
【００８９】
但し、本発明は、上述の実施の形態に限定されず、要旨を逸脱しない範囲で当業者により適宜変更され得る。
【符号の説明】
【００９０】
１    第一のデータベース
１´  第二のデータベース
２    ログ反映手段
３    制御情報記憶部
４    制御情報削除手段
５    通信路
１０    情報処理システム
１１    他のデータベース
１０１、１０１´    レプリカデータベース
１０２    制御手段
１０３    記憶部
１０３ａ    非同期更新制御表
１０５ａ    更新ログ送信手段
１０５ｂ、１０５ｃ    更新ログ受信手段
１１１    マスタデータベース
１１２    アプリケーション
１１２ａ    更新ログ生成手段
１１３ａ，１１３ｂ、１１３ｃ    更新ログ格納手段
２００    レプリケーションシステム
２００´，２００´´、２００´´´    情報処理システム
【図１】
0006443070.tif 000002
【図２】
0006443070.tif 000003
【図３】
0006443070.tif 000004
【図４】
0006443070.tif 000005
【図５】
0006443070.tif 000006
【図６】
0006443070.tif 000007
【図７】
0006443070.tif 000008
【図８】
0006443070.tif 000009
【図９】
0006443070.tif 000010
【図１０】
0006443070.tif 000011
【図１１】
0006443070.tif 000012
【図１２】
0006443070.tif 000013
【図１３】
0006443070.tif 000014