(57)【要約】【課題】任意の検索条件の利用を可能としつつデータファイルの検索時間を短縮する。【解決手段】検索要求があったときに、データファイルに関連付けられつつ検索条件の特徴が記録され得るプロファイルを順次参照し、検索条件の特徴が記録されているか否かを判定する（Ｓ１４、１５）。そして、プロファイルに特徴が記録されているときに、その特徴が付属情報の検索条件を満たしていればプロファイルに関連付けられたデータファイルの検索を実行する一方、その特徴が付属情報の検索条件を満たしていなければそのデータファイルの検索をスキップする（Ｓ１６，１７）。また、プロファイルに特徴が記録されていないと判定されたときに、そのプロファイルに関連付けられたデータファイルを検索し、その検索結果に基づいてプロファイルを更新する（Ｓ１５，２２，２３）。その後、データファイルを検索した検索結果を返信する（Ｓ１９）。【選択図】図４
2010079613.tif 000002
【特許請求の範囲】
【請求項１】
複数のデータファイルを検索するコンピュータに、
検索条件を付属情報とした検索要求があったときに、各データファイルに関連付けられつつ検索条件の特徴が記録され得るプロファイルを順次参照し、該プロファイルに検索条件の特徴が記録されているか否かを判定するステップと、
前記プロファイルに検索条件の特徴が記録されていると判定したときに、該特徴が付属情報の検索条件を満たしていれば、そのプロファイルに関連付けられたデータファイルの検索を実行する一方、該特徴が付属情報の検索条件を満たしていなければ、そのプロファイルに関連付けられたデータファイルの検索をスキップするステップと、
前記プロファイルに検索条件の特徴が記録されていないと判定したときに、該プロファイルに関連付けられたデータファイルを検索すると共に、その検索結果に基づいてプロファイルを更新するステップと、
前記データファイルを検索した検索結果を返信するステップと、
を実現させるためのデータファイル検索プログラム。
【請求項２】
前記コンピュータに、前記データファイルに関連付けられたプロファイルが存在しないとき、該プロファイルを新たに作成するステップを更に実現させるための請求項１記載のデータファイル検索プログラム。
【請求項３】
前記コンピュータに、前記プロファイルの更新日時がこれに関連付けられたデータファイルの更新日時より古いとき、該データファイルの検索結果に基づいてプロファイルを更新するステップを更に実現させるための請求項１又は請求項２に記載のデータファイル検索プログラム。
【請求項４】
複数のデータファイルに夫々関連付けられつつ検索条件の特徴が記録され得るプロファイルを格納する記録装置と、
検索条件を付属情報とした検索要求があったときに、前記記録装置に格納されたプロファイルを順次参照し、該プロファイルに検索条件の特徴が記録されているか否かを判定する判定手段と、
前記判定手段によりプロファイルに検索条件の特徴が記録されていると判定されたときに、該特徴が付属情報の検索条件を満たしていれば、そのプロファイルに関連付けられたデータファイルの検索を実行する一方、該特徴が付属情報の検索条件を満たしていなければ、そのプロファイルに関連付けられたデータファイルの検索をスキップする第１の検索手段と、
前記判定手段によりプロファイルに検索条件の特徴が記録されていないと判定されたときに、該プロファイルに関連付けられたデータファイルを検索すると共に、その検索結果に基づいてプロファイルを更新する第２の検索手段と、
前記第１の検索手段又は第２の検索手段によるデータファイルの検索結果を返信する返信手段と、
を含んで構成されたことを特徴とするデータファイル検索装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データファイルを検索する技術に関する。
【背景技術】
【０００２】
データファイルを検索する方法として、各種データを保持しているすべてのデータファイルにアクセスし、検索キーに適合するデータのみを抽出する方法が採用されている。この検索方法では、大量のデータファイルが存在し、かつ、各データファイルのサイズが大きいデータウエアハウスなどを対象とすると、すべてのデータファイルを読み込まなければならないことから、検索にある程度の時間がかかっていた。これを解決する方法として、データファイルに検索キーを埋め込み、指定した検索キーが存在するデータファイルのみを検索対象とすることで、検索時間の短縮を図った技術が提案されている。
【特許文献１】特開２００２−２７８９８７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、従来提案技術では、データファイルに埋め込まれた検索キーとは異なる検索キーを用いた場合には、検索時間の短縮が図れないばかりか、所望するデータが抽出されないおそれがあった。また、この方法で検索時間の短縮を図ろうとすると、検索キーの選定など業務に応じた設計が必要となり、データベースを構築する場合と同様なスキルが必要であった。
【０００４】
そこで、従来の問題点に鑑み、データファイル検索時に抽出した検索条件の特徴をプロファイルとして記録し、これを用いて検索対象となるデータファイルを絞り込むことで、任意の検索キーの利用を可能としつつ検索時間を短縮したデータファイル検索技術を提供することを目的とする。
【課題を解決するための手段】
【０００５】
検索条件を付属情報とした検索要求があったときに、複数のデータファイルに夫々関連付けられつつ検索条件の特徴が記録され得るプロファイルを順次参照し、そこに検索条件の特徴が記録されているか否かを判定する。そして、プロファイルに検索条件の特徴が記録されていると判定したときに、その特徴が付属情報の検索条件を満たしていれば、そのプロファイルに関連付けられたデータファイルの検索を実行する一方、その特徴が付属情報の検索条件を満たしていなければ、そのデータファイルの検索をスキップする。また、プロファイルに検索条件の特徴が記録されていないと判定されたときに、そのプロファイルに関連付けられたデータファイルを検索すると共に、その検索結果に基づいてプロファイルを更新する。その後、データファイルを検索した検索結果を返信する。
【発明の効果】
【０００６】
データファイルを実際に検索する前に、検索条件の特徴を記録したプロファイルを参照して検索実行の要否を判定するため、検索対象となるデータファイルが絞り込まれ、検索時間を短縮することができる。また、プロファイルにおける検索条件の特徴は、データファイルを検索した結果に基づいて自動的に記録されるため、データファイルなどに事前に検索キーなどを埋め込んでおく必要がなく、管理者の労力軽減に加え、任意の検索条件を利用することができる。
【発明を実施するための最良の形態】
【０００７】
以下、添付された図面を参照して本発明を詳述する。
図１は、本発明を具現化したデータファイル検索装置の一実施形態を示す。
データファイル検索装置１０は、ＬＡＮ（Local Area Network），インターネットなどのネットワークを介して、データファイル検索サービスを利用するクライアント２０に接続される。また、データファイル検索装置１０は、サーバなどの汎用コンピュータからなり、ハードディスクなどの外部記憶装置にインストールされたデータ検索プログラムを実行することで、制御部１２及びデータファイル検索部１４を夫々具現化する。制御部１２は、クライアント２０に対してデータファイル検索サービスを提供する窓口となると共に、データファイル検索部１４に対する検索要求及び検索結果の送受信を行う。データファイル検索部１４は、データウエアハウスなどを構築する複数のデータファイル１６を検索すると共に、各データファイル１６に対して１対１に関連付けられたプロファイル１８を管理する。なお、プロファイル１８は、例えば、ハードディスクなどの記録装置にファイルとして格納される。
【０００８】
ここで、制御部１２及びデータファイル検索部１４が協働することにより、データファイル検索プログラムに係る各ステップ、及び、データファイル検索装置に係る各手段が夫々実現される。
【０００９】
プロファイル１８には、図２に示すように、これに関連付けられているデータファイル名及びデータファイル最終更新日時に加え、検索条件の特徴として、検索項目名，検索値データ型及び特徴記述が関連付けられた状態で記録される。ここで、検索項目名が「日時型」，「数値型」及び「文字型」の場合、その検索値データ型及び特徴記述は、夫々、「ＤＡＴＥ，最古日時・最新日時」，「ＮＵＭＢＥＲ，最小値・最大値」及び「ＳＴＲＩＮＧ，検索値・データの有無（Ｔ又はＦ）」と表記される。
【００１０】
図３は、制御部１２において、クライアント２０から、検索キーなどの検索条件を付属情報とした検索要求を受信したことを契機として実行される検索処理を示す。なお、検索条件は、検索項目名と検索値（特徴）を含んで構成される。
【００１１】
ステップ１（図では「Ｓ１」と略記する。以下同様）では、データファイル検索部１４に対して、クライアント２０から受信した検索要求を送信する。
ステップ２では、データファイル検索部１４からデータファイル１６の検索結果を受信したか否かを判定する。そして、検索結果を受信したならばステップ３へと進む一方（Ｙｅｓ）、検索結果を受信していなければ待機する（Ｎｏ）。
【００１２】
ステップ３では、データファイル検索部１４から受信した検索結果を集計し、これをクライアント２０に返信する。
図４は、データファイル検索部１４において、制御部１２から検索要求を受信したことを契機として実行される検索処理を示す。
【００１３】
ステップ１１では、ＯＳ（Operating System）の機能などを利用し、データファイル１６の一覧を取得する。
ステップ１２では、データファイル一覧を参照し、その先頭から順番にデータファイル１６に関連付けられたプロファイル（以下「対応プロファイル」という）１８が存在するか否かを判定する。そして、対応プロファイル１８が存在すればステップ１３へと進む一方（Ｙｅｓ）、対応プロファイル１８が存在しなければステップ２０へと進む（Ｎｏ）。
【００１４】
ステップ１３では、データファイル１６と対応プロファイル１８が整合、即ち、対応プロファイル１８の更新日時がこれに関連付けられたデータファイル１６の更新日時より古くないか否かを判定する。そして、データファイル１６と対応プロファイル１８が整合していればステップ１４へと進む一方（Ｙｅｓ）、データファイル１６と対応プロファイル１８が整合していなければステップ２１へと進む（Ｎｏ）。なお、データファイル１６及び対応プロファイル１８の更新日時は、例えば、そのタイムスタンプを適用すればよい。
【００１５】
ステップ１４では、対応プロファイル１８を読み込む。
ステップ１５では、対応プロファイル１８に検索条件の特徴が記録されているか否かを判定する。そして、検索条件の特徴が記録されていればステップ１６へと進む一方（Ｙｅｓ）、検索条件の特徴が記録されていなければステップ２２へと進む（Ｎｏ）。
【００１６】
ステップ１６では、対応プロファイル１８に記録されている検索条件の特徴が、検索要求に付随する付属情報の検索条件を満たしているか否かを判定する。そして、検索条件の特徴が付属情報の検索条件を満たしていればステップ１７へと進み（Ｙｅｓ）、付属情報の検索条件により、対応プロファイル１８に関連付けられているデータファイル１６を検索する。一方、検索条件の特徴が付属情報の検索条件を満たしていなければデータファイル１６の検索をスキップしてステップ１８へと進む（Ｎｏ）。
【００１７】
ステップ１８では、データファイル一覧に含まれるすべてのデータファイル１６を処理したか否かを判定する。そして、すべてのデータファイル１６を処理したならばステップ１９へと進む一方（Ｙｅｓ）、すべてのデータファイル１６を処理していなければステップ１２へと戻る（Ｎｏ）。
【００１８】
ステップ１９では、データファイル１６の検索結果を制御部１２へと返信する。
ステップ２０では、対応プロファイル１８が存在していないので、データファイル１６に関連付けられるプロファイル１８を新たに作成する。なお、プロファイル１８を新たに作成するときには、これと関連付けられるデータファイル１６を特定するデータファイル名がそこに記録される。
【００１９】
ステップ２１では、データファイル１６と整合がとれていない対応プロファイル１８、又は、新たに作成されたプロファイル１８を初期化、即ち、データファイル名とデータファイルの最終更新日時を除き、何も記録されていない状態にする。
【００２０】
ステップ２２では、検索要求に付随する付属情報の検索条件により、検索条件の特徴が記録されていない対応プロファイル１８、又は、初期化されたプロファイル１８に関連付けられたデータファイル１６を検索する。
【００２１】
ステップ２３では、データファイル１６の検索結果に基づいて、これに関連付けられたプロファイル１８における検索条件の特徴を更新する。そして、これらの更新後、ステップ１８へと進む。
【００２２】
このようなデータファイル検索装置によれば、クライアント２０から検索条件を付属情報とした検索要求があったときに、データファイル１６を実際に検索する前に、これに関連付けられたプロファイル１８が順次参照される。そして、プロファイル１８に検索条件の特徴が記録され、かつ、その特徴が付属情報の検索条件を満たしていれば、そのプロファイル１８に関連付けられたデータファイル１６の検索が初めて実行される。一方、プロファイル１８に検索条件の特徴が記録され、かつ、その特徴が付属情報の検索条件を満たしていなければ、そのプロファイル１８に関連付けられたデータファイル１６の検索がスキップされる。また、プロファイル１８に検索条件の特徴が記録されていなければ、そのプロファイル１８に関連付けられたデータファイル１６が検索されると共に、その検索条件に基づいてプロファイル１８に記録された検索条件の特徴が更新される。その後、クライアント２０に対して、データファイル１６を検索した検索結果が返信される。
【００２３】
従って、データファイル１６を実際に検索する前に、検索条件の特徴を記録したプロファイル１８を参照して検索実行の要否が判定されるため、検索対象となるデータファイル１６が絞り込まれ、検索時間を短縮することができる。また、プロファイル１８における検索条件の特徴は、データファイル１６を検索した結果に基づいて自動的に記録されるため、データファイル１６などに事前に検索キーなどを埋め込んでおく必要がなく、管理者の労力軽減に加え、任意の検索条件を利用することができる。なお、データウエアハウスなどでは、データファイル１６の数が膨大であると共に、各データファイル１６のサイズが大きいため、これを読み込む時間に比較してプロファイル１８を参照する時間は微々たるものである。
【００２４】
このとき、データファイル１６に関連付けられたプロファイル１８が存在しなければ、そのプロファイル１８が新たに作成され、これがデータファイル１６の検索結果に基づいて更新される。このため、新たなデータファイル１６を追加したときでも、これに関連付けられたプロファイル１８が自動的に作成され、その後の検索に資することができる。また、プロファイル１８の更新日時がこれに関連付けられたデータファイル１６の更新日時より古いとき、そのデータファイル１６の検索結果に基づいてプロファイル１８が更新される。このため、データファイル１６の更新が行われたときにも、これとプロファイル１８の整合を自動的にとることができる。
【００２５】
次に、データファイル検索装置１０の理解を容易ならしめるべく、２つの具体例について説明する。
［第１具体例］
クライアント２０からデータファイル検索装置１０に対して、図５に示すように、２００８年６月３日〜６月５日の売上高合計を要求する検索要求があると、データファイルDATA001.CSV〜DATA003.CSVに夫々関連付けられたプロファイルが順次参照される。そして、これらの中から、取引日が２００８年６月３日〜６月５日の売上データを含むプロファイルが選択され、これに関連付けられたデータファイルDATA002.CSV及びDATA003.CSVのみ検索が実行される。このとき、データファイルDATA001.CSVに関連付けられたプロファイルは、取引日が２００８年６月１日〜６月２日であり、検索要求に付随する検索条件を満たさないため、そのデータファイルDATA001.CSVの検索がスキップされる。
【００２６】
従って、図示の検索条件では、データファイルDATA002.CSV及びDATA003.CSVのみが検索対象となり、データファイルDATA001.CSVの検索が実行されないことから、検索時間の短縮を図ることができる。
［第２具体例］
クライアント２０からデータファイル検索装置１０に対して、図６に示すように、店舗コードが００１かつ取引日が２００８年６月３日の売上高合計を要求する検索要求があると、データファイルDATA001.CSV〜DATA003.CSVに夫々関連付けられたプロファイルが順次参照される。そして、これらの中から、店舗コードが００１かつ取引日が２００８年６月３日の売上データを含むプロファイルが選択されるが、データファイルDATA002.CSVに関連付けられたプロファイルの店舗コード００１に対応する売上げデータは存在しないので、検索条件に適合したプロファイルは存在しない。しかし、データファイルDATA003.CSVに関連付けられたプロファイルについては、取引日が２００８年６月３日の売上データを含むが、店舗コード００１に対応する特徴が記録されていないため、これを自動更新すべく検索対象として選択される。そして、データファイルDATA003.CSVのみ検索が実行され、その検索結果に基づいて、図７に示すように、データファイルDATA003.CSVに関連付けられたプロファイルにおける検索条件の特徴が更新される。
【００２７】
従って、図示の検索条件では、データファイルDATA003.CSVのみが検索対象となり、データファイルDATA001.CSV及びDATA002.CSVの検索が実行されないことから、検索時間の短縮を図ることができる。また、データファイルDATA003.CSVに関連付けられたプロファイルには、店舗コード００１の売上データに関する検索条件の特徴が記録されていないが、データファイルDATA003.CSVの検索結果に基づいてこれが更新される。このため、その後の検索処理において、店舗コード００１を検索条件とすると、データファイルDATA003.CSVが検索対象として選択されなくなる。
【図面の簡単な説明】
【００２８】
【図１】データファイル検索装置の一実施形態を示す全体構成図
【図２】プロファイルの説明図
【図３】制御部で実行される検索処理のフローチャート
【図４】データファイル検索部で実行される検索処理のフローチャート
【図５】データファイル検索装置の作用を説明するための第１具体例の説明図
【図６】データファイル検索装置の作用を説明するための第２具体例の説明図
【図７】第２具体例により更新されたプロファイルの説明図
【符号の説明】
【００２９】
１０  データファイル検索装置
１２  制御部
１４  データファイル検索部
１６  データファイル
１８  プロファイル
【図１】
2010079613.tif 000003
【図２】
2010079613.tif 000004
【図３】
2010079613.tif 000005
【図４】
2010079613.tif 000006
【図５】
2010079613.tif 000007
【図６】
2010079613.tif 000008
【図７】
2010079613.tif 000009