(57)【特許請求の範囲】
【請求項１】
少なくとも１つのＤＢＭＳの表の１又は複数の第１の項目と前記ＤＢＭＳの表から得られない第２の項目とを含む仮想表を定義し、データの検索要求を受けて前記第１の項目に関してはその項目を含むＤＢＭＳへの検索要求に変換して当該ＤＢＭＳの表から実データを取得し、前記第２の項目の実データは該当する更新ログデータを保持するＤＢＭＳの更新ログファイルを参照して取得し、取得した前記第１および第２の項目の検索結果を統合し検索要求元へ応答することを特徴とするデータベース検索方法。
【請求項２】
前記更新ログファイルを参照して得られた実データを定められた変換規則に従って変換し、変換後のデータを統合される前記第２の項目の検索結果とすることを特徴とする請求項１記載のデータベース検索方法。
【請求項３】
リレーショナルデータベースのビューとＤＢＭＳの表から得られない項目からなる仮想表を定義し、データの検索要求を受けてビューに相当する項目についてはその項目を含むＤＢＭＳへの検索要求に変換して当該ＤＢＭＳの表から実データを取得し、ＤＢＭＳの表にない項目については該当する更新ログデータを保持するＤＢＭＳの更新ログファイルを参照して実データを取得し、ＤＢＭＳの表から得られたデータと前記更新ログファイルから得られたデータとを統合して検索要求元へ応答することを特徴とするデータベースの検索方法。
【請求項４】
少なくとも１つのＤＢＭＳの表の１又は複数の第１の項目と前記ＤＢＭＳの表から得られない更新日時情報の項目である第２の項目とを含む仮想表を定義し、データの検索要求を受けて前記第１の項目に関してはその項目を含むＤＢＭＳへの検索要求に変換して当該ＤＢＭＳの表から実データを取得し、前記第２の項目の実データは該当する更新ログデータを保持するＤＢＭＳの更新ログファイルを参照して取得し、前記更新ログファイルから取得した日時情報を予め記憶された日時変換規則に従い基準の日時に変換し、取得した前記第１の項目の検索結果と変換後の前記第２の項目の検索結果を統合し検索要求元へ応答することを特徴とするデータベース検索方法。
【請求項５】
検索要求を受け、それに対し検索結果を応答するデータベース処理部と、それぞれデータベースと更新ログファイルとを有する１又は複数のデータベースシステムとを備え、前記データベース処理部は少なくとも１つのデータベースの表の１又は複数の第１の項目と前記データベースの表から得られない第２の項目とを含む仮想表を定義し、データの検索要求に対して前記第１の項目に関してはその項目を含むデータベースヘの検索要求に変換して当該データベースの表から実データを取得し、前記第２の項目の実データは該当する更新ログデータを保持するデータベースシステムの前記更新ログファイルを参照して取得し、取得した前記第１および第２の項目の検索結果を統合し検索要求元へ応答することを特徴とするデータベース検索システム。
【請求項６】
前記データベース処理部は前記更新ログファイルを参照して取得された実データを予め記憶された変換規則に従って変換する変換処理部を有し、前記変換処理部で変換された検索結果を統合することを特徴とする請求項５記載のデータベース検索システム。
【請求項７】
コンピュータに、少なくとも１つのＤＢＭＳの表の１又は複数の第１の項目と前記ＤＢＭＳの表から得られない第２の項目とを含む仮想表を定義する機能、データの検索要求を受けて前記第１の項目に関してはその項目を含むＤＢＭＳへの検索要求に変換して当該ＤＢＭＳの表から実データを取得する機能、前記第２の項目の実データは該当する更新ログデータを保持するＤＢＭＳの更新ログファイルを参照して取得する機能、取得した前記第１および第２の項目の検索結果を統合し検索要求元へ応答する機能を実現させるためのデータベース検索プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データベースシステムにおける検索処理に関するものである。
【０００２】
【従来の技術】
リレーショナルデータベースにおいて、表中のデータ項目としては一般にデータの更新日時を持っていない。その中で、データベースシステムにおいて、同じデータベースまたは異なるデータベースにある複数のデータの表を統合し、一つの表としてする場合に、データ項目毎のデータ登録・変更日時（以下、データ鮮度と呼ぶことにする）を利用しようとする技術がある。
【０００３】
その例として例えば、特開平１０−３１２３３１号公報「データベースの動的アクセス方法」では、「あるデータベースサーバでデータの更新が発生すると、そのデータベースサーバは、ただちに更新したデータの名称と、更新時刻をデータ鮮度マネージャに通知する。データ鮮度マネージャはデータベースサーバから通知されたデータの名称と更新時刻を受信して、データ鮮度テーブルの該当するデータの最終更新時刻を更新する」ようになっており、「システム内に各データベースの最終更新時間を管理する計算機を持ち、この計算機から各データベース内のデータの最終更新時刻を記録したテーブルを受け取り、処理で必要な鮮度のデータを持つデータベースを選び出す」ようになっていた。
【０００４】
【発明が解決しようとする課題】
前記従来技術では、データベースサーバは、データが更新されるたびにデータ鮮度マネージャに通知するので、データ鮮度マネージャが実装される以前に更新されたデータベースのデータに関してデータ鮮度を得ることは出来ない。一般には、既に運用されているデータベースシステムに必要に応じて後からデータ鮮度マネージャが実装されることになるのでそれ以前の鮮度データはない。
【０００５】
また、データが更新されるたびにデータ鮮度マネージャに通知するので、このための通信量が多量になる。
【０００６】
さらに、データ鮮度は処理で必要な鮮度のデータを持つデータベースを選び出すためにのみ利用されるので、データ鮮度情報自体を検索の結果として出力できない。
【０００７】
ところで、実際の業務で利用される日時に関する情報は、必ずしもデータが実際に更新された日時とは限らない。これはデータベースを利用するアプリケーションプログラムによって決まる。例えば、ある業務プログラムの売上実績の計算が毎月２０日締めの場合、２１日の早朝に更新したデータであっても２０日のデータにしたい場合がある。前記従来技術では、このような業務の規則に沿った柔軟性が無い。
【０００８】
本発明の目的は、過去に更新されたデータベースのデータに関してもデータ鮮度を得る方法を提供することにある。
また、本発明の他の目的は、データ鮮度を得るための通信量を削減する方法を提供することにある。
さらに、本発明の他の目的は、データ鮮度の検索結果を業務の規則に沿った形式で出力する方法を提供することにある。
【０００９】
【課題を解決するための手段】
本発明のデータベース統合処理部は、システム日時抽出・変換処理部と、検索結果生成処理部と、データベースアクセス制御部よりなる。
【００１０】
システム日時抽出・変換処理部は、データベースアクセス制御部を通じ、個別DBMS（：Ｄａｔａｂａｓｅ  Ｍａｎａｇｅｍｅｎｔ  Ｓｙｓｔｅｍ）（データベースシステム）の検索対象データベースに対応した更新ログファイルをデータベースから取得し、取得した更新ログファイルを日時変換情報の設定に基づいて変換する。
【００１１】
更新ログファイルよりデータ更新時刻を得るので、過去に更新されたデータも含めてデータの更新日時を得ることができ、また、データベースでデータが更新されるたびに毎回通信を発生させなくてもよい。
【００１２】
日時情報を得るにあたっては、更新ログファイルから抽出したデータの更新日時をそのまま得るのではなく、日時抽出変換情報の設定にもとづき、例えば西暦である更新日時を和暦の書式に変換したり、更新日時を20日などの特定基準日に変換するなどの日時変換処理を行なう。
【００１３】
検索結果生成処理部の日時情報統合処理部は、複数のDBMSから得た検索結果にシステム日時抽出・変換処理部で得た日時情報を追加し、これを検索結果として検索要求処理部に応答する。
【００１４】
【発明の実施の形態】
本実施例のデータベース統合システムは、１または複数のデータベースに格納した表を組み合わせ、一つの表(仮想表)を定義し、システム利用者が仮想表に対してSQLなどを用いて検索要求を行なうと、検索要求を受け取ったデータベース統合システムが、検索要求をおのおののDBMSに対する複数の検索要求に分解し、個別のDBMSから得た検索結果を得え、検索結果を一つに統合し、検索結果として応答するシステムである。本発明の特徴として、その仮想表の項目の１つとしてデータの更新日時があることである。そして、他の項目ではデータの実体はデータベースの記憶媒体上に実表として存在しているのに対して、データの更新日時は実表としても存在していなく、アプリケーションプログラムからの要求の都度ログ情報を検索して求めるものである。なお、データの更新日時には限定されず、データベースの記憶媒体上に実表として存在する項目ではなくログ情報を検索しないと得られない他の情報を含む仮想表が本発明では定義されている。
【００１５】
類似の考え方として、ビューまたはビュー表と呼ばれているものが知られている。これは、複数の実表から適当な項目が選択されてスキーマが定義され、ユーザから見れば仮想的に１つの表として認識される表である。スキーマそのものに対する物理的な表は記憶媒体上には存在しないから、検索要求を受け取るとデータベース統合システムがそれを各実表への検索要求に変換し、その検索結果を検索要求への回答として返す。本発明は更に実表上の項目とともにログ情報に存在するデータ項目も含めてスキーマ定義を行なった仮想表をもつものである。
【００１６】
以下、図面を用いて本発明の実施の形態を説明する。
図１に本発明の処理ブロック図を示す。これは複数のＤＢＭＳから仮想表を定義する例を示している。データベース統合設定情報１１０には、データベース統合処理部１５０の処理において参照する設定情報を格納する。データベース統合設定情報１１０は日時抽出・変換情報１１１と仮想表定義情報１１２、DBMS設定情報１１３を格納する。日時抽出・変換情報１１１には、統合対象となるDBMSの更新ログファイルより日時情報を取得し、システム利用者が望む日時表現に変換するための情報が格納されている。
【００１７】
図３を用いて日時抽出・変換情報１１１の説明を行なう。図３に示すように日時抽出・変換情報１１１は更新ログファイル設定情報３１０と、日時変換規則情報３２０より構成される。更新ログファイル設定情報３１０は、更新ログファイル設定ID３１１、DBMS名３１２、更新ログファイル名３１３、日時変換規則ID３１４より構成される。更新ログファイル設定ID３１１には、レコード情報を特定する識別子を格納する。DBMS名３１２にはデータベースシステムを識別するためのDBMS名を格納する。図３の例ではDBMS1もしくはDBMS2の値を格納する。これらはそれぞれ、ＤＢＭＳ1 １２０とＤＢＭＳ2 １３０を区別するためDBMS名である。更新ログファイル名３１３には、更新ログファイルのマシン上での配置位置を特定するためのパスを含めたファイル名を格納する。日時変換規則ID３１４には、後述する日時変換規則情報３２０の識別子を格納する。日時変換規則情報３２０は、日時変換規則ID３２１と日時変換規則３２２より構成される。日時変換規則ID３２１には、レコード情報を一意に特定する識別子を格納する。日時変換規則３２２には、更新ログファイルより得た日時情報をシステム利用者が望む形式の日時情報に変換するためのルールを格納する。ここで格納するルールとしては、更新日時を特定の基準日に変換するもの（例えば毎月５日と２０日を基準とし、実際の更新日が４日でも５日に、または実際の更新日が１５日でも２０日へと変換する）や、西暦日時を和暦日時に変換するルールを格納する。これらのルールについては、後に図９を用いて説明を行なう。
【００１８】
仮想表定義情報１１２には、統合対象となるDBMSの項目をもとに構成される仮想表の定義情報を格納する。なおここでいう仮想表とは、通常のDBMSにおけるビューに類似したものである。DBMSにおけるビューとは、実体となるテーブルをもたないが、複数テーブル上の項目との関連づけを定義し、通常のテーブルと同様に検索処理を行なうことができるものである。本実施例で述べる仮想表とは、このビューの概念を拡張したものとして定義することができる。仮想表とは、DBMS上のテーブルに対してテーブル項目の関連づけと対応を定義したものである。本実施例における仮想表とは、DBMS上のテーブルに対するビューの一種としてそのスキーマを定義できる。
【００１９】
図４を用いて仮想表定義情報１１２の説明を行なう。図４に示す仮想表定義情報１１２は、仮想表ID４１１、仮想表名４１２、仮想表項目名４１３、項目対応ルール４１４、更新ログファイル設定ID４１５よりなる。仮想表ID４１１には、レコード情報を一意に特定する識別子を格納する。仮想表名４１２には、仮想表名を格納する。仮想表項目名４１３には、仮想表上の項目名を格納する。項目対応ルール４１４には、仮想表上の項目を実体となる、どのDBMSのどのテーブルのどの項目を対応づけるかを示すルールを格納する。更新ログファイル設定ID４１５には、更新ログファイル設定情報３１０の更新ログファイル設定ID３１１を格納する。更新ログファイル設定ID４１５を用いることにより、DBMS上に存在しない日時情報の項目を仮想表上の項目として定義できる。項目対応ルール４１４と更新ログファイル設定ID４１５の関係は排他的であり、いずれか片側の項目に対してのみ設定できる。
【００２０】
なお、この仮想表定義情報１１２の構成は一例であり、本構成に限らずスクリプト言語などを用いて仮想表の定義を行なってもかまわない。例えばDBMSにおけるビューの場合には、SQLを用いて行なうことが可能であり、こうした言語を用いて仮想表を定義してもよい。
【００２１】
DBMS設定情報１１３には、統合対象となるDBMSの設定情報を格納する。図５を用いてDBMS設定情報１１３の説明を行なう。DBMS設定情報１１３は、DBMS設定ID５１１、DBMS名５１２、ホスト名５１３、ログインユーザ名５１４、パスワード５１５よりなる。DBMS設定ID５１１には、レコード情報を一意に特定する識別子を格納する。DBMS名５１２は、統合対象となるDBMSを識別するための名前を格納する。本実施例ではDBMS1もしくは、DBMS2のいずれかを格納する。ホスト名５１３には各DBMSの動作する計算機装置を特定するためのホスト名を格納する。ログインユーザ名５１４およびパスワード５１５には、各DBMSへの検索時におけるログイン処理を行なうためのユーザ名、パスワードを格納する。
【００２２】
DBMS１ １２０とDBMS２ １３０は、統合の対象となるDBMSである。図１では２つのDBMSのみを図示しているが、本発明のデータベース統合処理部１５０にて統合対象となるDBMSは任意の個数であってかまわない。
【００２３】
DBMS１ １２０はデータベース１ １２１と更新ログファイル１ １２２を有している。データベース１ １２１には、統合対象とするテーブル情報を格納する。図１の例では商品X取引情報１２３を格納する。商品X取引情報１２３は、ID１２４、顧客名１２５、取引金額１２６を含む。取引金額１２６には、商品Xの顧客別の取り引き金額を格納する。更新ログファイルには、DBMS１ １２１に対する更新ログの情報を格納する。更新ログファイルには、DBMSで変更対象となったテーブル名、レコードID、更新処理日時など導出できるデータをログ情報として格納している。この例では、レコードIDと更新日時を格納している状態を図示している。なお本実施例でいう更新とは、情報の新規登録、変更、削除を含めた意味で用いることにする。
【００２４】
なお、更新ログファイルの生成方法としては、（１）DBMSの基本機能により自動生成する場合と、（２）DBMSとは別にテーブル変更監視プログラムを用いて生成する場合がある。
【００２５】
多くのDBMSでは（１）のように基本機能としてDBMSの更新に応じて更新ログファイルを自動的に生成する機能を備えている場合があり、この場合には、DBMSの機能として更新ログファイルを生成できる。
【００２６】
一方、基本機能として更新ログファイルの生成機能がない場合にも、DBMSと別にデータベースを定期的に監視し、その差分情報をファイルとして出力する処理を追加することにより、更新ログファイルの生成を行なうことが可能になる。
【００２７】
本実施例は更新ログファイルを生成する手段については限定されないため、上記（１）（２）いずれの手段で生成した更新ログファイルに対して本発明を適用することが可能である。なおDBMS２ １３０はDBMS１ １２０と同様に構成される。
【００２８】
次に、図１における各処理部について説明を行なう。
検索処理要求部１４０は、データベース統合処理部１５０への検索要求を行なう。検索要求には、データベースの操作を行なう標準言語の一つである構造化問い合わせ言語SQLを用いて、仮想表に対する検索処理を行なう。ここで用いるSQLは通常のテーブルに対するSQLをそのまま仮想表に対して拡張を行なったものである。ただしSQL以外の手法を用いて検索要求を行なってもかまわない。
【００２９】
データベース統合処理部１５０では、検索処理要求部１４０からの検索要求に応じてDBMS1 １２０とDBMS2 １３０への検索処理と検索結果の統合を行なう。データベース統合処理部１５０は、システム日時抽出・変換処理部１５１と、検索要求変換処理部１５２、検索結果生成部１５３、日時情報統合処理部１５４、データベースアクセス制御部１５５より構成される。
【００３０】
システム日時抽出・変換処理部１５１では、日時抽出・変換情報１１１を参照し、更新ログファイルに格納されている日時情報の抽出と日時情報の変換処理を行なう。
【００３１】
検索要求変換処理部１５２は、仮想表定義情報１１２を参照することで、検索処理要求部１４０からの検索要求を複数DBMSの各テーブルに対する複数の検索要求へ変換する。
【００３２】
検索結果生成処理部１５３では、複数DBMSから得た検索データの統合を行ない、検索要求に対応した検索結果の生成を行なう。なお、検索結果生成処理部１５３は、日時情報統合処理部１５４を含んでいる。日時情報統合処理部１５４では、検索処理結果を生成するに当たって、検索結果に本来DBMSのテーブル上に存在しない日時情報を追加する処理を行なう。日時情報にはシステム日時抽出・変換処理部１５１より得たものを用いる。
【００３３】
データベースアクセス制御部１５５は、データベースへの処理や、更新ログファイルの取得を制御する。
【００３４】
図２に、本実施のシステム構成図を示す。本実施のシステムは、データベース統合システムサーバ２１０、検索要求端末２２０、DBMSサーバ１ ２３０、DBMSサーバ２ ２４０と、記憶装置２１１、２３１、２４１よりなる。なお、データベース統合システムサーバ２１０、計算機装置２２３、DBMSサーバ１ ２３０、DBMSサーバ２ ２４０は、計算機装置であり、これらは通常の計算機装置が備えるCPU、メモリ、記憶装置を備えているものとする。データベース統合システムサーバ２１０には、データベース統合処理部１５０を配置する。データベース統合システムサーバ２１０の記憶装置２１１には、データベース統合設定情報１１０を配置する。検索要求端末２２０は、画面表示装置２２１、入力装置２２２、計算機装置２２３よりなる。入力装置２２２としては、キーボードやマウスなどに限定せず、音声入力装置などを用いてもよい。計算機装置２２３には、検索要求処理部１４０を配置する。DBMSサーバ１ ２３０の記憶装置２３１には、データベース１ １２１と更新ログファイル1 １２２を配置する。DBMSサーバ２ ２４０の記憶装置２４１には、データベース２ １３１と更新ログファイル２ １３２を配置する。
【００３５】
なお、本実施例では、図２に示すように4台の計算機装置を用いているが、すべてを一台の計算機で行なってもかまわない。また複数の計算機で行われている処理を統合することにより、2台、3台の計算機装置を用いてもかまわない。また図２では統合対象となるDBMSが２つしか図示されていないが、これについては任意の個数を対象とすることができる。データベース統合処理部は本実施例ではプログラムにより実現されており、そのプログラムはコンピュータにより読み取り可能な記録媒体に記録可能である。
【００３６】
なお、以下に述べる実施例では、日時情報のみを更新ログファイルから取得し、検索結果として追加する項目として述べているが、本発明により実現される処理は、日時情報のみに限定されず、更新ログファイルに含まれるいずれの情報に対しても適用できるものである。
【００３７】
以下では図６を用いて、本実施例の処理について説明を行なう。
ステップ６１０では、データベース統合処理部１５０により、データベース統合設定情報１１０を、データベース統合システムサーバ２１０に読み込む。なお以下では特に断らない限り、データのメモリ読み込み先は、データベース統合システムサーバ２１０である。
【００３８】
ステップ６２０では、上記ステップで読み込んだ情報をもとにシステム日時抽出・変換処理を行なう。これによりメモリ上に更新ログファイルから抽出した日時情報と、これに対応した更新対象テーブルとレコードを特定する情報をメモリ上に保持する。なおこの際にメモリ上で保持する日時情報としては、既に日時変換を行なった結果を変換後日時情報として保持するものとする。図９においてメモリ上に保持する変換後日時情報の一例を示す。変換後日時情報および本ステップについては図７を用いて後に説明を行なう。
【００３９】
ステップ６３０では、検索要求処理部１４０から仮想表に対して、データベース統合処理部１５０に対して検索要求を行なう。たとえば以下のような仮想表に対するSQLを用いて検索要求を行なう。
SELECT ＊ FROM KVIEW１;
ステップ６４０では、上記検索要求を、検索要求変換処理部１５２により、個別DBMSに対応する要求に変換する。例えばここでは上記ステップで示したSQLを以下の２つのSQLに変換する。
DBMS1へのSQL：SELECT ＊ FROM 商品X取引情報；
DBMS2へのSQL：SELECT ＊ FROM 商品Y取引情報；
こうした個別DBMSへの変換方法については、従来技術（例えば特開平８−１６４３９号公報「異なるデ−タベ−スシステム間でのデ−タ共有装置及び方法」）に述べられており、いずれの処理を用いてもかまわない。
【００４０】
ステップ６５０では、データベースアクセス制御部１５５により、個別DBMSへの検索要求を行ない、個別DBMSからの検索結果を得る。この例ではDBMS1からは、「SELECT ＊ FROM 商品X取引情報；」を実行した検索結果を得る。なお各DBMSへの検索要求を行なうに当たっては、各DBMS単位にデータベース接続処理を行なう必要がある。こうしたデータベース接続処理には、DBMS設定情報１１３上のホスト名５１３、ログインユーザ名５１４、パスワード５１５を用いる。
【００４１】
ステップ６６０では、ステップ６２０で保持した更新後日時情報と、ステップ６５０で得た検索結果をもとに、日時情報統合処理を行なう。本ステップの処理は図８を用いて後に説明を行なう。
【００４２】
ステップ６７０では、検索処理部１４０に対して、上記ステップで生成した検索結果を応答する。
【００４３】
以下では図７を用いて、図６におけるステップ６２０の処理を説明する。
【００４４】
ステップ７１０では、更新ログファイル設定情報３１０のDBMS名３１２、更新ログファイル名３１３を参照し、データベースアクセス制御部に対して該当する更新ログファイルの取得を要求し、要求結果の更新ログファイルを取得する。データベースアクセス制御部ではDBMS設定情報１１３を参照し、各DBMSへのアクセスを行なう。なお更新ログファイルを取得するに当たっては、データベースへの接続などを行なわずに、ｆｔｐなどのファイル転送コマンドを用いて取得してもかまわない。本実施例では、こうしたファイル転送制御などを含めたものをデータベースアクセス制御部１５５としている。
【００４５】
ステップ７２０では、更新ログファイル設定情報３１０の日時変換規則ID３１４を参照し、日時変換規則情報３２０より日時変換規則ID３１４に対応する日時変換規則３２２をメモリ上に読み込む。
【００４６】
ステップ７３０では、更新ログファイルからデータの更新日時情報を抽出する。更新ログファイルには各DBMS毎に決められたフォーマットをもつため、このフォーマットに基づいたファイル読み込み処理を行なうことで、更新日時情報の抽出を行なう。
【００４７】
ステップ７４０では、上記ステップで得た更新日時を、ステップ７２０で読み込んだ日時変換規則により変換する。
【００４８】
以下では、図９を用いて日時変換規則について説明を行なう。日時変換をする要求の有無はデータベースを使うアプリケーションプログラムによる。売上実績をまとめる業務プログラムでは例えば、毎月５日と２０日を基準日として基準日間の売上の実績統計を出す。このときは基準日間のいつ売上があったかは問題ではなく、その売上がどの基準日に計上されるかが重要である。ここで、実際の売上の日時を計上すべき基準日に変換しておくことが業務プログラムの処理上有効である。図９に示す例では、更新ログファイル１  １２２には、2000-09-04-09:15といった更新日時情報が格納されている。図９では、この日時情報が日時変換規則によりどのように変換されるかについて示している。なお図９で用いる日時変換規則は、図3において図示したものである。
【００４９】
図９における日時変換規則ID＝１の変換規則では、2000-09-04-09:15は基準日になる5日に変換する。時刻については12:00に変換する。日時変換規則ID＝２の変換規則では、2000-09-04-09:15は基準日になる20日に変換する。時刻については12:00に変換する。日時変換規則ID＝3の変換規則では、2000-09-04-09:15は西暦より和暦に変換する。図９に示す日時変換処理をステップ７４０にて行なう。変換規則は日時情報のカラム単位に異なる規則を対応づけることが可能である。図１の仮想情報１６０における更新日時１のカラムには、5日および２０日を基準日とした変換規則が対応しており、更新日時２のカラムについては、２０日を基準日とした変換規則が対応している。図１の仮想表情報１６０に変換後の例を示す。この時の設定情報の例を図３および図４に示す。
【００５０】
ステップ７５０では、上記ステップで行なった変換結果をメモリ上に保持する。メモリ上に保持するに当たっては、既に図９に示した変換後日時情報９１０として保持する。変換後日時情報９１０は、ID９１１、更新ログファイル設定ID９１２、テーブル名９１３、レコードID９１４、変換後日時９１５より構成する。ID９１１はレコード情報を特定するための識別子を格納する。更新ログファイル設定ID９１２は、更新ログファイル設定ID３１１を格納する。テーブル名９１３、レコードID９１４、にはそれぞれ更新ログファイルを読み取ることで取得したテーブル名、レコードIDを格納する。変換後日時９１５には前記ステップで述べた処理により変換した変換後日時を格納する。以上の処理により、システム日時変換処理を行なう。
【００５１】
次に図８を用いて、図６におけるステップ６６０の処理を説明する。
ステップ８１０では、各DBMSを検索して得た結果と、メモリ上の変換後日時情報９１０とを比較し、検索結果として追加すべき変換後日時９１５を特定する。各DBMSを検索して得た結果のテーブル名、レコードIDと、変換後日時情報９１０上のテーブル名９１３、レコードID９１４を比較することで、追加すべき変換後日時９１５を特定する。ステップ８２０では、上記ステップで特定した変換後日時９１５を、仮想表上の項目として追加する。更新ログファイル設定ID４１５の更新ログファイル設定ID４１５を参照することで、どの仮想表項目として変換後日時９１５を追加すればいいのかを判定し、仮想表の項目として変換後日時９１５の追加を行なう。
【００５２】
本実施例では、DBMSのもつ更新ログファイルを解析することで得た日時情報を、複数DBMSの検索結果統合処理に当たって追加を行ない、日時情報を含んだ検索結果を応答することが可能になる。これにより既存DBMS上にデータ鮮度を示す日時の項目が存在しなくても、検索者がデータ鮮度項目を含む仮想表を参照することにより、データ更新日時を知ることができ、望むデータ鮮度の検索結果を得られたかを知ることができる。
【００５３】
また、本実施例では、データ鮮度を表わす日時として、データ更新処理が行なわれた更新日時をそのまま用いるのではなく、変換規則によりシステム利用者の参照しやすい形態に変換することができる。これによりシステム利用者が業務上理解しやすい形態でデータ更新の日時情報を参照できる。
【００５４】
また、本実施例では、更新日時を変換規則により、和暦や西暦に変換することができる。これによりシステム利用者が業務上理解しやすい形態でデータ更新の日時情報を参照できる。
【００５５】
上記実施例に対し、以下の変更を行なった実施例により、通常のDBMSで用いられるテーブルに対して日時情報を追加することも可能になる。変更を行なった場合のシステム概要を図１０に示し、以下変更個所を説明する。これはＤＢＭＳが１つしかない場合を想定したものである。基本的な構成は上記した実施例とは変わらない。
【００５６】
仮想表定義情報１１２に代えてテーブルを管理するテーブル管理情報１０１０を設ける。テーブル管理情報１０１０の構成は仮想表定義情報１１２と同様なものである。ただしこの例ではDBMS１に関連する情報のみをデータベース統合設定情報１１０に登録しておくのみでよい。そして図６のステップ６６０において仮想表ではなくテーブルに対する日時情報統合処理を日時情報統合処理部１０２０にて行なうようにし、図８のステップ８２０において仮想表情報を生成するに代えて、テーブルに対する統合処理を行なうようにする。ＤＢＭＳが１つしかないため複数のＤＢＭＳの複数の表の項目からなるビュー表の拡張と言う意味はないがこのテーブルも仮想表である。これにより実際のテーブルに日時情報がない場合でも、テーブルに対する検索処理結果として日時情報を参照することが可能になる。また、テーブル上には存在しない日時情報を検索条件として用いることも可能になる。検索結果として例えばテーブル情報１０３０を得ることができる。
【００５７】
本実施例では、仮想表情報に対する処理のみでなく、テーブルに対する処理として行なうことにより、テーブルに対する検索処理においても上述したのと同様にDBMS上にデータ鮮度を示す日時の項目が存在しなくても、データ更新日時を知ることができ、望むデータ鮮度の検索結果を得られたかを知ることができる。
【００５８】
【発明の効果】
本発明によれば、DBMSのもつ更新ログファイルを解析することで得た情報を、DBMSの検索結果統合処理にあたって追加を行ない、検索結果を応答することが可能になる。これにより既存DBMS上に存在しないが、更新ログファイル内には存在する項目を、仮想表上の項目として参照することにより、仮想表を通じて更新ログファイルのもつ更新状況を示す情報を参照することが可能になる。
【００５９】
また、本発明によれば、DBMSのもつ更新ログファイルを解析することで得た日時情報を、DBMSの検索結果統合処理に追加し、日時情報を含んだ検索結果を応答することが可能になる。これにより既存DBMS上にデータ鮮度を示す日時の項目が存在しなくても、検索者がデータ鮮度項目を含む仮想表を参照することにより、データ更新日時を知ることができ、望むデータ鮮度の検索結果を得られたかを知ることができる。
【図面の簡単な説明】
【図１】本発明の実施の形態を示すブロック図
【図２】本発明のハードウェア構成例を示す図
【図３】日時抽出・変換情報の構成を示す図
【図４】仮想表定義情報の構成を示す図
【図５】DBMS設定情報の構成を示す図
【図６】本実施例の主フロー図
【図７】システム日時変換・抽出処理を示すフロー図
【図８】日時情報統合処理を示すフロー図
【図９】日時変換規則の例を示す図
【図１０】単一のＤＢＭＳを利用した実施形態のブロック図
【符号の簡単な説明】
１１０…データベース統合設定情報、１２０、１３０…データベース管理システム、１２２…更新ログファイル１、１３２…更新ログファイル２、１４０…検索処理要求部、１５０…データベース統合処理部、１５１…システム日時抽出・変換処理部、１５４…日時情報統合処理部。
【図１】
0003851493.tif 000002
【図２】
0003851493.tif 000003
【図３】
0003851493.tif 000004
【図４】
0003851493.tif 000005
【図５】
0003851493.tif 000006
【図６】
0003851493.tif 000007
【図７】
0003851493.tif 000008
【図８】
0003851493.tif 000009
【図９】
0003851493.tif 000010
【図１０】
0003851493.tif 000011