(57)【要約】【課題】トランザクション処理時間を増大させることなくレプリケーション機能をデータベース装置に付加できるようにするデータベースシステム運用方法，データベースシステム，データベース装置及びバックアッププログラムを、提供する。【解決手段】業務データベース装置Ｍを制御する制御装置１０は、従来の物理ログに相当する情報に対して主キー情報を対応付けて、それをリカバリログとして、リカバリログファイル１４に保存する。【選択図】図３
2007272648.tif 000002
【特許請求の範囲】
【請求項１】
何れかの業務端末装置からネットワークを介して指定された命令に基づいて記憶領域内の記憶内容が変更される第１のデータベース装置と、その第１のデータベース装置のバックアップとして同じ記憶内容を記憶するための第２のデータベース装置とからなるデータベースシステムを運用するための方法であって、
前記第１のデータベース装置が、
前記各命令による処理がなされるたびに、その命令の内容と、その処理により前記記憶領域内で変更された記憶内容とを対応付けた論理ログを生成して記憶するとともに、
前記各命令による処理がなされるたびに、前記記憶領域内におけるその処理により記憶内容が変更された箇所の位置情報と、その処理による変更後の記憶内容と、その処理の種別とを対応付けた物理ログを生成し、
前記各物理ログが生成されるたびに、その物理ログに対応する命令を特定する命令特定情報をその物理ログに対応付けて記憶する
ことを特徴とするデータベースシステム運用方法。
【請求項２】
前記第１のデータベース装置が、更に、前記論理ログを前記第２のデータベース装置に送信する
ことを特徴とする請求項１記載のデータベースシステム運用方法。
【請求項３】
何れかの業務端末装置からネットワークを介して指定された命令に基づいて記憶領域内の記憶内容が変更される第１のデータベース装置と、その第１のデータベース装置のバックアップとして同じ記憶内容を記憶するための第２のデータベース装置とからなるデータベースシステムであって、
前記第１のデータベース装置が、
前記各命令による処理がなされるたびに、その命令の内容と、その処理により前記記憶領域内で変更された記憶内容とを対応付けた論理ログを、生成する論理ログ生成部，
前記論理ログ生成部が生成した論理ログを記憶する論理ログ記憶部，
前記各命令による処理がなされるたびに、前記記憶領域内におけるその処理により記憶内容が変更された箇所の位置情報と、その処理による変更後の記憶内容と、その処理の種別とを対応付けた物理ログを生成する物理ログ生成部，及び、
前記物理ログ生成部が前記物理ログを生成するたびに、その物理ログに対応する命令を特定する命令特定情報をその物理ログに対応付けて記憶する物理ログ記憶部
を備える
ことを特徴とするデータベースシステム。
【請求項４】
何れかの業務端末装置からネットワークを介して指定された命令に基づいて記憶領域内の記憶内容が変更されるデータベース装置であって、
前記各命令による処理がなされるたびに、その命令の内容と、その処理により前記記憶領域内で変更された記憶内容とを対応付けた論理ログを、生成する論理ログ生成部，
前記論理ログ生成部が生成した論理ログを記憶する論理ログ記憶部，
前記各命令による処理がなされるたびに、前記記憶領域内におけるその処理により記憶内容が変更された箇所の位置情報と、その処理による変更後の記憶内容と、その処理の種別とを対応付けた物理ログを生成する物理ログ生成部，及び、
前記物理ログ生成部が前記物理ログを生成するたびに、その物理ログに対応する命令を特定する命令特定情報をその物理ログに対応付けて記憶する物理ログ記憶部
を備えることを特徴とするデータベース装置。
【請求項５】
コンピュータを、
何れかの業務端末装置からネットワークを介して指定された命令に基づいて第１の記憶装置の記憶領域内の記憶内容を変更するデータ記憶手段，
前記各命令による処理がなされるたびに、その命令の内容と、その処理により前記第１の記憶装置の記憶領域内で変更された記憶内容とを対応付けた論理ログを、生成する論理ログ生成手段，
前記論理ログ生成部が生成した論理ログを第２の記憶装置に記憶する論理ログ記憶手段，
前記各命令による処理がなされるたびに、前記第１の記憶装置の記憶領域内におけるその処理により記憶内容が変更された箇所の位置情報と、その処理による変更後の記憶内容と、その処理の種別とを対応付けた物理ログを生成する物理ログ生成手段，及び、
前記物理ログ生成手段が前記物理ログを生成するたびに、その物理ログに対応する命令を特定する命令特定情報をその物理ログに対応付けて第３の記憶装置に記憶する物理ログ記憶手段
として機能させる
ことを特徴とするバックアッププログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のデータベース装置からなるデータベースシステムを運用する方法，そのような運用方法を実現するデータベースシステム，そのようなデータベースシステムを構成するデータベース装置，そのようなデータベース装置としてコンピュータを動作させるバックアッププログラムに、関する。
【背景技術】
【０００２】
周知のように、日々の業務で発生する大量の業務データを検索自在に保管するため、データベース装置が広く利用されている。また、自然災害や停電やシステム障碍による情報損失を未然に防ぐため、通常使用されるデータベース装置とは別に、そのデータベース装置のレプリカを遠隔地の副センタに用意して、そのレプリカに業務データのバックアップを取ることが行われている。さらに、このようなレプリカを、主センタのデータベース装置が使用不能となった場合のセカンダリとして動作できるようにしておくことにより、主センタのデータベース装置が使用不能となってから復旧するまでの間、副センタのデータベース装置を運用対象として業務を継続することができるようになる。
【０００３】
以上のようなデータベースシステムにおいて、バックアップのためレプリカの業務データを日々更新する場合、複写元のデータベース装置内の業務データがレプリカに全件複写されることはなく（フルバックアップ）、通常、複写元のデータベース装置になされた更新に係る差分情報がネットワーク経由でレプリカに引き渡される（差分バックアップ）。ここで、レプリカに引き渡される差分情報として、運用対象のデータベース装置が自己のリカバリ用に録っている物理ログを利用する方法と、更新に係る操作内容の記録である論理ログを別途生成して利用する方法とがある。
【０００４】
前者の物理ログは、データベース装置の記憶領域内の物理的な位置を示す位置情報とその位置での更新後のデータとを主に対応付けた情報となっている。その一方、後者の論理ログは、ＳＱＬ［Structured Query Language］文イメージと更新後のデータとを主に対応付けた情報となっている。前者の物理ログは、記憶領域の物理的な位置情報からなることから、この物理ログを使ってレプリカの業務データを更新するためには、レプリカを運用対象と全く同じ構成のデータベース装置として構築せねばならない。しかしながら、そのようなデータベース装置を構築するのは難しいため、一般的には、後者の論理ログを差分情報として利用する方法が採られている。
【０００５】
図８は、従来の複写元データベース装置におけるリカバリログ（物理ログ）と差分ログ（論理ログ）をともに生成して保存する機能についての機能構成図である。
【０００６】
図８に示されるように、データベース装置は、トランザクションを実行するための機能９１，リカバリログを一時記憶するためのリカバリログＩ／Ｏバッファ９２，リカバリログを保存するためのリカバリログファイル９３，リカバリログＩ／Ｏバッファ９２からリカバリログファイル９３へリカバリログを書き出すための機能９４，差分ログを一時記憶するための差分ログＩ／Ｏバッファ９５，差分ログを保存するための差分ログファイル９６，差分ログＩ／Ｏバッファ９５から差分ログファイル９６へリカバリログを書き出すための機能９７を、含んでいる。
【０００７】
トランザクションを実行するための機能９１は、図示せぬアプリケーションから、トランザクションを構成するＳＱＬ文のうち、更新（ＵＰＤＡＴＥ），削除（ＤＥＬＥＴＥ），挿入（ＩＮＳＥＲＴ）について処理を実行する場合、リカバリログ（物理ログ）を組み立てて、そのリカバリログをリカバリログＩ／Ｏバッファ９２に書き込む処理を行い（ステップＳ９０１）、続いて、差分ログ（論理ログ）を組み立てて、その差分ログを差分ログＩ／Ｏバッファ９５に書き込む処理を行う（ステップＳ９０２）。なお、図９は、差分ログを差分ログＩ／Ｏバッファ９５に書き込む処理（ステップＳ９０２）の流れを具体的に示す図である。図９に示されるように、この機能９１は、差分ログを組み立る処理を行い（ステップＳ９２１）、差分ログＩ／Ｏバッファ９５への書き込みが可能であれば（ステップＳ９２２；ＹＥＳ）、差分ログを差分ログＩ／Ｏバッファ９５に書き込む処理を行う（ステップＳ９２３）。一方、この機能９１は、差分ログＩ／Ｏバッファ９５への書き込みが不可能であれば（ステップＳ９２２；ＮＯ）、差分ログファイル書出処理タスク９７に対し、差分ログＩ／Ｏバッファ９５から差分ログファイル９６への差分ログの書き出しを依頼する処理を行い（ステップＳ９２４）、差分ログＩ／Ｏバッファ９５に空ができた後に（ステップＳ９２５；ＹＥＳ）、差分ログを差分ログＩ／Ｏバッファ９５に書き込む処理を行う（ステップＳ９２２；ＹＥＳ，Ｓ９２３）。
【０００８】
また、トランザクションを実行するための機能９１は、図示せぬアプリケーションから、確定（ＣＯＭＭＩＴ）のＳＱＬ文について処理を実行する場合、まず、差分ログファイル書出処理タスク９７に対し、差分ログＩ／Ｏバッファ９５から差分ログファイル９６への差分ログの書き出しを依頼する処理を行う（ステップＳ９０３）。なお、図１０は、差分ログファイル書出処理タスク９７に対する書出依頼処理（ステップＳ９０３）の流れを具体的に示す図である。この図１０に示されるように、この機能９１は、差分ログファイル書出処理タスク９７に対し、差分ログＩ／Ｏバッファ９５に最後に書き込んだ差分ログを差分ログファイル９６へ書き出すよう依頼し（ステップＳ９３１）、書き出しの完了が通知されると（ステップＳ９３２；ＹＥＳ）、処理を次のステップに進める。
【０００９】
続いて、当該機能９１は、確定制御についてのリカバリログを組み立ててリカバリログＩ／Ｏバッファ９２に書き込み、リカバリログファイル書出処理タスク９４に対し、リカバリログＩ／Ｏバッファ９２からリカバリログファイル９３への全てのリカバリログの書き出しを依頼する（ステップＳ９０４）。その後、当該機能９１は、確定制御についての差分ログを組み立てて差分ログＩ／Ｏバッファ９５に書き込み、差分ログファイル書出処理タスク９７に対し、差分ログＩ／Ｏバッファ９５から差分ログファイル９６への当該確定制御についての差分ログの書き出しを依頼する（ステップＳ９０５）。
【００１０】
なお、図１１は、差分ログファイル書出処理の流れを示す図である。差分ログファイル書出処理タスク９７は、何れかの機能から処理の依頼を受けたとき（ステップＳ９７１；ＹＥＳ）、その依頼が終了であれば（ステップＳ９７２；ＹＥＳ）、処理を終了し、その依頼が書き出しであれば（ステップＳ９７２；ＮＯ）、差分ログＩ／Ｏバッファ９５から差分ログファイル９６へ差分ログを書き出す処理を行い（ステップＳ９７３）、差分ログＩ／Ｏバッファ９５に空領域を生成する処理を行って（ステップＳ９７４）、書き出しの完了を通知する（ステップＳ９７５）。
【００１１】
つまり、従来の複写元のデータベース装置において、レプリケーションのための機能が組み込まれていると、（１）リカバリログファイル９３にリカバリログを書き込んでトランザクションのログ保存を確定させる前に、更新（ＵＰＤＡＴＥ），削除（ＤＥＬＥＴＥ），挿入（ＩＮＳＥＲＴ）の差分ログのみについて差分ログファイル９６への書き込みが保証（確定）され、且つ、（２）トランザクションのリカバリログの保存が確定された後に、確定制御の差分ログのみの差分ログファイル９６への書き込みが保証（確定）されるようになっている。
【００１２】
これらステップＳ９０３乃至Ｓ９０５のような確定（ＣＯＭＭＩＴ）の方法は、ステップＳ９０３とステップＳ９０４との間でデータベース装置が異常終了したときにおいてリカバリログの保存が確定される前に差分ログの保存が確定されるのを防止するため、尚且つ、ステップＳ９０４とステップＳ９０５との間でデータベース装置が異常終了したときでもリカバリログファイル９３に保存されているリカバリログから確定制御の差分ログがリカバリできることから、採用されている。
【００１３】
【特許文献１】特開２００３−０１５９２６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１４】
しかしながら、前述したような確定（ＣＯＭＭＩＴ）の方法によると、ステップＳ９０３においてＩ／Ｏ処理待ちがあるとともに、このステップＳ９０３と同様の処理が実行されるステップＳ９０５においてもＩ／Ｏ処理待ちがある。これらのＩ／Ｏ処理待ち時間は、トランザクション処理時間を増大させるので、単位時間当たりのトランザクション処理数が減少してしまう。このため、高いトランザクション処理性能が要求される高トラフィックシステムに対し、当該方法によるレプリケーション機能を採用しにくいという問題があった。
【００１５】
本発明は、前述したような従来技術の有する問題点に鑑みてなされたものであり、その課題は、トランザクション処理時間を増大させることなくレプリケーション機能をデータベース装置に付加できるようにすることにある。
【課題を解決するための手段】
【００１６】
上記の課題を解決するために案出されたデータベースシステム運用方法は、何れかの業務端末装置からネットワークを介して指定された命令に基づいて記憶領域内の記憶内容が変更される第１のデータベース装置と、その第１のデータベース装置のバックアップとして同じ記憶内容を記憶するための第２のデータベース装置とからなるデータベースシステムを運用するための方法であって、前記第１のデータベース装置が、前記各命令による処理がなされるたびに、その命令の内容と、その処理により前記記憶領域内で変更された記憶内容とを対応付けた論理ログを生成して記憶するとともに、前記各命令による処理がなされるたびに、前記記憶領域内におけるその処理により記憶内容が変更された箇所の位置情報と、その処理による変更後の記憶内容と、その処理の種別とを対応付けた物理ログを生成し、前記各物理ログが生成されるたびに、その物理ログに対応する命令を特定する命令特定情報をその物理ログに対応付けて記憶することを、特徴としている。
【００１７】
このように、物理ログを保存する際、その物理ログに命令特定情報を対応付けておくと、物理ログに対応する論理ログが特定できるようになるので、物理ログにて記憶領域内の記憶内容をリカバリできるとともに、論理ログをもリカバリできるようになる。然も、物理ログの保存の確定と論理ログの保存の確定とを同期させる必要がなくなるため、物理ログと論理ログを非同期で保存させることができるようになる。この結果、前述したようなＩ／Ｏ処理待ちが発生せず、トランザクション処理時間を増大させることもなくなる。
【００１８】
また、上記の課題を解決するために案出されたデータベースシステムは、何れかの業務端末装置からネットワークを介して指定された命令に基づいて記憶領域内の記憶内容が変更される第１のデータベース装置と、その第１のデータベース装置のバックアップとして同じ記憶内容を記憶するための第２のデータベース装置とからなるデータベースシステムであって、前記第１のデータベース装置が、前記各命令による処理がなされるたびに、その命令の内容と、その処理により前記記憶領域内で変更された記憶内容とを対応付けた論理ログを、生成する論理ログ生成部，前記論理ログ生成部が生成した論理ログを記憶する論理ログ記憶部，前記各命令による処理がなされるたびに、前記記憶領域内におけるその処理により記憶内容が変更された箇所の位置情報と、その処理による変更後の記憶内容と、その処理の種別とを対応付けた物理ログを生成する物理ログ生成部，及び、前記物理ログ生成部が前記物理ログを生成するたびに、その物理ログに対応する命令を特定する命令特定情報をその物理ログに対応付けて記憶する物理ログ記憶部を備えることを、特徴としている。
【００１９】
従って、このデータベースシステムは、前述した本発明のデータベース運用方法を実現したデータベースシステムと同等に機能することとなる。
【００２０】
また、上記の課題を解決するために案出されたデータベース装置は、何れかの業務端末装置からネットワークを介して指定された命令に基づいて記憶領域内の記憶内容が変更されるデータベース装置であって、前記各命令による処理がなされるたびに、その命令の内容と、その処理により前記記憶領域内で変更された記憶内容とを対応付けた論理ログを、生成する論理ログ生成部，前記論理ログ生成部が生成した論理ログを記憶する論理ログ記憶部，前記各命令による処理がなされるたびに、前記記憶領域内におけるその処理により記憶内容が変更された箇所の位置情報と、その処理による変更後の記憶内容と、その処理の種別とを対応付けた物理ログを生成する物理ログ生成部，及び、前記物理ログ生成部が前記物理ログを生成するたびに、その物理ログに対応する命令を特定する命令特定情報をその物理ログに対応付けて記憶する物理ログ記憶部を備えることを、特徴としている。
【００２１】
従って、このデータベース装置は、前述した本発明のデータベースシステムを構成するデータベース装置と同等に機能することとなる。
【００２２】
また、上記の課題を解決するために案出されたバックアッププログラムは、コンピュータを、何れかの業務端末装置からネットワークを介して指定された命令に基づいて第１の記憶装置の記憶領域内の記憶内容を変更するデータ記憶手段，前記各命令による処理がなされるたびに、その命令の内容と、その処理により前記第１の記憶装置の記憶領域内で変更された記憶内容とを対応付けた論理ログを、生成する論理ログ生成手段，前記論理ログ生成部が生成した論理ログを第２の記憶装置に記憶する論理ログ記憶手段，前記各命令による処理がなされるたびに、前記第１の記憶装置の記憶領域内におけるその処理により記憶内容が変更された箇所の位置情報と、その処理による変更後の記憶内容と、その処理の種別とを対応付けた物理ログを生成する物理ログ生成手段，及び、前記物理ログ生成手段が前記物理ログを生成するたびに、その物理ログに対応する命令を特定する命令特定情報をその物理ログに対応付けて第３の記憶装置に記憶する物理ログ記憶手段として機能させることを、特徴としている。
【００２３】
従って、このバックアッププログラムによれば、前述した本発明のデータベース装置と同等に機能する装置としてコンピュータを動作させることができることになる。
【発明の効果】
【００２４】
以上に説明したように、本発明によれば、トランザクション処理時間を増大させることなくレプリケーション機能をデータベース装置に付加できるようになる。
【発明を実施するための最良の形態】
【００２５】
次に、本発明を実施するための最良の形態について、添付図面を参照しながら、詳細に説明する。
【００２６】
先ず、本実施形態のデータベースシステムの構成について説明する。
【００２７】
図１は、本実施形態のデータベースシステムの構成図である。
【００２８】
図１に示されるように、本実施形態のデータベースシステムは、複数の業務端末装置Ｔと、主センタ内で業務データベース装置Ｍに接続されている制御装置１０と、副センタ内で業務データベース装置Ｓに接続されている制御装置２０とからなり、これら装置Ｔ，１０，２０は、ネットワークを介して互いに通信自在に接続されている。
【００２９】
このうち、業務端末装置Ｔは、ネットワークを介して制御装置１０，２０に各種のトランザクションの実行要求を送信するための装置であり、一般的なパーソナルコンピュータと、このパーソナルコンピュータを業務端末として動作させるための周知のソフトウエアとからなっている。
【００３０】
業務データベース装置Ｍ，Ｓは、何れも、前述した業務端末装置Ｔからの要求に基づいて制御装置１０，２０で実行された処理により得られる業務データを蓄積するための機能を備えた装置であり、一般的な汎用のコンピュータと、業務データが格納されるデータベーステーブルと、そのデータベーステーブルでの業務データの追加、削除、変更、検索を行う機能を実現するための周知のソフトウエアとからなっている。
【００３１】
制御装置１０，２０は、何れも、業務データベース装置Ｍ，Ｓへの業務データの入出力を制御するための装置である。これら制御装置１０，２０は、自己が管理する業務データベース装置Ｍ，Ｓを、動作モードに応じて、運用対象かバックアップ用レプリカの何れかとして動作させる機能を、有している。業務データベース装置を運用対象として動作させる場合、制御装置１０，２０は、業務端末装置Ｔからの要求を受けてトランザクションを実行し、その処理結果に応じて業務データベース装置内の業務データを更新したり、業務端末装置Ｔに処理結果に関する情報を通知したりする。一方、業務データベース装置をバックアップ用レプリカとして動作させる場合、制御装置１０，２０は、運用対象の業務データベース装置の制御装置と連携して、運用対象の業務データベース装置で行われた更新に係る情報を取得し、自己の業務データベース装置内の業務データに同じ更新を行う。
【００３２】
なお、本実施形態のデータベースシステムは、通常状態においては、主センタ内の業務データベース装置Ｍが運用対象として動作され、副センタ内の業務データベース装置Ｓがバックアップ用レプリカとして動作されるように、設定されている。また、本実施形態のデータベースシステムは、主センタ内の業務データベース装置Ｍが自然災害や停電やシステム障碍などにより使用不能となった状態においては、副センタ内の業務データベース装置Ｓが運用対象として動作されるように、設定されている。副センタは、自然災害等が両センタに同時に及ばないよう、主センタの遠隔地に設置されていてもよい。
【００３３】
図２は、通常状態における主センタ内の制御装置１０の構成図である。
【００３４】
図２に示されるように、制御装置１０を構成する汎用のコンピュータは、ストレージ１０ａ，ＣＰＵ［Central Processing Unit］１０ｂ，通信アダプタ１０ｃ，及び、ＤＲＡＭ［Dynamic Random Access Memory］１０ｄ等の周知なハードウエアを、内蔵している。そして、ストレージ１０ａには、業務端末装置Ｔと情報を遣り取りするための業務情報管理アプリケーションソフトウエア１１，業務データベース装置Ｍへの業務データの入出力を制御するための周知のデータベース制御モジュールプログラム１２，業務データベース装置Ｍ内の業務データのリカバリに使用するログ情報を生成するためのログ制御モジュールプログラム１３，及び、副センタの業務データベース装置Ｓの更新に用いるログ情報を生成するためのＤＢクローン生成モジュール１５，そのログ情報を副センタの制御装置２０に引き渡すための差分ログファイル送信モジュールプログラム１７が、インストールされている。これらソフトウエアやモジュールプログラムは、ＣＰＵ１０ｂによってストレージ１０ａから読み出されて、ＤＲＡＭ１０ｄに展開されることにより、実行される。
【００３５】
通常状態での運用対象側の制御装置１０では、業務情報管理アプリケーション１１は、業務端末装置Ｔからの要求を受けると、そのトランザクションに基づく業務データの追加、削除、変更、検索を、データベース制御モジュール１２と連携して、業務データベース装置Ｍに指示する。また、この業務情報管理アプリケーション１１は、業務データベース装置Ｍに対して行った更新のログ情報を生成し、ログ制御モジュール１３に引き渡す。ログ制御モジュール１３は、業務情報管理アプリケーション１１から受け取ったログ情報を一時保管する作業領域として、ログバッファを用意しており、このログバッファに一時保管されたログ情報を、リカバリログとしてリカバリログファイル１４に記録する。データベースクローン生成モジュール１５は、このログ制御モジュール１３内のログバッファのログ情報に基づいて、レプリカ側の業務データベース装置Ｓを更新するのに必要な情報である差分ログを生成し、その差分ログを差分ログファイル１６に記録する。差分ログファイル送信モジュール１７は、データベースクローン生成モジュール１５から差分ログファイル１６を受け取って、レプリカ側の制御装置２０に送信する。なお、通常状態における業務データベース装置Ｍは、前述したデータ記憶手段に相当している。
【００３６】
次に、リカバリログファイル１４と差分ログファイル１６を生成する処理について、より詳しく説明する。
【００３７】
図３は、各ログファイル１４，１６を生成する処理の説明に用いられる機能構成図である。
【００３８】
図３に示されるように、業務情報管理アプリケーション１１には、トランザクション処理タスク１１ａが含まれている。このトランザクション処理タスク１１ａは、業務データベース装置Ｍに対して行った更新のログ情報を生成する機能である。ここで生成されるログ情報には、トランザクションを構成するＳＱＬ［Structured Query Language］文の種別，更新（ＵＰＤＡＴＥ）や削除（ＤＥＬＥＴＥ）や挿入（ＩＮＳＥＲＴ）や確定（ＣＯＭＭＩＴ）や取消（ＲＯＬＬＢＡＣＫ）などのＳＱＬコマンド文イメージ，全てのトランザクションの中から各トランザクションを個別に識別するための識別情報であるトランザクションＩＤ［Identification］，業務データベース装置Ｍの記憶領域内におけるこのＳＱＬコマンドの実行により更新された後のその更新部分の記憶内容（更新後データ），複写先の業務データベース装置Ｓ内に保存される業務データの行を特定するための情報である主キー情報がある。
【００３９】
また、このトランザクション処理タスク１１ａは、このようなログ情報を生成するたびに、そのログ情報をログ制御モジュール１３内のリカバリログＩ／Ｏバッファ１３ａに書き込むとともに、リカバリログファイル書出処理タスク１４ａに対し、リカバリログＩ／Ｏバッファ１３ａからリカバリログファイル１４へのリカバリログの書き出しを依頼するようになっている。なお、図３では、書出依頼の依頼元と依頼先との関係が、波線の矢印で示されている。
【００４０】
図４は、そのリカバリログファイル書出処理の流れを示す図である。このリカバリログファイル書出処理タスク１４ａは、トランザクション処理タスク１１ａから書出依頼又は終了依頼が来まで待機し（ステップＳ１０１；ＮＯ）、終了依頼を受けると（ステップＳ１０１；ＹＥＳ，Ｓ１０２；終了）、図４に係る処理を終了する。一方、書出依頼を受けると（ステップＳ１０１；ＹＥＳ，Ｓ１０２；書出）、このリカバリログファイル書出処理タスク１４ａは、リカバリログＩ／Ｏバッファ１３ａ内からログ情報を読み出し、そのログ情報をリカバリログとしてリカバリログファイル１４へ記録する処理を行う（ステップＳ１０３）。
【００４１】
図５は、ここで生成されるリカバリログの一例を示す図である。
【００４２】
図５に示されるように、リカバリログは、「種別」，「トランザクションＩＤ」，「資源コード」，「ページ番号」，「位置」，「更新後データ」及び「主キー」のフィールドの値を対応付けた情報である。このうち、「種別」フィールドは、トランザクションを構成するＳＱＬ文の種別（挿入，更新，削除，確定など）を示す種別情報が記録されるフィールドである。また、「トランザクションＩＤ」フィールドは、トランザクションＩＤが記録されるフィールドである。また、「資源コード」，「ページ番号」及び「位置」フィールドは、物理位置に関連する情報を記録するフィールドである。具体的に説明すると、「資源コード」フィールドは、業務データベース装置Ｍ内の複数の論理ディスクのうち、その業務データが格納されている論理ディスクを識別するための情報である資源コードが記録されるフィールドである。「ページ番号」フィールドは、論理ディスク内の複数のページのうち、その業務データが格納されているページを識別するための識別情報であるページ番号が記録されるフィールドである。「位置」フィールドは、その業務データが記録されているページ内の位置を示す位置情報が記録されるフィールドである。なお、「種別」フィールドの値が「確定」や「取消」である場合、そのリカバリログは、業務データの実体がない制御ログであるので、「資源コード」，「ページ番号」，「位置」のフィールドは、空欄となる。「更新後データ」フィールドは、その記録位置にある更新後データが記録されるフィールドである。「主キー」フィールドは、主キー情報が記録されるフィールドである。但し、「種別」フィールドの値が「挿入」及び「確定」である場合、この「主キー」フィールドは、空欄となる。
【００４３】
なお、従来の業務情報管理アプリケーション１１及びログ制御モジュール１３は、図５に示される各フィールドのうちの「主キー」を除いたリカバリログを、生成していたが、本実施形態では、この「主キー」が各リカバリログに組み込まれている。
【００４４】
図４に示されるように、リカバリログファイル書出処理タスク１４ａは、リカバリログをリカバリログファイル１４へ書き出した後（ステップＳ１０３）、データベースクローン生成モジュール１５内の差分ログＩ／Ｏバッファコピー処理タスク１５ａに対し、リカバリログＩ／Ｏバッファ１３ａからデータベースクローン生成モジュール１５内の差分ログＩ／Ｏバッファ１５ｂへのログ情報のコピーを依頼して（ステップＳ１０４）、次の依頼があるまで待機する状態になる（ステップＳ１０１；ＮＯ）。なお、図３では、コピー依頼の依頼元と依頼先との関係が、波線の矢印で示されている。
【００４５】
図６は、差分ログＩ／Ｏバッファコピー処理の流れを示す図である。データベースクローン生成モジュール１５内の差分ログＩ／Ｏバッファコピー処理タスク１５ａは、リカバリログファイル書出処理タスク１４ａからコピー依頼又は終了依頼が来るまで待機し（ステップＳ２０１；ＮＯ）、終了依頼を受けると（ステップＳ２０１；ＹＥＳ，Ｓ２０２；終了）、図６に係る処理を終了する。一方、コピー依頼を受けると（ステップＳ２０１；ＹＥＳ，Ｓ２０２；コピー）、この差分ログＩ／Ｏバッファコピー処理タスク１５ａは、リカバリログＩ／Ｏバッファ１３ａ内からログ情報を読み出し、差分ログを組み立てて、その差分ログを差分ログＩ／Ｏバッファ１５ｂにコピーする処理を行う（ステップＳ２０３）。なお、ここで組み立てられる差分ログは、ＳＱＬ文の種別，ＳＱＬコマンド文イメージ，トランザクションＩＤ，更新後データ，主キー情報を含んでいるが、位置関連情報（資源コード，ページ番号，位置）については、送信データ量を低減させるため、除かれていても良い。そして、この差分ログＩ／Ｏバッファコピー処理タスク１５ａは、ログ情報を差分ログＩ／Ｏバッファ１５ｂへコピーした後（ステップＳ２０３）、データベースクローン生成モジュール１５内の差分ログファイル書出処理タスク１５ｃに対し、差分ログＩ／Ｏバッファ１５ｂから差分ログファイル１６への差分ログの書き出しを依頼して（ステップＳ２０４）、次の依頼があるまで待機する状態になる（ステップＳ２０１；ＮＯ）。なお、図３では、書出依頼の依頼元と依頼先との関係が、波線の矢印で示されている。
【００４６】
図７は、差分ログファイル書出処理の流れを示す図である。データベースクローン生成モジュール１５内の差分ログファイル書出処理タスク１５ｃは、差分ログＩ／Ｏバッファコピー処理タスク１５ａから書出依頼又は終了依頼が来るまで待機し（ステップＳ３０１；ＮＯ）、終了依頼を受けると（ステップＳ３０１；ＹＥＳ，Ｓ３０２；終了）、図７に係る処理を終了する。一方、書出依頼を受けると（ステップＳ３０１；ＹＥＳ，Ｓ３０２；書出）、この差分ログファイル書出処理タスク１５ｃは、差分ログＩ／Ｏバッファ１５ｂ内から差分ログを読み出し、その差分ログを差分ログファイル１６に記録する処理を行い（ステップＳ３０３）、次の依頼があるまで待機する状態になる（ステップＳ３０１；ＮＯ）。
【００４７】
従って、リカバリログファイル書出処理タスク１４ａは、前述した物理ログ生成部及び物理ログ生成手段に相当し、リカバリログファイル１４は、前述した物理ログ記憶部及び物理ログ記憶手段に相当している。また、差分ログファイル書出処理タスク１５ｃは、前述した論理ログ生成部及び論理ログ生成手段に相当し、差分ログファイル１６は、前述した論理ログ記憶部及び論理ログ記憶手段に相当している。
【００４８】
次に、本実施形態のデータベースシステムの作用及び効果について、説明する。
【００４９】
前述したように、本実施形態の制御装置１０では、リカバリログをリカバリログファイル１４に保存する際、そのリカバリログに主キー情報を組み込んでいる。このように、従来の物理ログに相当する情報に対して主キー情報を対応付けて、リカバリログとして保存しておくと、リカバリログに対応する差分ログが、その主キー情報から特定できるようになるので、制御装置１０や業務データベース装置Ｍが異常終了したときに、リカバリログにて業務データベース装置Ｍの記憶領域内の記憶内容（業務データ）をリカバリできるとともに、差分ログをもリカバリできるようになる。然も、リカバリログの書き込みの保証（確定）と差分ログの書き込みの保証（確定）のためにこれら処理を同期させるという必要がなくなるため、リカバリログと差分ログを非同期で書き出させることができるようになる（ステップＳ１０４，Ｓ２０１，Ｓ２０４，Ｓ３０１）。この結果、従来技術におけるＩ／Ｏ処理待ちが発生せず、トランザクション処理時間を増大させることがない。
【００５０】
（付記１）
何れかの業務端末装置からネットワークを介して指定された命令に基づいて記憶領域内の記憶内容が変更される第１のデータベース装置と、その第１のデータベース装置のバックアップとして同じ記憶内容を記憶するための第２のデータベース装置とからなるデータベースシステムを運用するための方法であって、
前記第１のデータベース装置が、
前記各命令による処理がなされるたびに、その命令の内容と、その処理により前記記憶領域内で変更された記憶内容とを対応付けた論理ログを生成して記憶するとともに、
前記各命令による処理がなされるたびに、前記記憶領域内におけるその処理により記憶内容が変更された箇所の位置情報と、その処理による変更後の記憶内容と、その処理の種別とを対応付けた物理ログを生成し、
前記各物理ログが生成されるたびに、その物理ログに対応する命令を特定する命令特定情報をその物理ログに対応付けて記憶する
ことを特徴とするデータベースシステム運用方法。
【００５１】
（付記２）
前記第１のデータベース装置が、更に、前記論理ログを前記第２のデータベース装置に送信する
ことを特徴とする請求項１記載のデータベースシステム運用方法。
【００５２】
（付記３）
前記第２のデータベース装置が、前記第１のデータベース装置から受信した前記論理ログに基づいて、記憶内容を更新する
ことを特徴とする付記２記載のデータベースシステム運用方法。
【００５３】
（付記４）
何れかの業務端末装置からネットワークを介して指定された命令に基づいて記憶領域内の記憶内容が変更される第１のデータベース装置と、その第１のデータベース装置のバックアップとして同じ記憶内容を記憶するための第２のデータベース装置とからなるデータベースシステムであって、
前記第１のデータベース装置が、
前記各命令による処理がなされるたびに、その命令の内容と、その処理により前記記憶領域内で変更された記憶内容とを対応付けた論理ログを、生成する論理ログ生成部，
前記論理ログ生成部が生成した論理ログを記憶する論理ログ記憶部，
前記各命令による処理がなされるたびに、前記記憶領域内におけるその処理により記憶内容が変更された箇所の位置情報と、その処理による変更後の記憶内容と、その処理の種別とを対応付けた物理ログを生成する物理ログ生成部，及び、
前記物理ログ生成部が前記物理ログを生成するたびに、その物理ログに対応する命令を特定する命令特定情報をその物理ログに対応付けて記憶する物理ログ記憶部
を備える
ことを特徴とするデータベースシステム。
【００５４】
（付記５）
何れかの業務端末装置からネットワークを介して指定された命令に基づいて記憶領域内の記憶内容が変更されるデータベース装置であって、
前記各命令による処理がなされるたびに、その命令の内容と、その処理により前記記憶領域内で変更された記憶内容とを対応付けた論理ログを、生成する論理ログ生成部，
前記論理ログ生成部が生成した論理ログを記憶する論理ログ記憶部，
前記各命令による処理がなされるたびに、前記記憶領域内におけるその処理により記憶内容が変更された箇所の位置情報と、その処理による変更後の記憶内容と、その処理の種別とを対応付けた物理ログを生成する物理ログ生成部，及び、
前記物理ログ生成部が前記物理ログを生成するたびに、その物理ログに対応する命令を特定する命令特定情報をその物理ログに対応付けて記憶する物理ログ記憶部
を備えることを特徴とするデータベース装置。
【００５５】
（付記６）
コンピュータを、
何れかの業務端末装置からネットワークを介して指定された命令に基づいて第１の記憶装置の記憶領域内の記憶内容を変更するデータ記憶手段，
前記各命令による処理がなされるたびに、その命令の内容と、その処理により前記第１の記憶装置の記憶領域内で変更された記憶内容とを対応付けた論理ログを、生成する論理ログ生成手段，
前記論理ログ生成部が生成した論理ログを第２の記憶装置に記憶する論理ログ記憶手段，
前記各命令による処理がなされるたびに、前記第１の記憶装置の記憶領域内におけるその処理により記憶内容が変更された箇所の位置情報と、その処理による変更後の記憶内容と、その処理の種別とを対応付けた物理ログを生成する物理ログ生成手段，及び、
前記物理ログ生成手段が前記物理ログを生成するたびに、その物理ログに対応する命令を特定する命令特定情報をその物理ログに対応付けて第３の記憶装置に記憶する物理ログ記憶手段
として機能させる
ことを特徴とするバックアッププログラム。
【図面の簡単な説明】
【００５６】
【図１】本実施形態のデータベースシステムの構成図
【図２】通常状態における主センタ内の制御装置の構成図
【図３】リカバリログファイルと差分ログファイルを生成する処理の説明に用いられる機能構成図
【図４】リカバリログファイル書出処理の流れを示す図
【図５】リカバリログの一例を示す図
【図６】差分ログＩ／Ｏバッファコピー処理の流れを示す図
【図７】差分ログファイル書出処理の流れを示す図
【図８】従来の複写元データベース装置におけるリカバリログと差分ログをともに生成して保存する機能についての機能構成図
【図９】差分ログを差分ログＩ／Ｏバッファに書き込む処理の流れを具体的に示す図
【図１０】差分ログファイル書出処理タスクに対する書出依頼処理の流れを具体的に示す図
【図１１】差分ログファイル書出処理の流れを示す図
【符号の説明】
【００５７】
１０    制御装置
１０ａ  ストレージ
１０ｃ  通信アダプタ
１１    業務情報管理アプリケーション
１１ａ  トランザクション処理タスク
１３    ログ制御モジュール
１３ａ  リカバリＩ／Ｏバッファ
１４    リカバリログファイル
１４ａ  リカバリログファイル書出処理タスク
１５，  クローン生成モジュール
１５ａ  差分ログＩ／Ｏバッファコピー処理タスク
１５ｂ  差分ログＩ／Ｏバッファ
１５ｃ  差分ログファイル書出処理タスク
１６    差分ログファイル
１７    差分ログファイル送信モジュール
２０    制御装置
【図１】
2007272648.tif 000003
【図２】
2007272648.tif 000004
【図３】
2007272648.tif 000005
【図４】
2007272648.tif 000006
【図５】
2007272648.tif 000007
【図６】
2007272648.tif 000008
【図７】
2007272648.tif 000009
【図８】
2007272648.tif 000010
【図９】
2007272648.tif 000011
【図１０】
2007272648.tif 000012
【図１１】
2007272648.tif 000013