(57)【特許請求の範囲】
【請求項１】
フロントシステム側データベースを有するフロントシステムと、前記フロントシステム側データベースがレプリケーションされるバックアップシステム側データベースを有するバックアップシステムと、を備え、
前記フロントシステムは、前記フロントシステム側データベース内のデータに対する同一のトランザクション処理に対応する複数の更新ログに、当該同一のトランザクション処理に対応する更新ログであることを表す同一トランザクション情報をそれぞれ関連付けて記憶する更新ログ格納手段と、前記更新ログと共に当該更新ログに関連付けられた前記同一トランザクション情報を前記バックアップシステムに送信する更新ログ送信手段と、を備えると共に、
前記バックアップシステムは、前記同一トランザクション情報に基づいて同一のトランザクション処理に対応する前記複数の更新ログをまとめて前記バックアップシステム側データベースに反映する更新ログ反映手段を備え、
前記フロントシステムの前記更新ログ格納手段は、前記フロントシステム側データベース内におけるデータの単位を表すレコードが同一のものに対応する前記更新ログを、同一の処理系列に属するよう振り分けると共に、当該更新ログに登録通番を関連付けて記憶する、
情報処理システム。
【請求項２】
請求項１に記載の情報処理システムであって、
前記フロントシステムの前記更新ログ格納手段は、前記更新ログに、当該更新ログが生成された順番を表す前記登録通番を関連付けて記憶し、
前記フロントシステムの前記更新ログ送信手段は、前記更新ログと共に当該更新ログに関連付けられた前記登録通番を前記バックアップシステムに送信し、
前記バックアップシステムの前記更新ログ反映手段は、前記登録通番に基づいて前記更新ログが生成された順番に前記更新ログを前記バックアップシステム側データベースに反映する、
情報処理システム。
【請求項３】
請求項１又は２に記載の情報処理システムであって、
前記フロントシステムの前記更新ログ格納手段は、前記同一のトランザクション処理に対応する前記複数の更新ログに、当該同一のトランザクション処理に対応する他の更新ログを特定する情報を前記同一トランザクション情報としてそれぞれ関連付けて記憶する、
情報処理システム。
【請求項４】
請求項３に記載の情報処理システムであって、
前記フロントシステムの前記更新ログ格納手段は、前記同一のトランザクション処理に対応する前記複数の更新ログのうち１つの特定の更新ログに、当該同一のトランザクション処理に対応する他の更新ログを全て特定する情報を前記同一トランザクション情報として関連付けて記憶し、前記他の更新ログに、前記特定の更新ログを特定する情報を前記同一トランザクション情報として関連付けて記憶する、
情報処理システム。
【請求項５】
請求項３又は４に記載の情報処理システムであって、
前記バックアップシステムの前記更新ログ反映手段は、前記同一トランザクション情報に基づいて、同一のトランザクション処理に対応する前記複数の更新ログの全てが、前記フロントシステムから送信されて前記バックアップシステムにて受信された後に、前記複数の更新ログをまとめて前記バックアップシステム側データベースに反映する、
情報処理システム。
【請求項６】
バックアップシステムが有するバックアップシステム側データベースにレプリケーションされるフロントシステム側データベースを有すると共に、
前記フロントシステム側データベース内のデータに対する同一のトランザクション処理に対応する複数の更新ログに、当該同一のトランザクション処理に対応する更新ログであることを表す同一トランザクション情報をそれぞれ関連付けて記憶する更新ログ格納手段と、
前記更新ログと共に当該更新ログに関連付けられた前記同一トランザクション情報を前記バックアップシステムに送信する更新ログ送信手段と、
を備え、
前記更新ログ格納手段は、前記フロントシステム側データベース内におけるデータの単位を表すレコードが同一のものに対応する前記更新ログを、同一の処理系列に属するよう振り分けると共に、当該更新ログに登録通番を関連付けて記憶する、
フロントシステム。
【請求項７】
バックアップシステムが有するバックアップシステム側データベースにレプリケーションされるフロントシステム側データベースを有するフロントシステムに、
前記フロントシステム側データベース内のデータに対する同一のトランザクション処理に対応する複数の更新ログに、当該同一のトランザクション処理に対応する更新ログであることを表す同一トランザクション情報をそれぞれ関連付けて記憶する更新ログ格納手段と、
前記更新ログと共に当該更新ログに関連付けられた前記同一トランザクション情報を前記バックアップシステムに送信する更新ログ送信手段と、
を実現させるプログラムであり、
前記更新ログ格納手段は、前記フロントシステム側データベース内におけるデータの単位を表すレコードが同一のものに対応する前記更新ログを、同一の処理系列に属するよう振り分けると共に、当該更新ログに登録通番を関連付けて記憶する、
プログラム。
【請求項８】
フロントシステム側データベースを有するフロントシステムと、前記フロントシステム側データベースがレプリケーションされるバックアップシステム側データベースを有するバックアップシステムと、を備えた情報処理システムにて、
前記フロントシステムが、前記フロントシステム側データベース内のデータに対する同一のトランザクション処理に対応する複数の更新ログに、当該同一のトランザクション処理に対応する更新ログであることを表す同一トランザクション情報をそれぞれ関連付けて記憶し、前記更新ログと共に当該更新ログに関連付けられた前記同一トランザクション情報を前記バックアップシステムに送信し、
前記バックアップシステムが、前記同一トランザクション情報に基づいて同一のトランザクション処理に対応する前記複数の更新ログをまとめて前記バックアップシステム側データベースに反映すると共に、
前記フロントシステムが、前記フロントシステム側データベース内におけるデータの単位を表すレコードが同一のものに対応する前記更新ログを、同一の処理系列に属するよう振り分けると共に、当該更新ログに登録通番を関連付けて記憶する、
情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システムにかかり、特に、フロントシステム内のデータベースをバックアップシステムにレプリケーションする機能を有する情報処理システムに関する。
【背景技術】
【０００２】
現用系として稼働するフロントシステムと待機系であるバックアップシステムとを備えた情報処理システムでは、フロントシステムの障害発生時にバックアップシステムへの切り替えを速やかに実施する必要がある。そして、切り替え時間短縮のためには、バックアップシステム側のデータベースを、できるだけフロントシステム側のデータベースに対応して最新化した状態で待機する必要がある。ところが、フロントシステム内のデータベースの更新から、バックアップシステム内のデータベースへの反映までのタイムラグが大きい場合には、フロントシステムの業務に影響を与える、という問題が生じていた。
【０００３】
これに対して、特許文献１では、フロントシステム側での更新内容をバックアップシステムに転送し、同様の更新処理を実行して追随することにより、フロントシステムのデータベースとバックアップシステムのデータベースとの間でタイムラグを小さくすることが行われている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−３２７９８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した特許文献１のシステムでは、バックアップシステム側の更新処理をシーケンシャルにおこなうため、大規模システムにおいては、フロントシステムのデータ更新をキャッチアップすることができなくなる。すると、システムダウン時のフロントシステムとバックアップシステムのデータベース間の差分が大きくなり、システムの信頼性が低下する、という問題が生じる。
【０００６】
このため、本発明の目的は、上述した課題である、フロントシステムとバックアップシステムとの間におけるデータベースの差分が大きくなることによる信頼性の低下、を解決することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成すべく、本発明の一形態である情報処理システムは、
フロントシステム側データベースを有するフロントシステムと、前記フロントシステム側データベースがレプリケーションされるバックアップシステム側データベースを有するバックアップシステムと、を備え、
前記フロントシステムは、前記フロントシステム側データベース内のデータに対する同一のトランザクション処理に対応する複数の更新ログに、当該同一のトランザクション処理に対応する更新ログであることを表す同一トランザクション情報をそれぞれ関連付けて記憶する更新ログ格納手段と、前記更新ログと共に当該更新ログに関連付けられた前記同一トランザクション情報を前記バックアップシステムに送信する更新ログ送信手段と、を備えると共に、
前記バックアップシステムは、前記同一トランザクション情報に基づいて同一のトランザクション処理に対応する前記複数の更新ログをまとめて前記バックアップシステム側データベースに反映する更新ログ反映手段を備え、
前記フロントシステムの前記更新ログ格納手段は、前記フロントシステム側データベース内におけるデータの単位を表すレコードが同一のものに対応する前記更新ログを、同一の処理系列に属するよう振り分けると共に、当該更新ログに登録通番を関連付けて記憶する、
という構成をとる。
【０００８】
また、本発明の他の形態であるフロントシステムは、
バックアップシステムが有するバックアップシステム側データベースにレプリケーションされるフロントシステム側データベースを有すると共に、
前記フロントシステム側データベース内のデータに対する同一のトランザクション処理に対応する複数の更新ログに、当該同一のトランザクション処理に対応する更新ログであることを表す同一トランザクション情報をそれぞれ関連付けて記憶する更新ログ格納手段と、
前記更新ログと共に当該更新ログに関連付けられた前記同一トランザクション情報を前記バックアップシステムに送信する更新ログ送信手段と、
を備え、
前記更新ログ格納手段は、前記フロントシステム側データベース内におけるデータの単位を表すレコードが同一のものに対応する前記更新ログを、同一の処理系列に属するよう振り分けると共に、当該更新ログに登録通番を関連付けて記憶する、
という構成をとる。
【０００９】
また、本発明の他の形態であるプログラムは、
バックアップシステムが有するバックアップシステム側データベースにレプリケーションされるフロントシステム側データベースを有するフロントシステムに、
前記フロントシステム側データベース内のデータに対する同一のトランザクション処理に対応する複数の更新ログに、当該同一のトランザクション処理に対応する更新ログであることを表す同一トランザクション情報をそれぞれ関連付けて記憶する更新ログ格納手段と、
前記更新ログと共に当該更新ログに関連付けられた前記同一トランザクション情報を前記バックアップシステムに送信する更新ログ送信手段と、
を実現させるプログラムであり、
前記更新ログ格納手段は、前記フロントシステム側データベース内におけるデータの単位を表すレコードが同一のものに対応する前記更新ログを、同一の処理系列に属するよう振り分けると共に、当該更新ログに登録通番を関連付けて記憶する、
という構成をとる。
【００１０】
また、本発明の他の形態である情報処理方法は、
フロントシステム側データベースを有するフロントシステムと、前記フロントシステム側データベースがレプリケーションされるバックアップシステム側データベースを有するバックアップシステムと、を備えた情報処理システムにて、
前記フロントシステムが、前記フロントシステム側データベース内のデータに対する同一のトランザクション処理に対応する複数の更新ログに、当該同一のトランザクション処理に対応する更新ログであることを表す同一トランザクション情報をそれぞれ関連付けて記憶し、前記更新ログと共に当該更新ログに関連付けられた前記同一トランザクション情報を前記バックアップシステムに送信し、
前記バックアップシステムが、前記同一トランザクション情報に基づいて同一のトランザクション処理に対応する前記複数の更新ログをまとめて前記バックアップシステム側データベースに反映すると共に、
前記フロントシステムが、前記フロントシステム側データベース内におけるデータの単位を表すレコードが同一のものに対応する前記更新ログを、同一の処理系列に属するよう振り分けると共に、当該更新ログに登録通番を関連付けて記憶する、
という構成をとる。
【発明の効果】
【００１１】
本発明は、以上のように構成されることにより、フロントシステムとバックアップシステムとの間におけるデータベースの差分を小さくして、情報処理システムの信頼性の向上を図ることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明における情報処理システムの構成を示すブロック図である。
【図２】図１に開示した通番情報表の一例を示す図である。
【図３】図１に開示した更新ログ格納表の一例を示す図である。
【図４】図１に開示したフロントシステムの動作を示すフローチャートである。
【図５】図１に開示したバックアップシステムの動作を示すフローチャートである。
【図６】図１に開示した同期情報管理表の一例を示す図である。
【図７】図１に開示した同期情報管理表の一例を示す図である。
【図８】本発明の付記１における情報処理システムの構成を示すブロック図である。
【発明を実施するための形態】
【００１３】
＜実施形態１＞
本発明の第１の実施形態を、図１乃至図７を参照して説明する。図１乃至図３は、情報処理システムの構成を説明するための図であり、図４乃至図７は、情報処理システムの動作を説明するための図である。
【００１４】
［構成］
本実施形態における情報処理システムは、図１に示すように、フロントシステム側データベース（ＤＢ）１１を有するフロントシステム１０と、バックアップシステム側データベース（ＤＢ）２１を有するバックアップシステム２０と、がネットワークを介して接続されたシステムである。そして、フロントシステム１０は、現用系として稼働して所定のサービスを提供し、サービス提供に伴い更新されるフロントシステム側データベース１１内のデータを更新するシステムである。また、バックアップシステム２０は、フロントシステム１０が稼働中に待機系として待機し、フロントシステム１０の障害発生時などのサービス停止時に当該フロントシステム１０と切り替わってサービスを提供する、というシステムである。このため、情報処理システムは、後述するように、フロントシステム１０が有するフロントシステム側データベース１１を、バックアップシステム側データベース２１に反映する、という機能を有する。
【００１５】
具体的に、フロントシステム１０は、１台、あるいは、複数台のサーバコンピュータにて構成されている。そして、フロントシステム１０は、図１に示すように、装備された演算装置に、所定の記憶媒体に記憶されたプログラムが読み込まれることによって、所定のサービスを提供してフロントシステム側データベース１１を更新するアプリケーション１２と、当該アプリケーション１２と共に作動する更新ログ格納部１３（更新ログ格納手段）と、当該更新ログ格納部１３と共に作動する更新ログ送信部１６（更新ログ送信手段）と、が構築されている。
【００１６】
上記アプリケーション１２は、フロントシステム１０によるサービス提供を行うと共に、このサービス提供に伴って変更されるフロントシステム側データベース１１内のデータを更新する。なお、フロントシステム側データベース１１内におけるデータは、予め設定されたデータの単位毎に「レコード」を構成して記憶されており、当該「レコード」が複数記憶されていることとなる。
【００１７】
そして、上記更新ログ格納部１３は、上述したアプリケーション１２がフロントシステム側データベース１１を更新した契機で動作し、当該フロントシステム側データベース１１内のデータに対する更新内容を表す「更新ログ」を、更新ログ格納表１５に記憶する。このとき、更新ログ格納部１３は、フロントシステム側データベース１１内の更新対象となった所定単位のデータである「レコード」の予め設定された情報に基づいて、当該「レコード」の更新内容を表す「更新ログ」を、予め設定された複数の「処理系列」のうちのいずれかに振り分ける。特に、更新ログ格納部１３は、同一の「レコード」の更新内容を表す複数の「更新ログ」が生成された場合には、これら複数の「更新ログ」が全て同一の「処理系列」に属するよう振り分ける。
【００１８】
そして、更新ログ格納部１３は、「更新ログ」に登録通番を割り当てて、通番情報表１４を更新して記憶する。例えば、通番情報表１４は、図２に示すように、「処理系列」毎に、「登録通番」と「処理通番」とが記憶された１レコードを有する表である。そして、上記「登録通番」は、更新ログに対して振られる通番情報であり、更新ログを登録するごとに１ずつ増加する情報である。また、「処理通番」は、後述する更新ログ送信部１６やバックアップシステム２０側の更新ログ反映部２６にて、処理完了した通番情報である。
【００１９】
また、更新ログ格納部１３は、上述したように各処理系列に振り分けた「更新ログ」毎に１つのレコードを有する更新ログ格納表１５を更新して記憶する。例えば、更新ログ格納表１５は、図３に示すように、「更新ログ」に対して、当該更新ログを振り分けた「処理系例」と、上記「登録通番」と、が関連付けられている。
【００２０】
さらに、更新ログ格納部１３は、１つのトランザクション処理によってフロントシステム側データベース内の複数の「レコード」に対して更新が生じ、これらの処理内容を表す複数の「更新ログ」が複数の処理系列に振り分けられる場合には、当該複数の「更新ログ」のそれぞれに、同一のトランザクション処理に対応するものであることを表す情報（同一トランザクション情報）を関連付けて、更新ログ格納表１５に記憶する。例えば、本実施形態では、１つのトランザクション処理によって生じた各「更新ログ」に、同一トランザクション処理による他の「更新ログ」を特定する情報である「同期対象情報」を関連付けて、更新ログ格納表１５に記憶する。具体的に、同一トランザクション処理で３つの「更新ログ」が生成されたとすると、このうち１つの特定の「更新ログ」の「同期対象情報」には、他の２つの「更新ログ」を特定する情報を記憶し、これら他の２つの「更新ログ」の「同期対象情報」には、それぞれ上記特定の「更新ログ」を特定する情報を記憶する。
【００２１】
さらに、更新ログ格納部１３は、「更新ログ」に、処理実行対象であるか否かを表す「処理実行」情報を関連付けて、更新ログ格納表１５に記憶する。なお、更新ログ格納表１５については、後の動作説明時にさらに詳述する。
【００２２】
また、上記更新ログ送信部１６は、上述した処理系列毎に存在し、各処理系列に振り分けられた各「更新ログ」を処理系列毎に並列に、バックアップシステム２０に送信する。このとき、更新ログ送信部１６は、通番情報表１４及び更新ログ格納表１５に格納された情報、つまり、「更新ログ」と共に、当該更新ログに関連付けられた、「登録通番」や「処理通番」、「処理実行」情報、「同期対象情報」を送信する。
【００２３】
次に、バックアップシステム２０について詳述する。バックアップシステム２０は、１台、あるいは、複数台のサーバコンピュータにて構成されている。そして、バックアップシステム２０は、図１に示すように、装備された演算装置に、所定の記憶媒体に記憶されたプログラムが読み込まれることによって、更新ログ受信部２２と、更新ログ反映部２６（更新ログ反映手段）と、が構築されている。
【００２４】
上記更新ログ受信部２２は、上述したフロントシステム１０の更新ログ送信部１６に対応して処理系列毎に存在し、当該処理系列毎に並列に受信した「更新ログ」のデータを、バックアップシステム２０側の更新ログ格納表２５に格納し、通番管理表２４を更新する。
【００２５】
上記更新ログ反映部２６は、処理系列毎に存在し、上記通番情報表２４及び更新ログ格納表２５を参照して、受信した「更新ログ」のデータを元にバックアップシステム側データベース２１を更新する。そして、処理系列毎に存在する更新ログ反映部２６は、それぞれ同期情報管理表２７を有している。この同期情報管理表２７は、同一トランザクション処理に対応する複数の処理系列に振り分けられた複数の「更新ログ」を、まとめてバックアップシステム側データベース２１に反映するための同期情報を管理している。つまり、更新ログ反映部２６は、上述した更新ログ格納表１５，２５に含まれる各「更新ログ」に関連付けられた「同期対象情報」を参照して、バックアップシステム２０側でも同一トランザクションで複数の「更新ログ」を更新することで、トランザクションの原子性を保証する。なお、バックアップシステム側データベース２１に「更新ログ」を反映するときの処理については、後の動作説明時に詳述する。
【００２６】
［動作］
次に、上述した情報処理システムの動作を、図４乃至図７を参照して説明する。まず、フロントシステム１０では、フロントシステム側データベース１１内の「レコード」に対して更新が生じると（図４のステップＳ１）、更新ログ格納部１３が、更新ログの更新対象テーブル情報や、データベース１１内のレコードのキーの情報をもとに、「更新ログ」の処理系列を決定する（図４のステップＳ２）。なお、処理系列は、並列処理する単位であるため、例えば４多重で実行したい場合には、各「更新ログ」が、「１」〜「４」のいずれかの処理系列に振り分けられるよう決定する。そして、処理系列決定のルールとしては、フロントシステム側データベース１１内の同一「レコード」に対する「更新ログ」は、必ず同じ処理系列に属するように振り分けることとする。各「更新ログ」の処理系列が決定したら、通番情報表１４を参照して更新ログに登録通番を割り当て、通番情報表１４および更新ログ格納表１５を更新する。
【００２７】
ここで、更新ログ格納表１５の更新について詳述する。「処理実行」の列は、「更新ログ」が処理実行対象の場合に「YES」、「更新ログ」が同期対象情報の場合に「NO」となる。例えば、１トランザクション処理で１つの処理系列にだけ更新が発生した場合には、図３の１行目に示すように、処理実行＝「YES」、同期対象情報＝「なし」、が「更新ログ」に関連付けられたレコードを追加する。１トランザクション処理で複数の処理系列に更新が発生した場合には、処理実行をおこなう任意の処理系列を１つだけ決定し、その処理系列には、図３の２行目に示すように、処理実行＝「YES」、同期対象情報＝「自処理系列以外に更新の発生した処理系列とその通番」、が「更新ログ」に関連付けられたレコードを追加する。そして、図３の８，１０行目に示すように、それ以外の処理系列には、処理実行＝「NO」、同期対象情報＝「処理実行する処理系列とその通番」、が「更新ログ」に関連付けられたレコードを追加する。
【００２８】
そして、更新ログ送信部１６は、更新ログ格納部１３によって格納されたフロントシステム１０の更新ログ格納表１５の情報を、バックアップシステム２０に送信する（図３のステップＳ３）。このとき、更新ログ送信部１６は、処理系列毎に並列に、各「更新ログ」の情報を送信する。
【００２９】
続いて、バックアップシステム２０側では、更新ログ受信部２２が、フロントシステム１０から受信した「更新ログ」を元に、バックアップシステム２０内の通番情報表２４および更新ログ格納表２５を更新する。そして、更新ログ反映部２６は、更新ログ格納表２５から「更新ログ」情報を取得し、バックアップシステム側データベース２１を更新して、フロントシステム１０とバックアップシステム２０の各データベース１１，２１内の情報を同期させる。
【００３０】
ここで、更新ログ反映部２６の動作を、図５を参照して詳述する。なお、更新ログ反映部２６は処理系列ごとに存在し、それぞれが図５に示すフローで処理を行う。
【００３１】
まず、更新ログ反映部２６は、通番情報表１４を監視し（ステップＳ１１でＮｏ）、いずれかの「処理系列」の「登録通番」が「処理通番」より大きくなるまで待機する（ステップＳ１２）。なお、「登録通番」は、「更新ログ」に対して振られる通番情報であり、「処理通番」は、更新ログ反映部２６にて処理完了した通番である。従って、「登録通番」が「処理通番」よりも大きくなる場合とは、バックアップシステム側データベース２１に反映していない「更新ログ」が、バックアップシステム２０に存在していることを意味している。
【００３２】
そして、「登録通番」が「処理通番」よりも大きくなり、更新処理を行う「更新ログ」の発生を検出すると（ステップ１３、又は、ステップＳ１１でＹｅｓ）、更新ログ格納表２５から、バックアップシステム２０側での処理が「未処理」であり、「登録通番」が最小の「更新ログ」を取得する（ステップＳ１４）。その後、取得した「更新ログ」の「処理実行」、「同期対象」の情報から、以下の３パターンに分岐する。
【００３３】
（１）処理実行＝「NO」の場合（ステップＳ１５でＮｏ）
この場合は、同期対象の処理実行データが処理完了になるまで待機する必要がある。同期対象から処理系列と通番を取得し、同期対象処理系列に対して待機中の通知を行う（ステップＳ１９）。同期対象処理系列の対象通番の処理が完了したら（ステップＳ２０）、完了通知を受信するので（ステップＳ２１）、自処理系列の処理通番をカウントアップして（ステップＳ２２）、次のデータ処理に遷移する。
【００３４】
（２）処理実行＝「YES」、同期対象＝「なし」の場合（ステップＳ１５でＹｅｓ，ステップＳ１６でＮｏ）
同期対象がなく、処理実行データなので、単独で処理可能である。更新ログの反映処理を行い（ステップＳ１７）、自処理系列の処理通番をカウントアップして（ステップＳ１８）、次のデータ処理に遷移する。なお、このとき、「更新ログ」が生成された順序を表している「登録通番」が最小のものから順番に処理されるため、処理系列単位では、更新内容がシーケンシャルに実行される。その結果、各データベース１１，２１内の同一レコードに対する更新順序は保障されることとなる。
【００３５】
（３）処理実行＝「YES」、同期対象＝「あり」の場合（ステップＳ１５でＹｅｓ，ステップＳ１６でＹｅｓ）
同期情報管理表２７にデータを登録し（ステップＳ２３）、同期対象データの処理状況を確認する。同期未のデータが存在する場合（ステップＳ２４でＹｅｓ）、同期対象情報を受信するまで待機する（ステップＳ２５）。そして、同期対象情報を受信する度に（ステップＳ２６）、同期未データを同期済データに移動して更新する（ステップＳ２７）。その後、待機中の処理通番に同期未のデータがなくなると（ステップＳ２４でＮｏ）、更新ログ反映処理をおこなう（ステップＳ２８）。処理完了したら、同期対象の処理実行＝「NO」の処理系列が待機中なので、それらの処理系列に対して処理完了を通知する（ステップＳ２９）。その後、同期情報管理表からデータを削除し（ステップＳ３０）、自処理系列の処理通番をカウントアップして（ステップＳ３１）、次のデータ処理に遷移する。
【００３６】
ここで、上述した更新ログ反映処理の具体例を、同期対象データの処理実行順ごとの同期情報管理表２７の遷移例を表す図６及び図７を参照して説明する。なお、図６及び図７では、データは、図３の例と同じく、（処理系列−登録通番）の形式で表した「更新ログ」（１−１２）、（２−９）、（３−２０）が同一トランザクションに対応するものであり、これらを同期する場合を表している。
【００３７】
まず、図６は、各「更新ログ」が（１−１２）、（２−９）、（３−２０）の順で実行された場合の例である。「更新ログ」（１−１２）を実行した時点では、同期情報管理表２７には、処理系列＝「１」、登録通番＝「１２」のレコードが存在しないので、図６の上段に示すようにかかるレコードを追加し、実行データ＝「あり」、同期未データに同期対象情報を全て（２−９）、（３−２０）を持つ。
【００３８】
その後、「更新ログ」（２−９）が実行され、その同期情報を受信すると、図６の中段に示すように、同期未データから同期済データに（２−９）を移動する。さらにその後、「更新ログ」（３−２０）が実行され、その同期情報を受信すると、図６の下段に示すように、同期未データから同期済データに（３−２０）を移動する。これにより、同期未データがなくなると、１つのトランザクションに対応する全ての「更新ログ」を、バックアップシステム側データベース２１に反映する処理を実行する。
【００３９】
次に、図７は、各「更新ログ」が（２−９）、（１−１２）、（３−２０）の順で実行された場合の例である。「更新ログ」（２−９）を実行した時点では、同期情報管理表２７には、（２−９）の「同期対象情報」であり「処理実行」が「YES」である処理系列＝「１」、登録通番＝「１２」のレコードが存在しないので、図７の上段に示すようにかかるレコードを追加し、実行データ＝「なし」、同期済みデータ＝「２−９」を追加する。
【００４０】
その後、「更新ログ」（１−１２）が実行されると、既に同期情報管理表２７にレコードが存在するため、図７の中段に示すように、実行データ＝「あり」、同期未データに、同期対象情報のうち、同期済に入っていない「更新ログ」（３−２０）を追加して、（１−１２）のレコードを更新する。その後、「更新ログ」（３−２０）の同期情報を受信すると、図７の下段に示すように、同期未データから同期済データに（３−２０）を移動する。これにより、同期未データがなくなると、１つのトランザクションに対応する全ての「更新ログ」を、バックアップシステム側データベース２１に反映する処理を実行する。
【００４１】
以上のように、本発明における情報処理システムによると、更新ログを、データベース内のレコードのキーを元に、複数の処理系列に分割して並列転送、並列更新することで、更新ログ反映によるレプリケーションの処理を高速化することができると共に、任意の時点でのバックアップシステムとフロントシステムのデータ差異を最小化することができる。そして、処理系列単位では、更新処理はシーケンシャルに実行されるため、データベース内の同一レコードに対する更新順序は保証される。その結果、データベースの信頼性の向上を図ることができる。
【００４２】
また、複数の処理系列にまたがるトランザクションが実行された場合、バックアップシステム側でも同一トランザクションで更新するように、処理系列間で同期制御を行っているため、トランザクションの原子性が保証される。その結果、データベースのさらなる信頼性の向上を図ることができる。なお、トランザクションごとに更新するデータ範囲が小さいほど多重化による効果も大きくなるため、全てをシーケンシャルに実行する場合と比較して、（１／平均多重度）程度の時間に短縮することが可能となる。
【００４３】
そして、上述した情報処理システムは、大量のデータ更新がおこなわれる、フロント−バックアップ構成のシステムで、フロントシステムでの障害発生から、バックアップシステムの稼働開始までを短時間でおこないたいシステムで極めて有効である。特に、大量のユーザ情報を持つオンラインシステムで、ユーザごとの情報を更新するトランザクションが大量発生する場合など、トランザクションごとの更新対象データが独立している場合には、さらに有効である。
【００４４】
＜付記＞
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明における情報処理システムの構成の概略を、図８を参照して説明する。但し、本発明は、以下の構成に限定されない。
【００４５】
（付記１）
フロントシステム側データベース１１０を有するフロントシステム１００と、前記フロントシステム側データベース１１０がレプリケーションされるバックアップシステム側データベース２１０を有するバックアップシステム２００と、を備え、
前記フロントシステム１００は、前記フロントシステム側データベース１１０内のデータの更新内容を表す更新ログを予め設定された複数の処理系列のうちいずれかに振り分けて、当該振り分けた処理系列を特定する処理系列情報を更新ログに関連付けて記憶する更新ログ格納手段１０１と、前記処理系列情報に基づいて前記各処理系列に振り分けられた前記更新ログをそれぞれ前記処理系列毎に並列に前記バックアップシステム２００に送信する更新ログ送信手段１０２と、を備えると共に、
前記バックアップシステム２００は、前記フロントシステム１００から送信された前記処理系列毎の前記更新ログを前記バックアップシステム側データベース２１０に反映する更新ログ反映手段２０１を備え、
前記フロントシステム１００の前記更新ログ格納手段１０１は、前記フロントシステム側データベース１１０内におけるデータの単位を表すレコードが同一のものに対応する前記更新ログを、同一の前記処理系列に属するよう振り分ける、
情報処理システム。
【００４６】
（付記２）
付記１に記載の情報処理システムであって、
前記フロントシステムの前記更新ログ格納手段は、前記更新ログに、当該更新ログが生成された順番を表す順番情報を関連付けて記憶し、
前記フロントシステムの前記更新ログ送信手段は、前記更新ログと共に当該更新ログに関連付けられた前記順番情報を前記バックアップシステムに送信し、
前記バックアップシステムの前記更新ログ反映手段は、前記順番情報に基づいて前記更新ログが生成された順番に前記更新ログを前記バックアップシステム側データベースに反映する、
情報処理システム。
【００４７】
（付記３）
付記１又は２に記載の情報処理システムであって、
前記フロントシステムの前記更新ログ格納手段は、前記フロントシステム側データベース内のデータに対する同一のトランザクション処理に対応する複数の前記更新ログに、当該同一のトランザクション処理に対応する更新ログであることを表す同一トランザクション情報をそれぞれ関連付けて記憶し、
前記フロントシステムの前記更新ログ送信手段は、前記更新ログと共に当該更新ログに関連付けられた前記同一トランザクション情報を前記バックアップシステムに送信し、
前記バックアップシステムの前記更新ログ反映手段は、前記同一トランザクション情報に基づいて同一のトランザクション処理に対応する前記複数の更新ログをまとめて前記バックアップシステム側データベースに反映する、
情報処理システム。
【００４８】
（付記４）
付記３に記載の情報処理システムであって、
前記フロントシステムの前記更新ログ格納手段は、前記同一のトランザクション処理に対応する前記複数の更新ログに、当該同一のトランザクション処理に対応する他の更新ログを特定する情報を前記同一トランザクション情報としてそれぞれ関連付けて記憶する、
情報処理システム。
【００４９】
（付記５）
付記４に記載の情報処理システムであって、
前記フロントシステムの前記更新ログ格納手段は、前記同一のトランザクション処理に対応する前記複数の更新ログのうち１つの特定の更新ログに、当該同一のトランザクション処理に対応する他の更新ログを全て特定する情報を前記同一トランザクション情報として関連付けて記憶し、前記他の更新ログに、前記特定の更新ログを特定する情報を前記同一トランザクション情報として関連付けて記憶する、
情報処理システム。
【００５０】
（付記６）
付記４又は５に記載の情報処理システムであって、
前記バックアップシステムの前記更新ログ反映手段は、前記同一トランザクション情報に基づいて、同一のトランザクション処理に対応する前記複数の更新ログの全てが、前記フロントシステムから送信されて前記バックアップシステムにて受信された後に、前記複数の更新ログをまとめて前記バックアップシステム側データベースに反映する、
情報処理システム。
【００５１】
（付記７）
バックアップシステムが有するバックアップシステム側データベースにレプリケーションされるフロントシステム側データベースを有すると共に、
前記フロントシステム側データベース内のデータの更新内容を表す更新ログを予め設定された複数の処理系列のうちいずれかに振り分けて、当該振り分けた処理系列を特定する処理系列情報を更新ログに関連付けて記憶する更新ログ格納手段と、
前記処理系列情報に基づいて前記各処理系列に振り分けられた前記更新ログをそれぞれ前記処理系列毎に並列に前記バックアップシステムに送信する更新ログ送信手段と、
を備え、
前記更新ログ格納手段は、前記フロントシステム側データベース内におけるデータの単位を表すレコードが同一のものに対応する前記更新ログを、同一の前記処理系列に属するよう振り分ける、
フロントシステム。
【００５２】
（付記８）
付記７に記載の情報処理システムであって、
前記更新ログ格納手段は、前記フロントシステム側データベース内のデータに対する同一のトランザクション処理に対応する複数の前記更新ログに、当該同一のトランザクション処理に対応する更新ログであることを表す同一トランザクション情報をそれぞれ関連付けて記憶し、
前記更新ログ送信手段は、前記更新ログと共に当該更新ログに関連付けられた前記同一トランザクション情報を前記バックアップシステムに送信する、
フロントシステム。
【００５３】
（付記９）
バックアップシステムが有するバックアップシステム側データベースにレプリケーションされるフロントシステム側データベースを有するフロントシステムに、
前記フロントシステム側データベース内のデータの更新内容を表す更新ログを予め設定された複数の処理系列のうちいずれかに振り分けて、当該振り分けた処理系列を特定する処理系列情報を更新ログに関連付けて記憶する更新ログ格納手段と、
前記処理系列情報に基づいて前記各処理系列に振り分けられた前記更新ログをそれぞれ前記処理系列毎に並列に前記バックアップシステムに送信する更新ログ送信手段と、
を実現させると共に、
前記更新ログ格納手段は、前記フロントシステム側データベース内におけるデータの単位を表すレコードが同一のものに対応する前記更新ログを、同一の前記処理系列に属するよう振り分ける、
プログラム。
【００５４】
（付記１０）
フロントシステムが有するフロントシステム側データベースがレプリケーションされるバックアップシステム側データベースを有すると共に、
前記フロントシステムが、前記フロントシステム側データベース内のデータの更新内容を表す更新ログを予め設定された複数の処理系列のうちいずれかに振り分ける際に、前記フロントシステム側データベース内におけるデータの単位を表すレコードが同一のものに対応する前記更新ログを同一の前記処理系列に属するよう振り分け、当該振り分けた処理系列を特定する処理系列情報を更新ログに関連付けて記憶し、前記処理系列情報に基づいて前記各処理系列に振り分けられた前記更新ログをそれぞれ前記処理系列毎に並列に前記バックアップシステムに送信する場合に、
前記フロントシステムから送信された前記処理系列毎の前記更新ログを前記バックアップシステム側データベースに反映する更新ログ反映手段を備えた、
バックアップシステム。
【００５５】
（付記１１）
付記１０に記載のバックアップシステムであって、
前記フロントシステムが、前記フロントシステム側データベース内のデータに対する同一のトランザクション処理に対応する複数の前記更新ログに、当該同一のトランザクション処理に対応する更新ログであることを表す同一トランザクション情報をそれぞれ関連付けて記憶して、前記更新ログと共に当該更新ログに関連付けられた前記同一トランザクション情報を前記バックアップシステムに送信する場合に、
前記更新ログ反映手段は、前記同一トランザクション情報に基づいて同一のトランザクション処理に対応する前記複数の更新ログをまとめて前記バックアップシステム側データベースに反映する、
バックアップシステム。
【００５６】
（付記１２）
フロントシステムが有するフロントシステム側データベースがレプリケーションされるバックアップシステム側データベースを有するバックアップシステムに、
前記フロントシステムが、前記フロントシステム側データベース内のデータの更新内容を表す更新ログを予め設定された複数の処理系列のうちいずれかに振り分ける際に、前記フロントシステム側データベース内におけるデータの単位を表すレコードが同一のものに対応する前記更新ログを同一の前記処理系列に属するよう振り分け、当該振り分けた処理系列を特定する処理系列情報を更新ログに関連付けて記憶し、前記処理系列情報に基づいて前記各処理系列に振り分けられた前記更新ログをそれぞれ前記処理系列毎に並列に前記バックアップシステムに送信する場合に、
前記フロントシステムから送信された前記処理系列毎の前記更新ログを前記バックアップシステム側データベースに反映する更新ログ反映手段、
を実現させるためのプログラム。
【００５７】
（付記１３）
フロントシステム側データベースを有するフロントシステムと、前記フロントシステム側データベースがレプリケーションされるバックアップシステム側データベースを有するバックアップシステムと、を備えた情報処理システムにて、
前記フロントシステムが、前記フロントシステム側データベース内のデータの更新内容を表す更新ログを予め設定された複数の処理系列のうちいずれかに振り分けて、当該振り分けた処理系列を特定する処理系列情報を更新ログに関連付けて記憶し、前記処理系列情報に基づいて前記各処理系列に振り分けられた前記更新ログをそれぞれ前記処理系列毎に並列に前記バックアップシステムに送信し、
前記バックアップシステムが、前記フロントシステムから送信された前記処理系列毎の前記更新ログを前記バックアップシステム側データベースに反映すると共に、
前記フロントシステムが前記更新ログを振り分ける際に、前記フロントシステム側データベース内におけるデータの単位を表すレコードが同一のものに対応する前記更新ログを、同一の前記処理系列に属するよう振り分ける、
情報処理方法。
【００５８】
（付記１４）
付記１３に記載の情報処理方法であって、
前記フロントシステムが前記更新ログを振り分ける際に、前記フロントシステム側データベース内のデータに対する同一のトランザクション処理に対応する複数の前記更新ログに、当該同一のトランザクション処理に対応する更新ログであることを表す同一トランザクション情報をそれぞれ関連付けて記憶し、
前記フロントシステムが前記更新ログを送信する際に、前記更新ログと共に当該更新ログに関連付けられた前記同一トランザクション情報を前記バックアップシステムに送信し、
前記バックアップシステムが、前記更新ログを前記バックアップシステム側データベースに反映する際に、前記同一トランザクション情報に基づいて同一のトランザクション処理に対応する前記複数の更新ログをまとめて前記バックアップシステム側データベースに反映する、
情報処理方法。
【符号の説明】
【００５９】
１０  フロントシステム
１１  フロントシステム側データベース（ＤＢ）
１２  アプリケーション
１３  更新ログ格納部
１４  通番情報表
１５  更新ログ格納表
１６  更新ログ送信部
２０  バックアップシステム
２１  バックアップシステム側データベース（ＤＢ）
２２  更新ログ受信部
２４  通番情報表
２５  更新ログ格納表
２６  更新ログ反映部
２７  同期情報管理表
１００  フロントシステム
１０１  更新ログ格納手段
１０２  更新ログ送信手段
１１０フロントシステム側データベース
２００  バックアップシステム
２０１  更新ログ反映手段
２１０  バックアップシステム側データベース
【図１】
0005843025.tif 000002
【図２】
0005843025.tif 000003
【図３】
0005843025.tif 000004
【図４】
0005843025.tif 000005
【図５】
0005843025.tif 000006
【図６】
0005843025.tif 000007
【図７】
0005843025.tif 000008
【図８】
0005843025.tif 000009