【手続補正書】
【提出日】平成16年9月14日(2004.9.14)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【書類名】        明細書
【発明の名称】    データベース管理システム及びデータベース管理方法
【特許請求の範囲】
【請求項１】  同時実行制御にマルチバージョン方式を使い、複数のトランザクションが最新のバージョンを更新しながら、データベースを構成するファイルに直接アクセスして、バックアップを行うデータベース管理システムにおいて、
長大データ等の通常運用外のデータを記憶する外置きファイルと、該外置きファイルを管理する外置きファイル管理手段と、前記外置きファイルのリストを記憶する外置きファイルリスト格納ファイルとを有し、
ページの最古のバージョンを記憶するベースページ領域のファイルと共に、前記外置きファイルと前記外置きファイルリスト格納ファイルもファイルに直接アクセスしてバックアップすることを特徴とするデータベース管理システム。
【請求項２】  同時実行制御にマルチバージョン方式を使い、複数のトランザクションが最新のバージョンを更新しながら、データベースを構成するファイルに直接アクセスして、バックアップを行うデータベース管理システムにおいて、
長大データ等の通常運用外のデータを記憶する外置きファイルと、該外置きファイルを管理する外置きファイル管理手段と、前記外置きファイルのリストを記憶する外置きファイルリスト格納ファイルとを有し、
ページの最古のバージョンを記憶するベースページ領域のファイルと、データベースに対する操作の取消や再実行を行うための情報を記憶する論理ログ領域のファイルと共に、前記外置きファイルと前記外置きファイルリスト格納ファイルもファイルに直接アクセスしてバックアップすることを特徴とするデータベース管理システム。
【請求項３】  同時実行制御にマルチバージョン方式を使い、複数のトランザクションが最新のバージョンを更新しながら、データベースを構成するファイルに直接アクセスして、バックアップを行うデータベース管理システムにおいて、
長大データ等の通常運用外のデータを記憶する外置きファイルと、該外置きファイルを管理する外置きファイル管理手段と、前記外置きファイルのリストを記憶する外置きファイルリスト格納ファイルとを有し、
全ファイルと共に、前記外置きファイルと前記外置きファイルリスト格納ファイルもファイルに直接アクセスしてバックアップすることを特徴とするデータベース管理システム。
【請求項４】  バックアップデータをリストア後に前記外置きファイルリスト格納ファイルに存在しない前記外置きファイルを削除する請求項１〜３のいずれかに記載のデータベース管理システム。
【請求項５】 同時実行制御にマルチバージョン方式を使い、複数のトラザクションが最新のバージョンを更新しながら、データベースを構成するファイルに直接アクセスして、バックアップを行うデータベース管理方法において、
長大データ等の通常運用外のデータを外置きファイルに記憶し、前記外置きファイルのリストを外置きファイルリスト格納ファイルに記憶し、ページの最古のバージョンを記憶するベースページ領域のファイルと共に、前記外置きファイルと前記外置きファイルリスト格納ファイルもファイルに直接アクセスしてバックアップすることを特徴とするデータベース管理方法。
【請求項６】 同時実行制御にマルチバージョン方式を使い、複数のトランザクションが最新のバージョンを更新しながら、データベースを構成するファイルに直接アクセスして、バックアップを行うデータベース管理方法において、
長大データ等の通常運用外のデータを外置きファイル記憶し、前記外置きファイルのリストを外置きファイルリスト格納ファイルに記憶し、ページの最古のバージョンをベースページ領域のファイルに記憶し、データベースに対する操作の取消や再実行を行うための情報を論理ログ領域のファイルに記憶し、前記外置きファイルと前記外置きファイルリスト格納ファイルもファイルに直接アクセスしてバックアップすることを特徴とするデータベース管理方法。
【請求項７】 同時実行制御にマルチバージョン方式を使い、複数のトランザクションが最新のバージョンを更新しながら、データベースを構成するファイルに直接アクセスして、バックアップを行うデータベース管理方法において、
長大データ等の通常運用外のデータを外置きファイルに記憶し、前記外置きファイルのリストを外置きファイルリスト格納ファイルに記憶し、全ファイルと共に、前記外置きファイルと前記外置きファイルリスト格納ファイルもファイルに直接アクセスしてバックアップすることを特徴とするデータベース管理方法。
【請求項８】 バックアップデータをリストア後に前記外置きファイルリスト格納ファイルに存在しない前記外置きファイルを削除する請求項５〜７のいずれかに記載のデータベース管理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はデータベース管理システム及びデータベース管理方法に関し、詳細には関係モデルに基づいて文書管理システム、電子図書館システム、特許公報検索システム等のデータベース管理システムにおけるバックアップに関する。
【０００２】
【従来の技術】
データベース管理システムでは、あるトランザクションのある操作内容を取り消したり、再実行するための情報として、従来から、トランザクションの操作ごとに、その操作を取り消すための情報と、再実行するための情報を組にして、記憶することが行われてきた。この記憶内容のことをログと呼ぶ。
【０００３】
記憶する情報の種類によって、ログは以下のように分類される。
【０００４】
論理ログ(logical log)
どのような操作を行ったか、その操作を取り消すためにはどのような操作を行うかを記録する。例えば、「表Ａの行識別子が１０の行を削除」と「表Ａに行識別子が１０で、列の値としてａ，ｂ，ｃを持つ行を挿入」を組にして記録する。
【０００５】
物理ログ(physical log)
ファイル中のページに対する更新前と更新後のイメージを記録する。論理ログと比較して、記録する情報量は膨大になるが、操作の実行、再実行は単にページの操作になるため、単純である。
【０００６】
論理・物理の折衷ログ(physiological log)
表や索引を構成するレコードファイルやＢ木ファイルなど、論理的なファイルに対して、どのような操作を行ったか、その操作を取り消すためにどのような操作を行うかを記録する。必要に応じて、ページに対する操作の内容を記録する。記録する情報量は、論理ログと物理ログの中間になる。論理ログと比較して、ページに対してログに記録された操作を適用すべきかを判断しやすい。
【０００７】
媒体障害からの復旧は、ある時点で確保されている一貫性のあるデータベースから、これらのログにより、その時点以降の操作を再実行（ＲＥＤＯ）、または取り消す（ＵＮＤＯ）することにより行う。媒体障害から復旧するとき、バックアップした一貫性のあるデータベースを戻してから、バックアップしてから障害が発生する直前まで行われた操作を、ログを読み出しながらＲＥＤＯ−ＵＮＤＯして、復旧する。
【０００８】
ログの記録は、ＷＡＬ(Write Ahead Logging)プロトコルに従う必要がある。すなわち、データベースに対する更新操作のバッファリング内容をディスクへ書き込むときは、必ずその操作のログはディスクに書き込まれていなければならない。
【０００９】
システム障害も同様に回復可能であるが、システムの運用中にチェックポイント処理を行うことにより、復旧時間を短縮することができる。
【００１０】
チェックポイント処理は以下の手順で行う。
【００１１】
１．トランザクションの実行、および、新たなトランザクションの受付を一時停止する。
２．バッファリングされているデータベースの更新内容のうち、まだディスクに書き出されていないものをすべて書き出すことにより、データベースを構成するファイルの一貫性をこの時点で保証する。
３．あるトランザクションがチェックポイント処理後に最初にページを更新するごとに、その更新前のページイメージを物理ログへ記録する。この物理ログへの記録内容を破棄する。
４．トランザクションの実行、および、新たなトランザクションの受付を再開する。
【００１２】
チェックポイント処理中には、書き出す必要のあるバッファリングされているデータベースの更新内容をすべてディスクへ書き出さなければならないので、場合によってはかなり長時間、トランザクションの実行および受付を停止しなければならない。この時間を短縮するために、以下のようなファジーチェックポイント処理が提案されている。
【００１３】
１．トランザクションの実行、及び新たなトランザクションの受付を一時停止する。
２．バッファリングされているデータベースの更新内容で、まだディスクに書き出されていないもののうち、直前のファジーチェックポイント処理時のときも書き出されていなかったものをすべて書き出す。
３．バッファリングされているデータベースの更新内容で、まだディスクに書き出されていないものを、覚えておく。これは、次のファジーチェックポイント処理の２．で使用する。
４．物理ログから２つ前のファジーチェックポイント処理が終了してから、直前のファジーチェックポイント処理を開始するまでに記録した内容をすべて破棄する。
５．トランザクションの実行、および、新たなトランザクションの受付を再開する。
【００１４】
ファジーチェックポイントでは、書き出す必要のあるバッファリングされているデータベースの更新内容のうち、直前のファジーチェックポイントでも書き出されていなかったもののみ、ディスクに書き出すので、普通のチェックポイント処理に比べて、処理時間が短縮される可能性が高い。
【００１５】
普通のチェックポイント処理を行っている場合、システム障害からの回復は、以下のようにして行う。
１．直前のチェックポイント処理後に更新されたページに対して、物理ログに記録されている更新前のページイメージを書き戻すことにより、チェックポイント処理終了時のデータベースの状態に戻す。
２．直前のチェックポイント処理時に実行されていたトランザクションのチェックポイント処理後の操作を、ログを読み出しながら再実行する。
３．障害発生時に終了していないトランザクションを、ログを読み出しながら取り消す。
【００１６】
ファジーチェックポイント処理を行っている場合、２つ前のチェックポイント処理の開始する前までに更新されたデータベースの内容は確実にディスクに書き出されているが、それ以降の内容は保証されない。そのため、普通のチェックポイント処理の場合は、最初に直前のチェックポイント処理終了直後の状態に戻すが、ファジーチェックポイント処理の場合は、２つ前のチェックポイント処理終了直後の状態に戻す。
【００１７】
チェックポイント処理は、データベースのバックアップと比較して短時間に行えるので、システムの運用中にかなりの頻度で定期的に行うことができる。そのため、バックアップ内容からの回復処理と比較して、ＲＥＤＯ−ＵＮＤＯする操作の量が少なくなるので、復旧時間が短くなる。
【００１８】
データベースのバックアップの方法としては、更に、マルチバージョン方式のトランザクション同時実行制御を行うデータベース管理システムにおける、データベース管理システムを介さないファイルバックアップ手段による方法が提案されている。
【００１９】
【発明が解決しようとする課題】
ところで、データベース管理システムは、ハードディスク等の不揮発性メモリの障害に備えるために、データベースを構成するファイルをバックアップする必要がある。また、データベース管理システムを構成するファイルは、複数のオブジェクトを同一のファイルに格納するために、一般に複雑な構造をもっている。そのため、１つのオブジェクトを、１つのオブジェクトしか格納されていない一般のファイルから読み込む場合や書き込む場合よりも、データベース管理システムを構成するファイルからのものは低速となってしまう。そのため、長大データの読み込み、書き込みを高速に行うために、データベース管理システムでは、長大データを外置きファイルとして格納する場合がある。この場合、一般の利用者が複数のトランザクションを実行するときにバックアップを行う工程が複雑であり、またシステム管理者の作業量も増えてしまっていた。
【００２０】
本発明はこれらの問題点を解決するためのものであり、一般の利用者が複数のトランザクションを実行しているような通常運用状態であっても、データベースを構成するファイルに直接アクセスしてバックアップを行うことができることにより単純な作業工程でバックアップを行うことができ、システム管理者の作業量も減らすことができると共に、バックアップを行ったデータをリストアした後にバックアップ開始後に追加された不要な外置きファイルを削除してハードディスクの容量を節約することができるデータベース管理システム及びデータベース管理方法を提供することを目的とする。
【００２１】
【発明が解決しようとする課題】
前記問題点を解決するために、同時実行制御にマルチバージョン方式を使い、複数のトランザクションが最新のバージョンを更新しながら、データベースを構成するファイルに直接アクセスして、バックアップを行う、本発明のデータベース管理システムは、長大データ等の通常運用外のデータを記憶する外置きファイルと、該外置きファイルを管理する外置きファイル管理手段と、外置きファイルのリストを記憶する外置きファイルリスト格納ファイルとを有している。そして、ページの最古のバージョンを記憶するベースページ領域のファイルと共に、外置きファイルと外置きファイルリスト格納ファイルもファイルに直接アクセスしてバックアップすることに特徴がある。よって、一般の利用者が複数のトランザクションを実行しているような通常運用状態であってもデータベースを構成するファイルに直接アクセスして単純な作業工程でバックアップを行うことができる。
【００２２】
また、別の発明としてのデータベース管理システムによれば、ベースページ領域のファイルと、データベースに対する操作の取消や再実行を行うための情報を記憶する論理ログ領域のファイルと共に、外置きファイルと外置きファイルリスト格納ファイルもファイルに直接アクセスしてバックアップすることに特徴がある。よって、一般の利用者が複数のトランザクションを実行しているような通常運用状態であってもデータベースを構成するファイルに直接アクセスして単純な作業工程でバックアップを行うことができる。
【００２３】
更に、別の発明としてのデータベース管理システムによれば、全ファイルと共に、外置きファイルと外置きファイルリスト格納ファイルもファイルに直接アクセスしてバックアップすることに特徴がある。よって、一般の利用者が複数のトランザクションを実行しているような通常運用状態であってもデータベースを構成するファイルに直接アクセスして単純な作業工程でバックアップを行うことができる。
【００２４】
また、バックアップデータをリストア後に外置きファイルリスト格納ファイルに存在しない外置きファイルを削除することにより、バックアップ開始後に追加された不要な外置きファイルが削除でき、ハードディスク等の記憶容量を節約することができる。
【００２５】
更に、別の発明としてデータベース管理方法によれば、長大データ等の通常運用外のデータを外置きファイルに記憶し、外置きファイルのリストを外置きファイルリスト格納ファイルに記憶し、ページの最古のバージョンを記憶するベースページ領域のファイルと共に、外置きファイルと外置きファイルリスト格納ファイルもファイルに直接アクセスしてバックアップすることに特徴がある。よって、一般の利用者が複数のトランザクションを実行しているような通常運用状態であってもデータベースを構成するファイルに直接アクセスして単純な作業工程でバックアップを行うことができる。
【００２６】
また、別の発明としてのデータベース管理方法によれば、長大データ等の通常運用外のデータを外置きファイル記憶し、外置きファイルのリストを外置きファイルリスト格納ファイルに記憶し、ページの最古のバージョンをベースページ領域のファイルに記憶し、データベースに対する操作の取消や再実行を行うための情報を論理ログ領域のファイルに記憶し、外置きファイルと外置きファイルリスト格納ファイルもファイルに直接アクセスしてバックアップすることに特徴がある。よって、一般の利用者が複数のトランザクションを実行しているような通常運用状態であってもデータベースを構成するファイルに直接アクセスして単純な作業工程でバックアップを行うことができる。
【００２７】
更に、別の発明としてのデータベース管理方法によれば、長大データ等の通常運用外のデータを外置きファイルに記憶し、外置きファイルのリストを外置きファイルリスト格納ファイルに記憶し、全ファイルと共に、外置きファイルと外置きファイルリスト格納ファイルもファイルに直接アクセスしてバックアップすることに特徴がある。よって、一般の利用者が複数のトランザクションを実行しているような通常運用状態であってもデータベースを構成するファイルに直接アクセスして単純な作業工程でバックアップを行うことができる。
【００２８】
また、別の発明としてのデータベース管理方法においても、バックアップデータをリストア後に外置きファイルリスト格納ファイルに存在しない外置きファイルを削除することにより、バックアップ開始後に追加された不要な外置きファイルが削除でき、ハードディスク等の記憶容量を節約することができる。
【００２９】
【発明の実施の形態】
本発明のデータベース管理システムは、長大データ等の通常運用外のデータを記憶する外置きファイルと、該外置きファイルを管理する外置きファイル管理手段と、外置きファイルのリストを記憶する外置きファイルリスト格納ファイルとを有する。
【００３０】
【実施例】
はじめに、本発明のデータベース管理システムにおけるソフトウェアとハードウェアについて説明する。
図１は本発明の一実施例に係るデータベース管理システムの構成を示すブロック図である。同図において、本実施例のデータベース管理システムは、ファイルバックアップ手段１１、ファイルリストア手段１２、バックアップ開始・終了指示手段１３、問合せ入出力手段１４、問合せ実行手段１５、データベースファイルアクセス手段１６、チェックポイント制御手段１７、トランザクション制御手段１８、ログファイルアクセス手段１９、外置きファイル管理手段２０、外置きファイルリスト格納ファイル２２を含むデータベースファイル２１、ログファイル２３、外置きファイル２４及びバックアップファイル２５を含んで構成されている。
【００３１】
また、ファイルバックアップ手段１１は、データベースを構成するファイルを、データベース管理システムを介さずに直接アクセスし、そのバックアップを取る。ファイルリストア手段１２はテープなどの不揮発性記憶媒体からデータベースを構成するファイルを、データベース管理システムを介さずに直接リストアする。バックアップ開始・終了指示手段１３はバックアップの開始または終了をデータベース管理システムに対して指示する。問合せ入出力手段１４は問合せ要求を受け付け、その結果を出力する。また、問合せ実行手段１５は問合せ入出力手段１４からの問合せを、後述するデータベースファイルアクセス手段１６を使って実行し、その結果を返して、バックアップ開始・終了指示手段１３からの指示を実行する。そして、問合せの内容に応じたログを、後述するログファイルアクセス手段１９を使って記録する。更に、データベースファイルアクセス手段１６はデータベースを構成するファイルを操作するためのインタフェースを提供し、ディスクへの入出力をバッファリングする。バッファリングされた内容のディスクへの書き出しは、ＷＡＬプロトコルに従うように、ログファイルアクセス手段１９と協調して行われる。チェックポイント制御手段１７は定期的にチェックポイント処理を行う。トランザクション制御手段１８は問合せ入出力手段１４からの要求に応じて、トランザクションを開始、終了する。アボートするトランザクションについては、そのトランザクションが行った全ての操作を、ログファイルアクセス手段１９を使って取り消す。また、マルチバージョン方式によりトランザクションの同時実行制御を行う。ログファイルアクセス手段１９は後述するログファイル２３を操作するためのインタフェースを提供し、ディスクへの入出力をバッファリングする。更に、外置きファイル管理手段２０は後述する外置きファイル２４を操作するためのインタフェースを提供し、外置きファイル２４への問合せを処理する。そして、データベースファイルアクセス手段１６を介して外置きファイルリスト格納ファイル２２を管理する。データベースファイル２１はデータベース中のデータオブジェクトを記憶する。外置きファイルリスト格納ファイル２２は外置きファイル２４のリストを記憶するデータベースファイルの１つである。ログファイル２３はトランザクションで行われた操作を再実行及び取り消すために必要な情報を記憶し、かつトランザクションの開始、終了したことやチェックポイント処理を行ったことも記憶する。外置きファイル２４は長大データ等の通常運用外のデータを記憶する。バックアップファイル２５はデータベースを構成するファイルをバックアップする。
【００３２】
図２は本実施例に係るデータベース管理システムのシステム全体のハードウェア構成を示すブロック図である。同図において、本実施例のデータベース管理システムは、主に、サーバ１００と１つ又は複数の端末装置２００−１〜２００−ｎとを通信ネットワーク３００を介して接続されて構築されているシステムである。ここで、サーバ１００は、メモリ１０１、ＣＰＵ１０２及びハードディスク１０３を有し、ソフトウェアによるプログラムが実行可能である。また、端末装置２００−１〜２００−ｎから入力された問合せ要求に応じた問合せ処理を行い、その結果を端末装置２００−１〜２００−ｎに返すためのコンピュータであり、端末装置２００−１〜２００−ｎからのバックアップ対象であるファイルの取得要求に応じて、ファイルの内容を端末に返したり、端末装置２００−１〜２００−ｎからのバックアップ対象のあるファイルのテープへの書き込み要求に応じて、ファイルの内容をテープドライブ１０４へ書き込んだりするために利用するコンピュータでもある。更に、端末装置２００−１〜２００−ｎは、メモリ２０１−１〜２０１−ｎ、ＣＰＵ２０２−１〜２０２−ｎ、ハードディスク２０３−１〜２０３−ｎを有し、システムの利用者がサーバで実行されている図１の点線部分で囲んだ、あるデータベース管理システムへの問合せ要求を入力したり、問合せの結果を出力したりするために利用するコンピュータである。また、端末装置２００−１〜２００−ｎは、サーバ１００のハードディスク１０３に記録されているデータベースファイルを問合せて、その内容をテープドライブ２４０−１〜２４０−ｎへ書き込んだりするために利用するコンピュータでもある。一般に、端末装置２００−１〜２００−ｎには、問合せ要求を入力するためのキーボード２３０−１〜２３０−ｎ及びマウス２２０−１〜２２０−ｎなどのポインティングデバイスや、問合せ結果を表示するためのディスプレイ２１０−１〜２１０−ｎがそれぞれ装備される。端末装置２００−１〜２００−ｎでは、図１のファイルバックアップ手段１１、バックアップ開始・終了指示手段１３及び問合せ入出力手段１４がプログラムとして実行される。テープドライブ２４０−１〜２４０−ｎにはバックアップファイルを記録できる。なお、通信ネットワーク３００は、サーバ１００と端末装置２００−１〜２００−ｎをつなぐ伝送路である。一般に、ケーブルで実現され、通信プロトコルにはＴＣＰ／ＩＰが使われる。ただし、サーバ１００と端末装置２００−１〜２００−ｎとの通信プロトコルが一致すれば、ケーブルを使用しない無線ＬＡＮや放送波を使ったネットワークでも構わない。
【００３３】
図３は図１の外置きファイル管理手段の問合せ処理を示すフローチャートである。はじめに、図１の外置きファイル管理手段２０から、外置きファイルリスト格納ファイル２２へのアクセスは、全てデータベースファイルアクセス手段１６から行われる。よって、他のデータベースファイル同様に、マルチバージョン方式による同時実行制御が行われている。図１の外置きファイル２４への更新処理は削除処理と挿入処理とを実行することによって行われる。また、外置きファイル２４のパス名は常に一意になり、削除された外置きファイル２４のパス名がもう一度使用されることはない。外置きファイル２４に対する問合せ処理も図１のログファイル２３に記録されるので、トランザクションがアボートした場合には、他のデータベースファイル同様に、図１のログファイルアクセス手段１９を使って取り消すことができる。
【００３４】
そこで、バックアップの手順を図１及び図３に従って説明すると、先ず図１のバックアップ開始・終了指示手段１３は、データベース管理システムへバックアップの開始を指示する。指示を受けたデータベース管理システム内部の問合せ実行手段１５は、図１の外置きファイル２４に対しての問い合わせが挿入処理、又は削除処理と挿入処理とを含む処理を実行する更新処理であるか判断し（ステップＳ１０１）、挿入処理又は更新処理であれば新しいパス名を外置きファイル管理手段２０から得る（ステップＳ１０１；ＹＥＳ、ステップＳ１０２）。そして、得た新しいパス名を外置きファイルリスト格納ファイル２２に挿入して外置きファイル２４に格納する（ステップＳ１０３，Ｓ１０４）。次に、外置きファイルに対しての問い合わせが挿入処理又は更新処理でない場合及びステップＳ１０４による処理後は、削除処理又は更新処理であるか判断する（ステップＳ１０５）。当該問い合わせが削除処理又は更新処理であれば外置きファイルリスト格納ファイル２２から外置きファイル２４のパス名を得、外置きファイルリスト格納ファイル２２から外置きファイル２４のパス名を削除する（ステップＳ１０５；ＹＥＳ、ステップＳ１０６，Ｓ１０７）。そして、削除の問い合わせがバックアップ中に実行された場合には、削除する外置きファイルのパス名を問い合わせ処理手段へ報告し、外置きファイルは削除しない（ステップＳ１０８；ＹＥＳ、ステップＳ１０９）。バックアップ中でなければ、外置きファイルを削除する（ステップＳ１０８；ＮＯ、ステップＳ１１０）。次に、外置きファイルに対しての問い合わせが取得処理であれば、外置きファイルリスト格納ファイル２２から外置きファイルのパス名を得、外置きファイル２４を取得する（ステップＳ１１１；ＹＥＳ、ステップＳ１１２，Ｓ１１３）。
【００３５】
以上のような図１の外置きファイル管理手段２０の問合せ処理を行った後、ファイルバックアップ手段１１は、ベースページ領域を構成する全てのファイルと外置きファイル２４とを、テープなどの不揮発性媒体へ複写する。外置きファイル２４はバッファリングされていないので、バックアップ中に挿入された外置きファイル２４もバックアップされるが、データベースファイルの１つである外置きファイルリスト格納ファイル２２は、他のデータベースファイルとの一貫性が保証されているので、余分な外置きファイル２４もバックアップされるだけで、データベースの一貫性は保証される。バックアップ開始・終了指示手段１３は、データベース管理システムへバックアップの終了を指示する。指示を受けたデータベース管理システム内部の問合せ実行手段は以下の処理を行う。
【００３６】
先ず、バックアップ開始・終了指示手段１３は、データベース管理システムへバックアップの開始を指示する。指示を受けたデータベース管理システム内部の問合せ実行手段１５は、複写元更新方式によって新しいバージョンを生成するデータベース管理システムの場合、ログファイルアクセス手段１９に対してバックアップを開始することを表す論理ログを論理ログ領域に記録させる。そして、データベースファイルアクセス手段１６に対して、ベースページ領域のデータベースファイルの更新内容のうち、ディスクへ未書き込みのものの書き込みを指示する。バックアップ中に更新を行うトランザクションにより、ベースページ領域を構成するファイルが更新されても、バックアップされる内容の一貫性を保証するために、問合せ実行手段１５は、バックアップ中に削除された外置きファイルが存在する場合には外置きファイルを削除する。
【００３７】
図４は本実施例におけるバックアップされたファイルをリストアする処理を示すフローチャートである。なお、ファイルのバックアップは図３のフローに従って行う。図１のファイルリストア手段１２は、テープなどの不揮発性媒体から、ベースページ領域を構成する全てのファイルと外置きファイルとを、ディスクに複写する（ステップＳ２０１）。問合せ入出力手段１４は、リストア後処理を問合せ処理手段１５に指示する。問合せ処理手段１５は、外置きファイル管理手段２０に不要な外置きファイルの削除を指示する。外置きファイル管理手段２０は、データベースファイルアクセス手段１６を通して、外置きファイルリスト格納ファイル２２から存在する外置きファイル２４のリストを取得する（ステップＳ２０２）。外置きファイルリスト格納ファイル２２は、外置きファイルが終了しておらず、リストに存在するときは引く続き外置きファイルを行い、リストに存在しないときは外置きファイルを削除する（ステップＳ２０３；ＮＯ、ステップＳ２０４；ＮＯ、ステップＳ２０５）。他のデータベースファイルと同様に、マルチバージョン方式の同時実行制御が行われているので、ファイルの内容はバックアップ開始時点のものである。外置きファイル管理手段２０は、外置きファイルのリストに存在していない外置きファイル２４を削除する。このように、バックアップ時に挿入された外置きファイルを削除することができる。
【００３８】
なお、本発明は上記実施例に限定されるものではなく、特許請求の範囲内の記載であれば多種の変形や置換可能であることは言うまでもない。
【００３９】
【発明の効果】
以上説明したように、同時実行制御にマルチバージョン方式を使い、複数のトランザクションが最新のバージョンを更新しながら、データベースを構成するファイルに直接アクセスして、バックアップを行う、本発明のデータベース管理システムは、長大データ等の通常運用外のデータを記憶する外置きファイルと、該外置きファイルを管理する外置きファイル管理手段と、外置きファイルのリストを記憶する外置きファイルリスト格納ファイルとを有している。そして、ページの最古のバージョンを記憶するベースページ領域のファイルと共に、外置きファイルと外置きファイルリスト格納ファイルもファイルに直接アクセスしてバックアップすることに特徴がある。よって、一般の利用者が複数のトランザクションを実行しているような通常運用状態であってもデータベースを構成するファイルに直接アクセスして単純な作業工程でバックアップを行うことができる。
【００４０】
また、別の発明としてのデータベース管理システムによれば、ベースページ領域のファイルと、データベースに対する操作の取消や再実行を行うための情報を記憶する論理ログ領域のファイルと共に、外置きファイルと外置きファイルリスト格納ファイルもファイルに直接アクセスしてバックアップすることに特徴がある。よって、一般の利用者が複数のトランザクションを実行しているような通常運用状態であってもデータベースを構成するファイルに直接アクセスして単純な作業工程でバックアップを行うことができる。
【００４１】
更に、別の発明としてのデータベース管理システムによれば、全ファイルと共に、外置きファイルと外置きファイルリスト格納ファイルもファイルに直接アクセスしてバックアップすることに特徴がある。よって、一般の利用者が複数のトランザクションを実行しているような通常運用状態であってもデータベースを構成するファイルに直接アクセスして単純な作業工程でバックアップを行うことができる。
【００４２】
また、バックアップデータをリストア後に外置きファイルリスト格納ファイルに存在しない外置きファイルを削除することにより、バックアップ開始後に追加された不要な外置きファイルが削除でき、ハードディスク等の記憶容量を節約することができる。
【００４３】
更に、別の発明としてデータベース管理方法によれば、長大データ等の通常運用外のデータを外置きファイルに記憶し、外置きファイルのリストを外置きファイルリスト格納ファイルに記憶し、ページの最古のバージョンを記憶するベースページ領域のファイルと共に、外置きファイルと外置きファイルリスト格納ファイルもファイルに直接アクセスしてバックアップすることに特徴がある。よって、一般の利用者が複数のトランザクションを実行しているような通常運用状態であってもデータベースを構成するファイルに直接アクセスして単純な作業工程でバックアップを行うことができる。
【００４４】
また、別の発明としてのデータベース管理方法によれば、長大データ等の通常運用外のデータを外置きファイル記憶し、外置きファイルのリストを外置きファイルリスト格納ファイルに記憶し、ページの最古のバージョンをベースページ領域のファイルに記憶し、データベースに対する操作の取消や再実行を行うための情報を論理ログ領域のファイルに記憶し、外置きファイルと外置きファイルリスト格納ファイルもファイルに直接アクセスしてバックアップすることに特徴がある。よって、一般の利用者が複数のトランザクションを実行しているような通常運用状態であってもデータベースを構成するファイルに直接アクセスして単純な作業工程でバックアップを行うことができる。
【００４５】
更に、別の発明としてのデータベース管理方法によれば、長大データ等の通常運用外のデータを外置きファイルに記憶し、外置きファイルのリストを外置きファイルリスト格納ファイルに記憶し、全ファイルと共に、外置きファイルと外置きファイルリスト格納ファイルもファイルに直接アクセスしてバックアップすることに特徴がある。よって、一般の利用者が複数のトランザクションを実行しているような通常運用状態であってもデータベースを構成するファイルに直接アクセスして単純な作業工程でバックアップを行うことができる。
【００４６】
また、別の発明としてのデータベース管理方法においても、バックアップデータをリストア後に外置きファイルリスト格納ファイルに存在しない外置きファイルを削除することにより、バックアップ開始後に追加された不要な外置きファイルが削除でき、ハードディスク等の記憶容量を節約することができる。
【図面の簡単な説明】
【図１】
本発明の一実施例に係るデータベース管理システムの構成を示すブロック図である。
【図２】
本実施例に係るデータベース管理システムのシステム全体のハードウェア構成を示すブロック図である。
【図３】
図１の外置きファイル管理手段の問合せ処理を示すフローチャートである。
【図４】
本実施例におけるバックアップされたファイルをリストアする処理を示すフローチャートである。
【符号の説明】
１１；ファイルバックアップ手段、１２；ファイルリストア手段、
１３；バックアップ開始・終了指示手段、１４；問合せ入出力手段、
１５；問合せ実行手段、１６；データベースファイルアクセス手段、
１７；チェックポイント制御手段、１８；トランザクション制御手段、
１９；ログファイルアクセス手段、２０；外置きファイル管理手段、
２１；データベースファイル、２２；外置きファイルリスト格納ファイル、
２３；ログファイル、２４；外置きファイル、２５；バックアップファイル。