(57)【要約】      （修正有）【課題】検索対象のデータ量が増加しても検索処理に要する時間の増大を抑制する。【解決手段】検索対象データ管理装置１０２は、検索制御装置１０１が受信した検索要求に対応する検索式から、検索対象データが格納されている格納庫の分類対象項目と項目の値を抽出し、それに基づいて検索式が対象とする検索対象データ格納庫１０４を特定する。検索制御装置１０１は、１つ以上の検索要求に対応する各検索式を、特定された格納庫１０４別に束ね、格納庫１０４別にその識別情報と束ねられた各検索式の情報とを含む検索依頼を発行する。検索処理装置１０５は、その検索依頼に基づいて、それに含まれる識別情報に対応する格納庫１０４内の検索対象データに対して、その依頼に含まれる各検索式に対応する各検索処理を実行する。検索制御装置１０１は、検索処理装置１０５からの検索結果を、検索式毎に振り分けて各検索式に対応する各検索要求の要求元に送信する。【選択図】図１
2010165170.tif 000002
【特許請求の範囲】
【請求項１】
検索要求を受信し、該検索要求に対応する検索式に基づいて検索依頼を生成し、該検索依頼に基づいて複数の検索対象データ格納庫に分類して格納されている検索対象データに対して検索処理を実行し、該検索処理の検索結果を前記検索要求の要求元に通知する検索処理方法において、
前記検索要求に対応する検索式から、前記検索対象データが前記複数の検索対象データ格納庫に分類して格納されるときに用いられる分類対象項目と該項目の値を抽出し、該分類対象項目の値に基づいて前記検索式が対象とする前記検索対象データ格納庫を特定する検索対象データ特定処理ステップと、
１つ以上の前記検索要求に対応する各検索式を、該各検索式に対応して前記検索対象データ特定処理ステップによって特定される検索対象データ格納庫別に束ね、該検索対象データ格納庫別に該格納庫の識別情報と前記束ねられた各検索式の情報とを含む検索依頼を生成して発行する検索依頼処理ステップと、
該検索依頼に基づいて、該検索依頼に含まれる前記識別情報に対応する前記検索対象データ格納庫内の前記検索対象データに対して、該検索依頼に含まれる前記各検索式に対応する各検索処理を実行する検索処理ステップと、
該検索処理ステップにより得られる前記検索結果を、前記検索式毎に振り分けて該検索式毎に対応する各検索要求の要求元に送信する検索結果通知処理ステップと、
を含むことを特徴とする検索処理方法。
【請求項２】
前記検索対象データ特定処理ステップは、前記分類対象項目の値に基づいて、前記検索対象データが前記分類対象項目の値毎に前記複数の検索対象データ格納庫のうちのどの格納庫に格納されるかを示す検索対象データ所在管理簿を参照することにより、前記検索対象データ格納庫を特定する、
ことを特徴とする請求項１に記載の検索処理方法。
【請求項３】
前記検索対象データ格納庫は、前記検索対象データを書き込んだ検索対象ファイルである、
ことを特徴とする請求項１又は２の何れか１項に記載の検索方法。
【請求項４】
前記検索対象データ格納庫は、前記検索対象データを格納したデータベースの検索対象テーブルである、
ことを特徴とする請求項１又は２の何れか１項に記載の検索処理方法。
【請求項５】
検索要求を受信し、該検索要求に対応する検索式に基づいて検索依頼を生成し、該検索依頼に基づいて複数の検索対象データ格納庫に分類して格納されている検索対象データに対して検索処理を実行し、該検索処理の検索結果を前記検索要求の要求元に通知する検索処理システムにおいて、
前記検索要求に対応する検索式から、前記検索対象データが前記検索対象データ格納庫に分類して格納されるときに用いられる分類対象項目と該項目の値を抽出し、該分類対象項目の値に基づいて前記検索式が対象とする前記検索対象データ格納庫を特定する検索対象データ特定処理部と、
１つ以上の前記検索要求に対応する各検索式を、該各検索式に対応して前記検索対象データ特定処理部によって特定される検索対象データ格納庫別に束ね、該検索対象データ格納庫別に該格納庫の識別情報と前記束ねられた各検索式の情報とを含む検索依頼を生成して発行する検索依頼処理部と、
該検索依頼に基づいて、該検索依頼に含まれる前記識別情報に対応する前記検索対象データ格納庫内の前記検索対象データに対して、該検索依頼に含まれる前記各検索式に対応する各検索処理を実行する検索処理部と、
該検索処理部により得られる前記検索結果を、前記検索式毎に振り分けて該検索式毎に対応する各検索要求の要求元に送信する検索結果通知処理部と、
を含むことを特徴とする検索処理システム。
【請求項６】
検索要求を受信し、該検索要求に対応する検索式に基づいて検索依頼を生成し、該検索依頼に基づいて複数の検索対象データ格納庫に分類して格納されている検索対象データに対して実行された検索処理の検索結果を受信し前記検索要求の要求元に通知する検索処理を実行するコンピュータに、
前記検索要求に対応する検索式から、前記検索対象データが前記検索対象データ格納庫に分類して格納されるときに用いられる分類対象項目と該項目の値を抽出し、該分類対象項目の値に基づいて前記検索式が対象とする前記検索対象データ格納庫を特定する検索対象データ特定処理ステップと、
１つ以上の前記検索要求に対応する各検索式を、該各検索式に対応して前記検索対象データ特定処理ステップによって特定される検索対象データ格納庫別に束ね、該検索対象データ格納庫別に該格納庫の識別情報と前記束ねられた各検索式の情報とを含む検索依頼を生成して発行する検索依頼処理ステップと、
該検索依頼に基づいて、該検索依頼に含まれる前記識別情報に対応する前記検索対象データ格納庫内の前記検索対象データに対して実行された、該検索依頼に含まれる前記各検索式に対応する各検索処理により得られる各検索結果を受信し、該各検索結果を前記検索式毎に振り分けて該検索式毎に対応する各検索要求の要求元に送信する検索結果通知処理ステップと、
を実行させるための検索処理プログラム。
【請求項７】
前記検索対象データ特定処理ステップは、前記分類対象項目の値に基づいて、前記検索対象データが前記分類対象項目の値毎に前記複数の検索対象データ格納庫のうちのどの格納庫に格納されるかを示す検索対象データ所在管理簿を参照することにより、前記検索対象データ格納庫を特定する、
ことを特徴とする請求項６に記載の検索処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
開示する技術は、蓄積された大量データの中から目的の情報を検索する技術に関する。
【背景技術】
【０００２】
業務実績の証明やトラブル対処のために、企業活動の結果に加えて、その業務に関する様々なデータを採取・蓄積する時代となり、大量データの中から目的の情報を素早く取り出すことが重要となっている。
【０００３】
目的の情報を検索する第１の従来技術として、リレーショナルデータベースにデータが格納され、要求元の端末装置から検索条件が記述されたクエリ（検索式）が投入されることで、大量データから目的の情報を検索する技術が良く知られている。
【０００４】
目的の情報を検索する第２の従来技術として、下記特許文献１に記載の技術が知られている。この技術では、複数の要求元の端末装置から発行された検索要求が、一定時間溜め込まれた後、それらの検索要求に含まれる検索条件が束ねられて、検索対象データに対する一括検索が実行される。そして、その検索結果が、上記複数の検索要求毎の個別の検索結果に振り分けられて、各個別の検索結果が各要求元の端末装置に返される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−２２２１９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
前述した第１の従来技術においては、予め作成されているインデックスを使用できる検索条件の場合には、検索結果は素早く取り出すことができる。しかし、インデックスを使用できない検索条件の場合、格納されている全てのデータを読み込んでから検索を行うため、格納されているデータのサイズに応じて検索時間が変動する。その結果、格納されているデータのサイズが大きくなるにつれ検索時間が長くなるという問題点を有していた。
【０００７】
更に、複数の端末から検索要求が同時期に発行されると、検索処理が多重で動作してしまい、検索装置に負荷がかかったり、ディスクのＩ／Ｏが競合するようになる。この結果、図３０（ａ）に示されるように、検索装置において検索要求が待たされるため検索時間が長くかかるようになり、検索時間を予測することが困難になってしまうという問題点をも有していた。
【０００８】
一方、前述した第２の従来技術では、図３０（ｂ）に示されるように、複数の端末から検索要求が同時期に発行されても、検索装置によって各検索要求に含まれる検索条件が一定時間毎に束ねられて一括検索が行われる。この結果、検索装置は、１つの端末からの検索要求とほぼ同じ応答時間で、検索結果を複数の端末に返すことができる。つまり、大量の検索対象データに対して１回の全データ読込み（ベタ舐め）を行うだけで、複数の検索条件に対する結果を抽出することができる。従って、図３０（ｂ）に示されるように、検索要求の多重度が上がっても、検索時間の予測が可能であるという特徴を有する。
【０００９】
しかし、第２の従来技術では、検索対象データのデータ量が多くなると、図３１に示されるように、検索処理装置による１回の全データ読込みにかかる時間３１０１が長くなる。この結果、検索要求に対する検索装置の応答時間が長くなってしまうという問題点を有していた。
【００１０】
このような問題点に対して、図３２の３２０１として示されるように、検索対象データが複数のファイルに分割されて検索処理が並行に行われることで、応答時間を短くすることはできる。しかし、検索対象データが複数のファイルに分割されると、以下の課題が発生する。
【００１１】
検索要求元が、ある特定の範囲のデータだけを検索対象としたい場合には、検索対象データのファイル名やデータベースを指定することで、図３３の３３０１として示されるように、検索制御装置が検索対象データの範囲を絞り込むことができる。しかし、この指定を行うためには、検索要求元が、自分が検索したい検索対象データを知っている必要がある。従って、検索対象データのデータ量が多くなると、検索対象となる情報を検索要求元から指定することが困難になる。
【００１２】
更に第２の従来技術による技術を使用するため、図３４に示されるように、検索制御装置が複数の検索要求元からの検索条件を束ねて検索を行う場合、検索対象データに対して束ねた複数の検索式を指定する必要がある。この結果、図３４の３４０１として示されるように、検索対象外のデータに対しても、関係のない検索式に対する検索が行われてしまい、検索処理に無駄が発生する。
【００１３】
開示する技術が解決しようとする課題は、検索において、検索対象データのデータ量が多くなっても、効率的な検索対象データの絞込みと検索条件の指定を可能として、検索処理に要する時間の増大を抑制することにある。
【課題を解決するための手段】
【００１４】
上記課題を解決するために、開示する技術は、検索要求を受信し、該検索要求に対応する検索式に基づいて検索依頼を生成し、該検索依頼に基づいて複数の検索対象データ格納庫に分類して格納されている検索対象データに対して検索処理を実行し、該検索処理の検索結果を前記検索要求の要求元に通知する検索処理方法、システム、又はプログラムを前提とする。
【００１５】
検索対象データ特定処理ステップは、検索要求に対応する検索式から、検索対象データが複数の検索対象データ格納庫に分類して格納されるときに用いられる分類対象項目と該項目の値を抽出し、その分類対象項目の値に基づいて検索式が対象とする検索対象データ格納庫を特定する。
【００１６】
検索依頼処理ステップは、１つ以上の検索要求に対応する各検索式を、各検索式に対応して検索対象データ特定処理ステップによって特定される検索対象データ格納庫別に束ね、その検索対象データ格納庫別にその識別情報と束ねられた各検索式の情報とを含む検索依頼を生成して発行する。
【００１７】
検索処理ステップは、検索依頼に基づいて、その検索依頼に含まれる識別情報に対応する検索対象データ格納庫内の検索対象データに対して、その検索依頼に含まれる各検索式に対応する各検索処理を実行する。
【００１８】
検索結果通知処理ステップは、検索処理ステップにより得られる検索結果を、各検索式毎に振り分けて対応する各検索要求の要求元に送信する。
【発明の効果】
【００１９】
開示する技術によれば、検索対象データの検索範囲を自動的に絞り込むことが可能とな
り、検索要求者は検索対象データの検索範囲を知る必要はない。従って、検索対象データのデータ量が多くなっても、検索対象データの検索範囲を適切に指定することができ、無駄な検索処理が発生しないように制御することが可能となる。
【００２０】
また、検索処理時には、特定された検索対象データに対応する検索処理のみが起動される。このため、検索処理数を大幅に軽減することができ、検索要求者への応答時間を大幅に短縮することが可能となる。
【図面の簡単な説明】
【００２１】
【図１】実施形態の構成図である。
【図２】検索対象データ管理装置における検索対象データ登録処理の動作説明図である。
【図３】検索対象データ管理装置における検索対象データ登録処理の動作例を示す図である。
【図４】検索対象データ管理装置における検索対象データ特定処理の動作説明図である。
【図５】検索対象データ管理装置における検索対象データ特定処理の動作例を示す図である。
【図６】検索制御装置によるマルチファイルの検索処理の動作説明図である。
【図７】検索対象データ管理装置における検索対象データ登録処理を示す動作フローチャートである。
【図８】検索対象データのデータ構成例を示す図である。
【図９】検索対象データ所在管理簿のデータ構成例を示す図（検索対象データ格納庫がファイルの場合）である。
【図１０】検索対象データ所在管理簿のデータ登録例を示す図（検索対象データ格納庫がファイルの場合）である。
【図１１】検索対象データ管理装置における検索対象データ登録処理の例を示す図（検索対象データ格納庫がＣＳＶファイルの場合）である。
【図１２】検索対象データ管理装置における検索対象データ登録処理の例を示す図（検索対象データ格納庫がＸＭＬファイルの場合）である。
【図１３】検索対象データ管理装置における検索対象データ特定処理を示す動作フローチャートである。
【図１４】検索対象データ所在管理簿への問合せ例を示す図（検索対象データ格納庫がファイルの場合その１）である。
【図１５】検索対象データ所在管理簿への問合せ例を示す図（検索対象データ格納庫がファイルの場合その２）である。
【図１６】検索対象データ管理装置における検索対象データ特定処理の例を示す図（検索対象データ格納庫がＣＳＶファイルの場合）である。
【図１７】検索対象データ管理装置における検索対象データ特定処理の例を示す図（検索対象データ格納庫がＸＭＬファイルの場合）である。
【図１８】検索制御装置における検索対象ファイルごとの検索式の登録処理を示す動作フローチャートである。
【図１９】検索制御装置における検索式の束ね処理の動作説明図である。
【図２０】検索制御装置における検索式の束ね処理に用いられるデータ構成例を示す図である。
【図２１】検索処理装置に対する検索依頼処理の動作説明図である。
【図２２】検索制御装置における検索結果の出力ファイルのマージ処理を示す動作フローチャートである。
【図２３】検索要求元への検索結果の通知処理の動作説明図である。
【図２４】検索対象データ所在管理簿のデータ構成例を示す図（検索対象データ格納庫がデータベースの場合）である。
【図２５】検索対象データ所在管理簿のデータ登録例を示す図（検索対象データ格納庫がデータベースの場合）である。
【図２６】検索対象データ管理装置における検索対象データ登録処理の例を示す図（検索対象データ格納庫がデータベースの場合）である。
【図２７】検索対象データ所在管理簿への問合せ例を示す図（検索対象データ格納庫がデータベースの場合）である。
【図２８】検索対象データ管理装置における検索対象データ特定処理の例を示す図（検索対象データ格納庫がデータベースの場合）である。
【図２９】実施形態に基づくプログラムを実行できるコンピュータシステムのハードウェア構成を示す図である。
【図３０】従来技術の説明図である。
【図３１】従来技術の問題点の説明図（その１）である。
【図３２】従来技術の問題点の説明図（その２）である。
【図３３】従来技術の問題点の説明図（その３）である。
【図３４】従来技術の問題点の説明図（その４）である。
【発明を実施するための形態】
【００２２】
以下、実施形態について詳細に説明する。
図１は、実施形態の構成図である。
本実施形態は、検索制御装置１０１、検索対象データ管理装置１０２、検索対象データ所在管理簿１０３、検索対象データ格納庫１０４、及び検索処理装置１０５を含む。
【００２３】
まず、検索対象データ管理装置１０２の動作について説明する。
同装置１０２は、以下の２つの処理を実行する。
・検索対象データ登録処理
・検索対象データ特定処理
【００２４】
まず、検索対象データ管理装置１０２において実行される検索対象データ登録処理について、図２に示される動作説明図に沿って説明する。
（１）事前に、データを分類するための分類条件定義として、分類対象項目と、分類条件が定義される。この分類条件定義は、複数定義することができる。
（２）その後、登録されるべき登録対象データが解析され、その登録対象データ中に、分類条件定義中の分類対象項目が含まれているか確認される。
【００２５】
（３）登録対象データ中に分類対象項目が含まれている場合、登録対象データから分類対象項目の値が取得される。そして、その分類対象項目が含まれる分類条件定義中の分類条件と上記取得された値とに基づいて、登録対象データが格納される検索対象データ格納庫１０４が決定され、登録対象データがその格納庫に格納される。図２の例では、検索対象データ格納庫１０４のＣに登録対象データが格納される。なお、上記分類対象項目及び分類条件に対応する検索対象データ格納庫１０４が存在しない場合には、その格納庫が新規に作成され、そこに登録対象データが格納される。ここで、検索対象データ格納庫１０４とは、データベースの分類されたテーブルや、フォルダ又はディレクトリといった複数のファイルを管理する分類されたデータ格納手段であってもよいし、ファイルであってもよい。ファイルの場合、ファイル形式としてはＣＳＶ形式やＸＭＬ形式が採用でき、分類された各ファイルに登録対象データが追記されていくことになる。
（４）登録対象データ中に何れの分類条件定義中の分類対象項目も含まれていない場合、分類対象無しに対応する検索対象データ格納庫１０４に、登録対象データが格納される。
【００２６】
上述の検索対象データ登録処理において、処理（２）における登録対象データの解析処理、及び処理（３）における検索対象データ格納庫１０４の決定処理のために、検索対象データ所在管理簿１０３を参照することができる。これについては後述する。
【００２７】
図３は、検索対象データ登録処理の動作例を示す図である。まず、登録対象データは例えば、タグによってデータ値が区切られるＸＭＬ文書形式で記述することができる。分類条件定義としては、分類条件定義１、分類条件定義２というように、複数定義することができる。分類条件定義１では、分類対象項目が「／ｄｏｃｕｍｅｎｔ／ａｒｅａ」であり、分類条件として「指定値単位に分類」することが定義される。また、分類条件定義２では、分類対象項目が「／ｄｏｃｕｍｅｎｔ／ｄａｔｅ」であり、分類条件として「月単位に分類」することが定義される。このような分類条件定義に対して、検索対象データ格納庫１０４として、分類対象項目「／ｄｏｃｕｍｅｎｔ／ａｒｅａ」が地域を表す指定値毎に分類され、分類割対象項目「／ｄｏｃｕｍｅｎｔ／ｄａｔｅ」が年月を示す月毎に分類された複数の格納庫が作成され得る。各格納庫は、ＣＳＶ形式やＸＭＬ形式のファイルであったり、データベースの分類されたテーブルであったりする。今例えば、分類対象項目「／ｄｏｃｕｍｅｎｔ／ａｒｅａ」の指定値が「関東」、分類対象項目「／ｄｏｃｕｍｅｎｔ／ｄａｔｅ」の指定値が「２００８０２０２」である登録対象データが登録されるとする。この場合、分類対象項目「／ｄｏｃｕｍｅｎｔ／ａｒｅａ」が「関東」に分類され、分類対象項目「／ｄｏｃｕｍｅｎｔ／ｄａｔｅ」が「２００８年２月」に分類される検索対象データ格納庫１０４に、上記登録対象データが登録される。
【００２８】
次に、検索対象データ管理装置１０２において実行される検索対象データ特定処理について、図４に示される動作説明図に沿って説明する。
まず、検索要求者（要求元端末装置）からの検索要求では、検索式のみが記述されて、検索要求が発行される。図４において、検索要求は「条件1)」と表記されている。
【００２９】
検索要求を受信した検索制御装置１０１は、検索対象データ管理装置１０２に対して、検索式を指定し、検索対象ファイルの特定を依頼する。
依頼を受けた検索対象データ管理装置１０２は、下記の検索対象データ特定処理を実行する。
（１）検索制御装置１０１から検索式が受信される。図４では例えば、条件1)が受信される。
（２）受信された検索式の構文が解析され、その検索式中に、前述の検索対象データ登録処理に先だって事前に定義された分類条件定義中の分類対象項目が含まれているか確認される。
【００３０】
（３）検索式中に分類対象項目が含まれている場合、その検索式から分類対象項目の値が取得される。そして、その分類対象項目が含まれる分類条件定義中の分類条件と上記取得された値とに基づいて、その値が属する検索対象データ格納庫１０４が特定される。検索対象データ格納庫１０４を特定する識別情報は、ファイル名であってもよいし、データベース中のテーブル名や、フォルダ名又はディレクトリ名であってもよい。図４では例えば、Ａ〜Ｚの検索対象データ格納庫１０４のうち、Ａ，Ｂ，及びＣの検索対象データ格納庫１０４が特定される。
【００３１】
（４）上記特定された検索対象データ格納庫１０４の識別情報が、検索制御装置１０１に返される。図４では例えば、Ａ，Ｂ，Ｃという識別情報である。
（５）検索式中に何れの分類条件定義中の分類対象項目も含まれていない場合、検索対
象として全検索対象データを指示する情報が、検索制御装置１０１に返される。
【００３２】
上述の検索対象データ特定処理において、処理（２）における検索式の解析処理、及び処理（３）における検索対象データ格納庫１０４の特定処理のために、検索対象データ所在管理簿１０３を参照することができる。これについては後述する。
【００３３】
上述の検索対象データ管理装置１０２による検索対象データ特定処理を受けて検索制御装置１０１は、以下の処理を実行する。即ち、検索制御装置１０１は、条件1)に対する検索処理として、検索対象データ管理装置１０２から返された識別情報Ａ，Ｂ，Ｃに対応する検索対象データ格納庫１０４のみを検索する検索依頼を、それぞれの格納庫に対応する検索処理装置１０５に対して並列に発行する。このとき、後述するように、検索制御装置１０１は、複数の検索要求者からの検索式を束ねて一括検索を依頼する処理を実行する。この結果、検索制御装置１０１は、各検索処理装置１０５から返される検索結果のうち、条件1)に対応する検索結果を取りまとめて結果1)を生成し、それを検索要求者に返信する。
【００３４】
ここで、検索が実行される検索対象データ格納庫１０４が複数のファイルや、データベースのテーブル、フォルダ又はディレクトリに分割されている。これにより、検索対象データのデータ量が増大しても、データ読込みに伴う応答時間の増大を抑制することができる。
【００３５】
また、検索制御装置１０１は、検索対象データ管理装置１０２から、検索依頼を発行しようとする検索式中の項目値が属する検索対象データの識別情報を受け取ることにより、検索対象データの検索範囲を自動的に絞り込むことができる。図４の例で説明するならば、条件1)に対する検索処理においては、Ａ〜Ｚの検索対象データのうち、Ａ，Ｂ，及びＣのみの検索範囲４０１が指定される。この場合、検索要求者は、検索対象データの検索範囲４０１を知る必要はない。従って、検索対象データのデータ量が多くなっても、検索対象データの検索範囲を適切に指定することができ、無駄な検索処理が発生しない。
【００３６】
更に、検索制御装置１０１は、全ての検索対象データに対応する検索処理装置１０５を起動する必要はなく、図４の例の場合、Ａ，Ｂ，Ｃの検索対象データに対応する検索処理装置１０５のみを起動すればよい。このため、１つの検索処理装置１０５が１つのトランザクションで実行する検索処理数を大幅に削減することができ、検索制御装置１０１から検索要求者への応答時間を大幅に短縮することができる。
【００３７】
図５は、検索対象データ特定処理の動作例を示す図である。今、検索要求者から、図５に示される検索式が発行されたとする。この検索式は、「２００８年１月１日」から「２００８年３月１日」よりも前の日付（／ｄｏｃｕｍｅｎｔ／ｄａｔｅ）を有し、地域（／ｄｏｃｕｍｅｎｔ／ａｒｅａ）が「関東」で、店舗番号（／ｄｏｃｕｍｅｎｔ／ｓｈｏｐｉｄ）が「１２３４５」である検索対象データの検索を要求している。この検索式は、検索制御装置１０１によって一定時間毎に取りまとめられて、検索対象データ管理装置１０２に通知される。検索対象データ管理装置１０２は、前述の検索対象データ特定処理を実行する。この結果、分類対象項目「／ｄｏｃｕｍｅｎｔ／ａｒｅａ」が「関東」に分類され、分類対象項目「／ｄｏｃｕｍｅｎｔ／ｄａｔｅ」が「２００８年１月」及び「２００８年２月」に分類される検索対象データ格納庫１０４の識別情報が得られる。即ち、図５において、識別情報「ｋａｎｔｏ＿２００８０１」及び「ｋａｎｔｏ＿２００８０２」が得られる。これらの識別情報が、検索対象データ管理装置１０２から検索制御装置１０１に返される。これにより、検索制御装置１０１は、上記検索式に対しては、上記識別情報に対応する２つの検索対象データ格納庫１０４に対する検索処理装置１０５のみを指定すればよいことになる。
【００３８】
図６は、図１の検索制御装置１０１が実行するマルチファイルの検索処理を示す動作説明図である。
検索制御装置１０１は、例えばサーバコンピュータ上の常駐プログラムとして実現され、以下の一連の処理を実行する。
【００３９】
（１）検索制御装置１０１はまず、検索要求者からの検索要求を受け付ける。検索制御装置１０１は、複数の検索要求者からの検索要求を受け付けることができる。図６の例では、検索制御装置１０１は、検索要求者１から条件1)を指定した検索要求、検索要求者２から条件2)を指定した検索要求、検索要求者３から条件3)を指定した検索要求を、それぞれ受け付ける。なお、各検索要求者からの検索要求では、１つの検索式が要求されてもよいし、全く異なる検索条件を記述した複数の検索式が一括して要求されてもよい。
【００４０】
（２）次に、検索制御装置１０１は、受け付けた各検索要求に含まれる各検索式毎に、検索対象データ管理装置１０２に検索対象データ特定処理を依頼する。この結果、図６の例では、条件1)の検索式についてはＡ及びＢ、条件2)の検索式についてはＢ及びＣ、条件3)の検索式についてはＺという各検索対象データの範囲を示す各識別情報が、検索対象データ管理装置１０２から検索制御装置１０１に返される。
【００４１】
（３）検索制御装置１０１は、ある一定時間ずつ、検索要求者からの各検索要求及びそれぞれに対応する識別情報を溜め込む。図６の例では、条件１，２，３に対応する各検索要求が溜め込まれる。ここで、ある一定時間は、待ち時間なし（０秒）でもよい。その待ち時間は、検索制御装置１０１において変更できるように構成することができる。
【００４２】
（４）検索制御装置１０１は、ある一定時間の経過後、それまでに受け付けた検索要求の検索式を、識別情報によって識別される検索対象ファイル別に束ねる（検索要求の一体化）。図６の例では、検索対象データＡについては条件1)が、検索対象データＢについては条件1)及び2)が、検索対象データＣについては条件2)が、検索対象データＺについては条件3)が、それぞれ束ねられる。ここで、検索式の束ね処理（検索要求の一体化処理）においては、複数の検索式が１つの検索式に結合されるのではなく、複数の検索式がそのままの状態で保持されて、検索処理装置１０５に対して検索依頼が発行される。
【００４３】
（５）検索制御装置１０１は、各検索処理装置１０５に、検索対象ファイル名と、そのファイルに対して束ねた複数の検索要求（検索式）、及びそれら複数の検索要求に対してそれぞれの検索結果を出力する出力ファイル名とを含む検索依頼を発行する。図６の例では、検索対象データＡ，Ｂ，Ｃ，及びＺのそれぞれに対して１つずつの検索処理装置１０５が割り当てられているが、数が足りない場合には、１つの検索処理装置１０５に対して複数の依頼が順次発行されてもよい。
【００４４】
（６）検索制御装置１０１は、各検索処理装置１０５からの検索結果の応答を待ち合わせる。
（７）検索制御装置１０１は、各検索処理装置１０５から、各束ねた複数の検索要求に対する検索結果を受信し、それぞれの検索要求に対する検索結果を検索要求毎に振り分ける。
【００４５】
（８）検索制御装置１０１は、検索要求が、複数の検索対象データ（例えばファイル）に対するものである場合、全ての検索対象データからの検索結果が得られるまで待ち合わせる。そして、検索制御装置１０１は、各検索要求毎に、検索結果が揃った時点で、検索
要求者に検索結果を通知する。図６の例では、条件1)、2)、3)の各検索要求に対して、結果1)、2)、3)の各検索結果が返される。
【００４６】
次に、図１の検索処理装置１０５の動作について説明する。
検索処理装置１０５は、検索制御装置１０１に対して１つのみが動作してもよいし、複数動作してもよい。また、検索処理装置１０５が動作するサーバコンピュータは、検索制御装置１０１と同じサーバコンピュータであってもよいし、別のものであってもよい。
【００４７】
検索処理装置１０５は、以下の一連の処理を実行する。
（１）検索処理装置１０５は、検索制御装置１０１から、検索依頼を受信する。
（２）検索処理装置１０５は、検索依頼の情報（検索対象ファイル名、１つ以上の検索要求（検索式）、各検索要求に対応して検索結果が出力される出力ファイル名）に基づいて、検索対象データに対して検索処理を実行する。
（３）検索処理装置１０５は、検索処理が終了したら、複数の検索要求に対するそれぞれの検索結果を出力した出力ファイル名を、検索制御装置１０１に送信する。
（４）検索処理装置１０５は、検索制御装置１０１からの次の検索依頼を待つ。
【００４８】
図７は、図２及び図３を用いて前述した図１の検索対象データ管理装置１０２による検索対象データ登録処理が、サーバコンピュータが検索対象データ登録処理プログラムを実行する処理として実現される場合の動作を示す動作フローチャートである。また、図８から図１０は、この動作フローチャートにおいて使用される各データの構成例を示す図である。更に、図１１及び図１２は、この動作フローチャートによる処理例を示す図である。以下、これらの図面に沿って、検索対象データ登録処理の詳細について説明する。
【００４９】
まず図８は、検索対象データとして登録されるべきデータのデータ構成例を示す図である。図８（ａ）は、ＸＭＬ形式のデータ構成例であり、図８（ｂ）は、ＣＳＶ形式のデータ構成例である。実施形態では、どちらのデータ構成も登録可能である。
【００５０】
次に図９（ａ）は、検索対象データ所在管理簿１０３（図１参照）の一部として含まれる、事前に定義される分類条件定義のデータ構成例を示す図である。このデータ構成例は、検索対象データ格納庫１０４が、ファイルとして構成される場合の例である。前述したように、分類条件定義は、複数定義することができる。そして、図９（ａ）に示されるデータ構成例は、１つの分類条件定義に対応するものである。
【００５１】
図９（ａ）において、「分類条件定義名」には、分類条件定義の名称が設定される。
「データ形式」には、登録される検索対象データのデータ形式が設定される。ここでは、“ＣＳＶ”又は“ＸＭＬ”の何れかの形式が設定可能である。
【００５２】
「格納庫の種別」には、検索対象データ格納庫１０４のデータ種別が設定される。図９（ａ）の例では、検索対象データ格納庫１０４はファイルとして実現されるため「ＦＩＬＥ」が設定される。後述する図２４の場合のように、検索対象データ格納庫１０４がデータベースのテーブルとして実現される場合には「ＤＢ」が設定される。
【００５３】
「分類条件項目名」「分類対象項目」「分類条件」は、複数組指定できる。
「分類条件項目名」には、分類条件の名称が設定される。
「分類対象項目」には、登録されるデータ中の分類対象となる項目が設定される。ここには、「データ形式」が”ＣＳＶ”の場合には項目名が設定され、「データ形式」が”Ｘ
ＭＬ”の場合にはＸＭＬのパスが設定される。
【００５４】
「分類条件」には、登録されるデータが格納される格納場所を決定するための条件が指定される。例えば、日付データによる期間指定の分類条件としては「年単位」「月単位」「日単位」等が設定可能である。また、範囲指定の分類条件としては例えば、最大値と最小値で範囲が設定可能である。また、分類条件として「値指定」が設定された場合には、分類項目の値で分類が行われる。
【００５５】
次に、図９（ａ）に示されるような分類条件定義に基づいて、検索対象データ所在管理簿１０３（図１参照）の一部として含まれる、分類対象項目管理テーブルが、図９（ｂ）に示されるようなデータ構成で作成される。実際にはこのテーブルは、データベースのテーブルとして定義される。
【００５６】
図９（ｂ）において、９０１及び９０２等としては、図９（ａ）の「分類対象項目」及び「分類条件」のそれぞれに対応する項目が設定される。例えば、「分類条件」が「値指定」の場合、９０１として値を格納するカラムが定義される。図９（ｂ）の９０１では「地域」というカラムが定義される。また、「分類条件」が期間指定または範囲指定の場合、９０２としてその範囲を示す最小値及び最大値を格納する各カラムが定義される。図９（ｂ）の９０２では「日付＿ＭＩＮ」「日付＿ＭＡＸ」の各カラムが定義される。更に、９０３として、検索対象ファイル名を格納するための「検索対象ファイル」カラムが、必ず１つ定義される。
【００５７】
以上のようにして作成された検索対象データ所在管理簿１０３（分類条件定義及び分類対象項目管理テーブル）を使って、図７の動作フローチャートに基づいて、検索対象データ登録処理が実行される。
【００５８】
まず、登録データの１レコード分が読み込まれる（図７のステップＳ７０１）。登録されるデータは例えば、図１０に示されるようなＣＳＶ形式のデータであり、１つのファイルに複数の登録レコードを含ませることができる。
【００５９】
次に、上記登録データのレコードが解析される（図７のステップＳ７０２）。
上記解析の結果、そのデータレコード中に、分類条件定義中の分類対象項目（図９（ａ）参照）が存在するか否かが判定される（図７のステップＳ７０３）。
【００６０】
データレコード中に分類対象項目が存在しステップＳ７０３の判定がＹＥＳの場合、データレコードから分類対象項目の値が取得される。そして、その分類対象項目が含まれる分類条件定義中の分類条件と上記取得された値とに基づいて、検索対象データ所在管理簿１０３中の分類対象項目管理テーブル（図９（ｂ）参照）への問合せが行われる（図７のステップＳ７０４）。
【００６１】
そして、この問合せの結果、分類対象項目管理テーブル上でレコードが検索できたか否か、即ち、データレコード中の分類対象項目の値に対応する検索対象データ格納庫１０４が存在するか否かが判定される（図７のステップＳ７０５）。
【００６２】
分類対象項目管理テーブルの登録内容は、検索対象データの登録が進むと、例えば図１０に示されるようなものになる。このテーブルの登録内容は、「北海道」「関東」「中部」といった地域別、及び「２００８年０１月０１日〜２００８年０１月３１日」「２００８年０２月０１日〜２００８年０２月２９日」といった月別に、それぞれ検索対象データ格納庫１０４である検索対象ファイルが作成され分類されていることを示している。このテーブルの登録内容は、初期状態では登録レコードは存在しないが、登録されるべき検索対象データの登録が進むに従って、検索対象ファイルが作成されるのに合わせて、それに対応するレコードが順次登録されてゆく。
【００６３】
今例えば、ＣＳＶファイル形式の登録対象データとして、図１１に示されるようなデータレコード「“２００８０１０１”，“北海道”，“００１２６”，“小樽店”，・・・」が登録されようとしているとする。この登録対象データについて、図７のステップＳ７０４において、分類対象項目「ａｒｅａ」の値として“北海道”が、また分類対象項目「ｄａｔｅ」の値として“２００８０１０１”が抽出される。次に、図９（ａ）の分類条件定義が参照される。この結果、図７のステップＳ７０４において、例えば図１０に示される分類対象項目管理テーブル上で、下記の条件で問合せが実行される。
【００６４】
・「地域」カラムの値が分類対象項目「ａｒｅａ」の値“北海道”に等しい
・かつ、「日付＿ＭＩＮ」カラムの値が分類対象項目「ｄａｔｅ」の値“２００８０１０１”以下である。
・かつ、「日付＿ＭＡＸ」カラムの値が分類対象項目「ｄａｔｅ」の値“２００８０１０１”以上である。
【００６５】
この結果、例えば図１０の分類対象項目管理テーブル上の先頭のレコードが抽出され、そのレコードの「検索対象ファイル」カラムから、検索対象データ格納庫１０４である検索対象ファイル名として「ｈｏｋｋａｉｄｏ＿２００８０１．ｃｓｖ」が得られる。これにより、図７のステップＳ７０５の判定がＹＥＳとなって、上記検索対象ファイル名に対応する検索対象ファイル（検索対象データ格納庫１０４）に、登録対象データが追加される（図７のステップＳ７０８）。今、検索対象データ格納庫１０４である検索対象ファイルがＣＳＶ形式の場合には、例えば図１１に示されるような形式で、検索対象ファイル「ｈｏｋｋａｉｄｏ＿２００８０１．ｃｓｖ」へ登録対象データが追記される。
【００６６】
なお、登録対象データ及び検索対象ファイル（＝検索対象データ格納庫１０４）はＸＭＬ形式であってもよく、その場合には例えば図１２に示されるような形式で、ＸＭＬ形式の登録対象データがＸＭＬ形式の検索対象ファイルに追記される。
【００６７】
一方、図７のステップＳ７０４の問合せの結果、分類対象項目管理テーブル上でレコードが抽出されなかった場合には、図７のステップＳ７０５の判定がＮＯとなる。この結果、問合せが行われた分類対象項目の値に対応する検索対象データ格納庫１０４である検索対象ファイルが新規に作成される（図７のステップＳ７０６）。
【００６８】
続いて、分類対象項目管理テーブルに、図１０に示されるようにして、上記問合せが行われた分類対象項目の値に対応するレコードが登録され、そのレコードの「検索対象ファイル」カラムに、上記新規作成された検索対象データ格納庫１０４である検索対象ファイルのファイル名が登録される（図７のステップＳ７０７）。
【００６９】
そして、上記新規作成された検索対象ファイルに、登録対象データが追加される（図７のステップＳ７０８）。
前述の図７のステップＳ７０３の判定において、データレコード中に分類対象項目が存在せず、その判定がＮＯとなった場合には、予め作成されている分類対象無しに対応する全検索対象ファイル（全検索対象データ格納庫）に、登録対象データが格納される（図７のステップＳ７０９）。
【００７０】
以上説明した、図７のステップＳ７０１からＳ７０９までの一連の処理が、登録対象デ
ータの各データレコード数分だけ繰り返し実行される（図７のステップＳ７１０）。
図１３は、図４及び図５を用いて前述した図１の検索対象データ管理装置１０２による検索対象データ特定処理が、サーバコンピュータが検索対象データ特定処理プログラムを実行する処理として実現される場合の動作を示す動作フローチャートである。また、図１４及び図１５は、この動作フローチャートにおいて使用される各データの構成例を示す図である。更に、図１６及び図１７は、この動作フローチャートによる処理例を示す図である。以下、これらの図面に沿って、検索対象データ特定処理の詳細について説明する。
【００７１】
この処理においては、前述の検索対象データ登録処理において作成された検索対象データ所在管理簿１０３（分類条件定義及び分類対象項目管理テーブル）が使用される。
まず、検索制御装置から渡された検索式が解析される（図１３のステップＳ１３０１）（図１６参照）。
【００７２】
上記解析の結果、その検索式中に、分類条件定義中の分類対象項目（図９（ａ）参照）が存在するか否かが判定される（図１３のステップＳ１３０２）。
検索式中に分類対象項目が存在しステップＳ１３０２の判定がＹＥＳの場合、検索式中から１つの分類対象項目の値が選択される。そして、その分類対象項目が含まれる分類条件定義中の分類条件（図９（ａ）参照）と上記取得された値とに基づいて、検索対象データ所在管理簿１０３中の分類対象項目管理テーブル（図９（ｂ）参照）に対して問合せを行うための問合せ条件が決定される（図１３のステップＳ１３０３）。
【００７３】
上記決定された問合せ条件に従って、検索対象データ所在管理簿１０３を構成する分類対象項目管理テーブルに対して問合せが実行される（図１３のステップＳ１３０４）（図１６参照）。
【００７４】
この結果、分類対象項目管理テーブルから抽出されたレコードに対応させて、ヒットフラグが設定される（図１３のステップＳ１３０５）。
今例えば、図１４（ａ）に示されるような検索式が処理されている場合、その検索式から抽出される分類対象項目の値と問合せ条件は図１４（ｂ）に示される如くとなる。更に、図１４（ｃ）に示されるように、検索式から１つの分類対象項目「ｄａｔｅ」の値「２００８０２２１」が選択され、それに対応して「日付＿ＭＡＸが“２００８０２２１”以上」という問合せ条件が決定される。この問合せ条件に基づいて図１４（ｃ）に示されるように分類対象項目管理テーブルに対して問合せが実行される。この結果、図１４（ｃ）の判定結果Ａとして示されるようにして、分類対象項目管理テーブルから抽出されたレコードに対してヒットフラグが設定される。判定結果Ａ中の「○」印が付いたレコードが、ヒットフラグが設定されるレコードである。なお、ヒットフラグの設定は例えば、オンメモリ上の配列データとして実現できる。
【００７５】
以上の図１３のステップＳ１３０３からＳ１３０５までの一連の処理が、検索式中から選択される分類対象項目の数分だけ繰返し実行される。
図１４（ｃ）の例では、判定結果Ｂ、判定結果Ｃの順に、判定結果Ａの場合と同様のヒットフラグの設定処理が実行される。
【００７６】
検索式中の全ての分類対象項目に対するヒットフラグの設定が完了した後、図１３のステップＳ１３０７からＳ１３１２の一連の処理によって、検索式の論理演算子に基づいて分類対象項目毎のヒットフラグが判定される。これにより、検索式が対象とする検索対象データ格納庫１０４である検索対象ファイルを特定するための処理が実行される。
【００７７】
まず、検索式中の複数の分類対象項目の論理演算子に基づいて、分類対象項目毎のヒットフラグ間の判定論理が生成される（図１３のステップＳ１３０７）。例えば図１４の例
では、図１４（ａ）に示される検索式内の論理演算子に基づいて、図１４（ｃ）に示される判定結果Ａ，Ｂ，Ｃにおいて全てヒットフラグが設定されているレコードを特定レコードとする判定論理が生成される。即ち、図１４（ｃ）に示されるように、判定結果Ａ，Ｂ，Ｃにおいて全て「○」印が設定されているレコード（「結果」欄に「○」印が設定されているレコード）が、特定レコードとして選択されることになる。
【００７８】
上記判定論理の生成の後、少なくとも１つのヒットフラグが設定されているレコードが１つ抽出される（図１３のステップＳ１３０８）。
次に、抽出されたレコードに設定されている各ヒットフラグに対して、ステップＳ１３０７で生成された判定論理が実施される（図１３のステップＳ１３０９）。
【００７９】
この結果、抽出されたレコードが特定すべきレコードであるか否かが判定される（図１３のステップＳ１３１０）。
ステップＳ１３１０の判定がＹＥＳならば、抽出されたレコードが特定レコードとして記憶される（図１３のステップＳ１３１１）。
ステップＳ１３１０の判定がＮＯならば、抽出されたレコードは特定レコードとはされない。
【００８０】
以上のステップＳ１３０８からＳ１３１１までの一連の処理が、少なくとも１つのヒットフラグが設定されているレコードが順次抽出されながら、レコード毎に実行される（図１３のステップＳ１３１２）。
【００８１】
以上の処理の結果、最終的に特定レコードとして記憶されている各レコードの「検索対象ファイル」カラムに登録されている各検索対象ファイル名が、図１の検索対象データ管理装置１０２から検索制御装置１０１に通知され、検索対象データ特定処理が終了する（図１３のステップＳ１３１３）（図１６参照）。
【００８２】
図１４（ｃ）の例では、最終的に「ｋａｎｔｏ＿２００８０２．ｃｓｖ」及び「ｋａｎｔｏ＿２００８０３．ｃｓｖ」という２つの検索対象ファイルが特定され、図１の検索制御装置１０１に通知される。
【００８３】
図１５は、より複雑な検索式に対する問合せ例を示す図である。この例では、図１５（ａ）に示される検索式に対して、その検索式から抽出される分類対象項目の値と問合せ条件は図１５（ｂ）に示される如くとなる。これより、図１５（ｃ）に示されるように、判定結果ＡからＥまでのそれぞれに対してヒットフラグが設定される。そして、検索式に基づくヒットフラグの判定論理は、ＡとＢのヒットフラグ（○）が全て付いているレコード、又は、ＣとＤのヒットフラグ（○）が全て付いているレコードのうち、Ｅのヒットフラグ（○）が付いているレコードが、特定レコードとなる。従って、これらの特定レコードより、検索対象ファイル名として、「ｋａｎｔｏ＿２００８０１．ｃｓｖ」及び「ｋａｎｔｏ＿２００８０３．ｃｓｖ」が通知される。
【００８４】
図１６は、検索対象データ格納庫１０４の検索対象ファイルが、ＣＳＶファイルとして構成されている場合の上記処理の流れを示している。これに対して、検索対象ファイルがＸＭＬファイルの場合には、図１７に示されるように、分類対象項目の指定方式がＸＭＬ方式による記述になるだけで、基本的な処理の流れはＣＳＶファイルの場合と同様である。
【００８５】
なお、図１３のステップ１３０１での検索式の解析処理の結果、その検索式には分類条件定義中の分類対象項目が含まれていないと判定されてステップＳ１３０２の判定がＮＯとなった場合には、以下の処理が実行される。即ち、全検索の対象となるファイル名が検
索制御装置１０１に通知されて、検索対象データ特定処理が終了する（図１３のステップＳ１３１４）。
【００８６】
図１８は、図６を用いて前述した図１の検索制御装置１０１によるマルチファイルの検索処理の一部が、サーバコンピュータが検索処理プログラムを実行する処理として実現される場合の動作を示す動作フローチャートである。また、図１９は、この動作フローチャートにおいて使用される各データの構成例を示す図である。更に、図１８は、この動作フローチャートの動作説明図である。以下、これらの図面に沿って、検索処理の詳細について説明する。
【００８７】
まず、特には図示しないが、図６において前述したように、検索制御装置１０１は、複数の検索要求者からの検索要求を順次受け付けることができる。そして、検索制御装置１０１は、受け付けた各検索要求に含まれる検索式毎に、検索対象データ管理装置１０２に検索対象データ特定処理を依頼する。この結果、検索対象とすべき検索対象ファイル名が、検索対象データ管理装置１０２から検索制御装置１０１に返される。
【００８８】
検索制御装置１０１は、検索要求毎に、図２０（ａ）に示される要求元情報管理表を保持する。この表には、検索要求毎に、要求元（端末装置）を特定する要求元ＩＤと、検索式の記憶アドレスへのポインタと、検索対象データ管理装置１０２から返答されたその検索要求が対象とする検索対象ファイル名の記憶アドレスへのポインタが保持される。要求元情報管理表は例えば、構造体データとして実現することができる。
【００８９】
この結果、図１９の上半分に示されるように、検索制御装置１０１は、要求元情報管理表によって、検索要求元毎に、検索式と、検索対象データ管理装置１０２から返答された１つ以上の検索対象ファイル名を管理することになる。
【００９０】
以上の管理を実行しながら、検索制御装置１０１は更に、図１８に示される動作フローチャートのプログラムを実行する。
検索制御装置１０１は、前述したように、ある一定時間ずつ、各検索要求元からの検索要求を、上記要求元情報管理表の形式で溜め込む。
【００９１】
そこでまず、特には図示しないタイマ等の手段を用いて、一定時間検索要求が溜め込まれたか否かが判定される（図１８のステップＳ１８０１）。
一定時間が経過した場合、図１８のステップＳ１８０２からＳ１８０８の一連の処理によって、検索対象ファイル毎に、各検索対象ファイルにアクセスする検索要求の検索式が束ねられる。
【００９２】
これを実現するために、検索制御装置１０１は、図２０（ｂ）に示される検索処理管理表を保持する。この表には、検索対象ファイル毎に、その検索対象ファイルを検索対象として使用する検索要求に関する情報（検索要求情報）へのポインタが保持される。検索要求情報は更に、図２０（ａ）の要求元情報管理表から参照される検索式の記憶アドレスと同一アドレスへのポインタ（図中「丸付数字１」〜「丸付数字３」で表示)、検索結果が出力される出力ファイル名を保持する。検索処理管理表及び検索要求情報は例えば、構造体データとして実現することができる。
【００９３】
この検索処理管理表により、図１９の下半分に示されるように、検索対象ファイル毎に、その検索対象ファイルを検索対象として使用する検索要求の検索式が紐づけられて束ねられることになる。
【００９４】
以下、この束ね処理を実現する図１８のステップＳ１８０２からＳ１８０８の一連の処
理について説明する。
まず、一定時間溜め込まれていた１つの検索要求に対応する要求元情報管理表（図２０（ａ））が参照されることにより、その検索要求に対応する検索対象ファイル名が１つ取得される（図１８のステップＳ１８０２）。
【００９５】
次に、その取得された検索対象ファイル名によって、検索処理管理表（図２０（ｂ））が検索される（図１８のステップＳ１８０３）。
そして、上記検索対象ファイル名に対応する検索処理管理表が存在するか否かが判定される（図１８のステップＳ１８０４）。
【００９６】
もし、上記検索対象ファイル名に対応する検索処理管理表が存在せずステップＳ１８０４の判定がＮＯとなったら、上記検索対象ファイル名に対応する検索処理管理表が作成される（図１８のステップＳ１８０５）。
【００９７】
続いて、図１８のステップＳ１８０６において、ステップＳ１８０３にて検索に成功した検索処理管理表又はステップＳ１８０５にて新たに作成された検索処理管理表に、新たに検索要求情報が作成されて結合される（図２０（ｂ）参照）。この検索要求情報には、現在処理中の検索要求の検索式の記憶アドレスへのポインタと、検索結果が出力される出力ファイル名が設定される。上記ポインタは、現在処理中の検索要求の要求元情報管理表（図２０（ａ））から得ることができる。
【００９８】
以上の処理により、現在処理中の検索要求において選択された１つの検索対象ファイルについて、その検索対象ファイルに現在処理中の検索要求の検索式が束ねられる。
次に、図１８のステップＳ１８０２の処理に戻り、現在処理中の検索要求に対応する要求元情報管理表（図２０（ａ））が再度参照されることにより、その検索要求に対応する他の検索対象ファイル名が更に取得される。そして、その新たに選択された検索対象ファイルに対して、現在処理中の検索要求の検索式を束ねる処理が、上記と同様にして実行される。このような処理が、現在処理中の検索要求に対応する要求元情報管理表（図２０（ａ））上で、全ての検索対象ファイルが選択されるまで繰り返し実行される（図１８のステップＳ１８０７）。
【００９９】
このようにして１つの検索要求に対して、それが使用する各検索対象ファイルに、その検索要求を束ねる処理が完了したら、図１８のステップＳ１８０２の処理に戻り、一定時間溜め込まれている他の検索要求について、上記と同様の処理が実行される。このような処理が、一定時間溜め込まれた全ての検索要求について処理されるまで繰り返し実行される（図１８のステップＳ１８０８）。
【０１００】
そして、一定時間溜め込まれた全ての検索要求について処理が完了すると、図１８のステップＳ１８０１の次の一定時間の待機処理に戻る。
以上の処理により、図１９において例えば、検索対象ファイル「Ｄ：￥ｄａｔａ￥ｋａｎｔｏ＿２００８０１．ｃｓｖ」には、要求元１の検索式のみが束ねられる。また、検索対象ファイル「Ｄ：￥ｄａｔａ￥ｋａｎｔｏ＿２００８０３．ｃｓｖ」等には、要求元２の検索式のみが束ねられる。一方、検索対象ファイル「Ｄ：￥ｄａｔａ￥ｋａｎｔｏ＿２００８０５．ｃｓｖ」等には、要求元２と要求元３の検索式が束ねられる。
【０１０１】
以上のようにして、図１の検索制御装置１０１において、検索対象ファイル毎の束ね処理が完了すると、検索制御装置１０１は、図２０（ｂ）の検索処理管理表を順次参照する。これにより、検索制御装置１０１は、検索対象ファイル名と、そのファイルに対して束ねられている１つ以上の検索式、及び各検索式に対する検索結果を出力する出力ファイル名を含む検索依頼を順次生成し、それを適切な検索処理装置１０５（図１）に対して順次発行する。
【０１０２】
なお、検索制御装置１０１と検索処理装置１０５が同一のサーバコンピュータ上で実行される場合には、上記検索依頼における検索式の通知は、各検索式の記憶アドレスへのポインタ情報の通知によって行われるように実現されてもよい。
【０１０３】
この結果、例えば図２１に示されるように、＃１の検索処理装置１０５に対しては、検索対象ファイル名「Ｄ：￥ｄａｔａ￥ｋａｎｔｏ＿２００８０１．ｃｓｖ」と、要求元１の検索式と、要求元１に対する出力ファイル名を含む検索依頼が発行される。これを受けて＃１の検索処理装置１０５は、検索対象データ格納庫１０４（図１）である検索対象ファイル「Ｄ：￥ｄａｔａ￥ｋａｎｔｏ＿２００８０１．ｃｓｖ」に対して、要求元１の検索式による検索処理を実行する。そして、＃１の検索処理装置１０５は、要求元１の検索式による検索の結果を、要求元１に対して指定された出力ファイル名の検索結果ファイルに出力する。
【０１０４】
同様に、＃２の検索処理装置１０５に対しては、検索対象ファイル名「Ｄ：￥ｄａｔａ￥ｋａｎｔｏ＿２００８０２．ｃｓｖ」と、要求元１の検索式及び要求元２の検索式と、要求元１及び２にそれぞれ対する各出力ファイル名を含む検索依頼が発行される。これを受けて＃２の検索処理装置１０５は、検索対象ファイル「Ｄ：￥ｄａｔａ￥ｋａｎｔｏ＿２００８０２．ｃｓｖ」に対して、要求元１の検索式による検索処理と要求元２の検索式による検索処理をそれぞれ実行する。そして、＃２の検索処理装置１０５は、要求元１及び２の各検索式による各検索の結果を、要求元１及び２に対してそれぞれ指定された各出力ファイル名の検索結果ファイルにそれぞれ出力する。
【０１０５】
ここで、図２１の例において、現在、＃１から＃４までの４つの検索処理装置１０５に対して４つの検索依頼（図２１のグレーの部分）が発行されており、５つ目以降の検索依頼は発行待ちの状態にある場合を考える。この場合に、５つ目以降の検索依頼に対応する検索対象ファイルについて、新たな検索要求（図２１の要求元４及び５）が発生した場合には、その検索対象ファイルにそれらの新たな検索要求の検索式を更に束ねることが可能である。これにより、更なる検索処理待ち時間の短縮を図ることができる。
【０１０６】
検索処理装置１０５は、検索が正常に終了すると、検索結果ファイルのファイル名を、検索依頼の発行元の検索制御装置１０１に返す。
前述したように、検索制御装置１０１は、各検索処理装置１０５から、各束ねた複数の検索要求に対する検索結果を受信し、それぞれの検索要求に対する検索結果を検索要求毎に振り分ける。このとき、検索制御装置１０１は、検索要求が、複数の検索対象ファイルを対象とするものである場合、全ての検索処理装置１０５からの検索結果が得られるまで待ち合わせる。そして、検索制御装置１０１は、検索要求毎に、検索結果が揃った時点で、検索要求者に検索結果を通知する。
【０１０７】
この場合に、要求元の端末装置又は検索制御装置１０１は、１つの検索要求に対して、複数の検索対象ファイルに対する各検索結果が格納されている各検索結果ファイルの情報（出力ファイル名等）を、そのまま要求元の端末装置に通知するように指定することができる。或いは、要求元の端末装置又は検索制御装置１０１は、各検索結果ファイルを１つの出力ファイルにマージしてそのマージした出力ファイル名を通知するように指定することもできる。
【０１０８】
図２２は、上述の出力ファイルのマージ処理を実現する検索制御装置１０１の動作を示す動作フローチャートである。また、図２３は、その動作説明図である。
まず、検索制御装置１０１は、検索要求毎に、検索処理装置１０５から検索結果ファイ
ル名を受信する動作を、その検索要求が対象とする検索対象ファイル数分だけ繰り返し実行する（図２２のステップＳ２２０１及びＳ２２０２）。
【０１０９】
次に、検索制御装置１０１は、検索結果ファイルをマージ（１ファイルに）するか否かを判定する（図２２のステップＳ２２０３）。例えば、要求元の端末装置では、検索要求時にマージ指定の有無を指定でき、或いは、サーバ管理者がデフォルト設定として、マージ指定の有無を設定できる。
【０１１０】
マージ指定がされておらずステップＳ２２０３の判定がＮＯならば、検索制御装置１０１は、検索要求に対して、その検索要求が対象とする検索対象ファイル数分、作成された検索結果ファイル名を、そのまま要求元に送信する（図２２のステップＳ２２０８）。要求元の端末装置は、通知された検索結果ファイル名に基づいて、ネットワークフォルダ上等に格納されている検索結果ファイルにアクセスする。
【０１１１】
図２３に示される例では、要求元１からの検索要求に対して、＃１の検索処理装置１０５から検索制御装置１０１に対して、検索結果ファイル名として「結果＿要求元１＿処理装置１．ｃｓｖ」が返される（図２３の1)）。また、＃２の検索処理装置１０５からも同様に、検索結果ファイル名として「結果＿要求元１＿処理装置２．ｃｓｖ」が返される。要求元１についてマージ指定がなされていなければ、検索制御装置１０１は、上記２つの検索結果ファイル名を、それぞれ要求元１からの検索要求に対する検索結果として返す（図２３の2)）。
【０１１２】
一方、マージ指定がされていてステップＳ２２０３の判定がＹＥＳならば、検索制御装置１０１は、まず、検索要求に対して、マージファイルを新規作成する（図２２のステップＳ２２０４）。
【０１１３】
次に、検索制御装置１０１は、上記マージファイルに対して各検索結果ファイルの情報を出力（追記書き）する動作を、検索要求が対象とする検索対象ファイル数分繰り返し実行する（図２２のステップＳ２２０５及びＳ２２０６）。
そして、検索制御装置１０１は、各検索結果ファイルを削除した後、上記マージファイルのファイル名を、要求元に送信する（図２２のステップＳ２２０７）。
【０１１４】
図２３に示される例では、要求元２からの検索要求に対して、＃２の検索処理装置１０５から検索制御装置１０１に対して、検索結果ファイル名として「結果＿要求元２＿処理装置２．ｃｓｖ」が返される。また、＃３の検索処理装置１０５からも同様に、検索結果ファイル名として「結果＿要求元２＿処理装置３．ｃｓｖ」が返される。要求元２についてマージ指定がなされていれば、検索制御装置１０１は、上記２つの検索結果ファイルに対してマージ処理を実行する（図２３の3)）。そして、検索制御装置１０１は、マージファイル「結果＿要求元２．ｃｓｖ」を生成し、そのファイル名を要求元２からの検索要求に対する検索結果として返す（図２３の4)）。
以上のようにして、要求元や運用者の要望に応じて、検索結果を加工して返信することができる。
【０１１５】
図２４は、図１の検索対象データ格納庫１０４が、データベースのテーブルとして構成される場合における、分類条件定義（同図（ａ））及び分類対象項目管理テーブル（同図（ｂ））のデータ構成例を示す図である。
【０１１６】
基本的な構成は、検索対象データ格納庫１０４がファイルによって構成される場合における図９（ａ）及び（ｂ）の場合と同じである。異なる点は、分類条件定義における格納庫の種別が「ＦＩＬＥ」ではなくデータベースを表す「ＤＢ」である点、及び分類対象項
目管理テーブルに、「検索対象ファイル」カラムではなく「検索対象テーブル」カラムが設定される点である。
【０１１７】
図２５及び図２６に示される検索対象データ登録処理の動作も、検索対象データ格納庫１０４がファイルではなくデータベースのテーブルである点が異なるだけで、図１０及び図１１の場合と同様であり、図７の動作フローチャートに基づいて動作する。
【０１１８】
更に、図２７及び図２８に示される検索対象データ特定処理の動作も、検索対象データ格納庫１０４がファイルではなくデータベースのテーブルである点が異なるだけで、図１４や図１６の場合と同様であり、図１３の動作フローチャートに基づいて動作する。
【０１１９】
図２９は、上述した実施形態による検索システムを実現できるコンピュータのハードウェア構成の一例を示す図である。
図２９に示されるコンピュータは、ＣＰＵ２９０１、メモリ２９０２、入力装置２９０３、出力装置２９０４、外部記憶装置２９０５、可搬記録媒体２９０９が挿入される可搬記録媒体駆動装置２９０６、及びネットワーク接続装置２９０７を有し、これらがバス２９０８によって相互に接続された構成を有する。同図に示される構成は上記システムを実現できるコンピュータの一例であり、そのようなコンピュータはこの構成に限定されるものではない。
【０１２０】
ＣＰＵ２９０１は、当該コンピュータ全体の制御を行う。メモリ２９０２は、プログラムの実行、データ更新等の際に、外部記憶装置２９０５（或いは可搬記録媒体２９０９）に記憶されているプログラム又はデータを一時的に格納するＲＡＭ等のメモリである。ＣPＵ２９０１は、プログラムをメモリ２９０２に読み出して実行することにより、全体の制御を行う。
【０１２１】
入力装置２９０３は、例えば、キーボード、マウス等及びそれらのインタフェース制御装置とからなる。入力装置２９０３は、ユーザによるキーボードやマウス等による入力操作を検出し、その検出結果をＣＰＵ２９０１に通知する。
【０１２２】
出力装置２９０４は、表示装置、印刷装置等及びそれらのインタフェース制御装置とからなる。出力装置２９０４は、ＣＰＵ２９０１の制御によって送られてくるデータを表示装置や印刷装置に出力する。
【０１２３】
外部記憶装置２９０５は、例えばハードディスク記憶装置である。主に各種データやプログラムの保存に用いられる。
可搬記録媒体駆動装置２９０６は、光ディスクやＳＤＲＡＭ、コンパクトフラッシュ(登録商標）等の可搬記録媒体２９０９を収容するもので、外部記憶装置２９０５の補助の役割を有する。
【０１２４】
ネットワーク接続装置２９０７は、例えばＬＡＮ（ローカルエリアネットワーク）又はＷＡＮ（ワイドエリアネットワーク）の通信回線を接続するための装置である。
本実施形態によるシステムは、前述した図７、図１３、図１８、及び図２２等の動作フローチャートによって実現される処理機能を搭載したプログラムをＣＰＵ２９０１が実行することで実現される。そのプログラムは、例えば外部記憶装置２９０５や可搬記録媒体２９０９に記録して配布してもよく、或いはネットワーク接続装置２９０７によりネットワークから取得できるようにしてもよい。
【０１２５】
以上の実施形態に関して、更に以下の付記を開示する。
（付記１）
検索要求を受信し、該検索要求に対応する検索式に基づいて検索依頼を生成し、該検索依頼に基づいて複数の検索対象データ格納庫に分類して格納されている検索対象データに対して検索処理を実行し、該検索処理の検索結果を前記検索要求の要求元に通知する検索処理方法において、
前記検索要求に対応する検索式から、前記検索対象データが前記複数の検索対象データ格納庫に分類して格納されるときに用いられる分類対象項目と該項目の値を抽出し、該分類対象項目の値に基づいて前記検索式が対象とする前記検索対象データ格納庫を特定する検索対象データ特定処理ステップと、
１つ以上の前記検索要求に対応する各検索式を、該各検索式に対応して前記検索対象データ特定処理ステップによって特定される検索対象データ格納庫別に束ね、該検索対象データ格納庫別に該格納庫の識別情報と前記束ねられた各検索式の情報とを含む検索依頼を生成して発行する検索依頼処理ステップと、
該検索依頼に基づいて、該検索依頼に含まれる前記識別情報に対応する前記検索対象データ格納庫内の前記検索対象データに対して、該検索依頼に含まれる前記各検索式に対応する各検索処理を実行する検索処理ステップと、
該検索処理ステップにより得られる前記検索結果を、前記検索式毎に振り分けて該検索式毎に対応する各検索要求の要求元に送信する検索結果通知処理ステップと、
を含むことを特徴とする検索処理方法。
（付記２）
前記検索対象データ特定処理ステップは、前記分類対象項目の値に基づいて、前記検索対象データが前記分類対象項目の値毎に前記複数の検索対象データ格納庫のうちのどの格納庫に格納されるかを示す検索対象データ所在管理簿を参照することにより、前記検索対象データ格納庫を特定する、
ことを特徴とする付記１に記載の検索処理方法。
（付記３）
前記検索対象データ格納庫は、前記検索対象データを書き込んだ検索対象ファイルである、
ことを特徴とする付記１又は２の何れか１項に記載の検索方法。
（付記４）
前記検索対象データ格納庫は、前記検索対象データを格納したデータベースの検索対象テーブルである、
ことを特徴とする付記１又は２の何れか１項に記載の検索処理方法。
（付記５）
検索要求を受信し、該検索要求に対応する検索式に基づいて検索依頼を生成し、該検索依頼に基づいて複数の検索対象データ格納庫に分類して格納されている検索対象データに対して検索処理を実行し、該検索処理の検索結果を前記検索要求の要求元に通知する検索処理システムにおいて、
前記検索要求に対応する検索式から、前記検索対象データが前記検索対象データ格納庫に分類して格納されるときに用いられる分類対象項目と該項目の値を抽出し、該分類対象項目の値に基づいて前記検索式が対象とする前記検索対象データ格納庫を特定する検索対象データ特定処理部と、
１つ以上の前記検索要求に対応する各検索式を、該各検索式に対応して前記検索対象データ特定処理部によって特定される検索対象データ格納庫別に束ね、該検索対象データ格納庫別に該格納庫の識別情報と前記束ねられた各検索式の情報とを含む検索依頼を生成して発行する検索依頼処理部と、
該検索依頼に基づいて、該検索依頼に含まれる前記識別情報に対応する前記検索対象データ格納庫内の前記検索対象データに対して、該検索依頼に含まれる前記各検索式に対応する各検索処理を実行する検索処理部と、
該検索処理部により得られる前記検索結果を、前記検索式毎に振り分けて該検索式毎に対応する各検索要求の要求元に送信する検索結果通知処理部と、
を含むことを特徴とする検索処理システム。
（付記６）
前記検索対象データ特定処理部は、前記分類対象項目の値に基づいて、前記検索対象データが前記分類対象項目の値毎に前記複数の検索対象データ格納庫のうちのどの格納庫に格納されるかを示す検索対象データ所在管理簿を参照することにより、前記検索対象データ格納庫を特定する、
ことを特徴とする付記５に記載の検索処理システム。
（付記７）
前記検索対象データ格納庫は、前記検索対象データを書き込んだ検索対象ファイルである、
ことを特徴とする付記５又は６の何れか１項に記載の検索処理システム。
（付記８）
前記検索対象データ格納庫は、前記検索対象データを格納したデータベースの検索対象テーブルである、
ことを特徴とする付記５又は６の何れか１項に記載の検索処理システム。
（付記９）
検索要求を受信し、該検索要求に対応する検索式に基づいて検索依頼を生成し、該検索依頼に基づいて複数の検索対象データ格納庫に分類して格納されている検索対象データに対して実行された検索処理の検索結果を受信し前記検索要求の要求元に通知する検索処理を実行するコンピュータに、
前記検索要求に対応する検索式から、前記検索対象データが前記検索対象データ格納庫に分類して格納されるときに用いられる分類対象項目と該項目の値を抽出し、該分類対象項目の値に基づいて前記検索式が対象とする前記検索対象データ格納庫を特定する検索対象データ特定処理ステップと、
１つ以上の前記検索要求に対応する各検索式を、該各検索式に対応して前記検索対象データ特定処理ステップによって特定される検索対象データ格納庫別に束ね、該検索対象データ格納庫別に該格納庫の識別情報と前記束ねられた各検索式の情報とを含む検索依頼を生成して発行する検索依頼処理ステップと、
該検索依頼に基づいて、該検索依頼に含まれる前記識別情報に対応する前記検索対象データ格納庫内の前記検索対象データに対して実行された、該検索依頼に含まれる前記各検索式に対応する各検索処理により得られる各検索結果を受信し、該各検索結果を前記検索式毎に振り分けて該検索式毎に対応する各検索要求の要求元に送信する検索結果通知処理ステップと、
を実行させるための検索処理プログラム。
（付記１０）
前記検索対象データ特定処理ステップは、前記分類対象項目の値に基づいて、前記検索対象データが前記分類対象項目の値毎に前記複数の検索対象データ格納庫のうちのどの格納庫に格納されるかを示す検索対象データ所在管理簿を参照することにより、前記検索対象データ格納庫を特定する、
ことを特徴とする付記９に記載の検索処理プログラム。
【産業上の利用可能性】
【０１２６】
開示する技術は、一般ファイル又はデータベースに格納されて蓄積されたデータに対して、プロファイリング、クレンジング、ログ解析、ログ証跡などのデータ操作を実施するシステム又はプログラムに利用することができる。
【符号の説明】
【０１２７】
１０１  検索制御装置
１０２  検索対象データ管理装置
１０３  検索対象データ所在管理簿
１０４  検索対象データ格納庫
１０５  検索処理装置
【図７】
2010165170.tif 000003
【図１３】
2010165170.tif 000004
【図１６】
2010165170.tif 000005
【図１７】
2010165170.tif 000006
【図１８】
2010165170.tif 000007
【図１９】
2010165170.tif 000008
【図２２】
2010165170.tif 000009
【図２８】
2010165170.tif 000010
【図２９】
2010165170.tif 000011
【図１】
2010165170.tif 000012
【図２】
2010165170.tif 000013
【図３】
2010165170.tif 000014
【図４】
2010165170.tif 000015
【図５】
2010165170.tif 000016
【図６】
2010165170.tif 000017
【図８】
2010165170.tif 000018
【図９】
2010165170.tif 000019
【図１０】
2010165170.tif 000020
【図１１】
2010165170.tif 000021
【図１２】
2010165170.tif 000022
【図１４】
2010165170.tif 000023
【図１５】
2010165170.tif 000024
【図２０】
2010165170.tif 000025
【図２１】
2010165170.tif 000026
【図２３】
2010165170.tif 000027
【図２４】
2010165170.tif 000028
【図２５】
2010165170.tif 000029
【図２６】
2010165170.tif 000030
【図２７】
2010165170.tif 000031
【図３０】
2010165170.tif 000032
【図３１】
2010165170.tif 000033
【図３２】
2010165170.tif 000034
【図３３】
2010165170.tif 000035
【図３４】
2010165170.tif 000036