(57)【要約】【課題】利用者からみた登録・削除の処理時間が短い全文検索装置。【解決手段】登録処理手段３ではテキスト分割手段６にて文書データから部分文字列へ分割し、文書データ記憶部７，登録用小規模全文索引記憶部９に対し登録処理する。削除処理手段４では入力された文書識別子に基づき、記憶部７から文書データを読み出し、分割手段６にて部分文字列へ分割し、記憶部９の索引の場合にはそれを削除し、違う場合には削除用小規模全文索引記憶部１０にその索引を記録することで削除処理する。検索処理手段５では分割手段６にて検索文字列から部分文字列へ分割し、検索用大規模全文索引記憶部８及び記憶部９の検索結果から記憶部１０の検索結果を差し引き検索結果として出力する。マージ手段１１では各記憶部８〜１０間でデータを転送するが、マージ時間記憶部１２に記憶のデータ転送時間が予め指定された時間を超えた場合には次回の転送の開始条件を変更する。【選択図】　　　　図１
2004013764.tif 000002
【特許請求の範囲】
【請求項１】
複数の文書データから指定された文字列を含む文書を検索する全文検索装置において、登録された文書データを保存する文書データ記憶部と、検索用の全文索引記憶部と、文書データに関する登録処理を行う登録処理手段と、文書データに関する削除処理を行う削除処理手段と、検索処理を行う検索処理手段とを有し、登録用の全文索引記憶部と、削除用の全文索引記憶部とを、前記検索用の全文索引記憶部とは別に有し、さらに、前記登録用の全文索引記憶部及び削除用の全文索引記憶部から前記検索用の全文索引記憶部へ、全文索引の構成要素である転置リストごとにデータを移すデータ転送手段を有し、前記データ転送手段は、前記登録用の全文索引記憶部に登録された文書データ件数が予め指定された件数に達することをデータ転送開始条件として、前記検索用の全文索引記憶部にデータを移す処理を行う全文検索装置であって、
前記登録用の全文索引記憶部から前記検索用の全文索引記憶部へのデータ転送に要するデータ転送時間を記録するデータ転送時間記憶部を有し、
前記データ転送手段は、前記データ転送時間が予め指定された時間を超えた場合には、次回のデータ転送の前記開始条件を変更することを特徴とする全文検索装置。
【請求項２】
複数の文書データから指定された文字列を含む文書を検索する全文検索装置において、登録された文書データを保存する文書データ記憶部と、検索用の全文索引記憶部と、文書データに関する登録処理を行う登録処理手段と、文書データに関する削除処理を行う削除処理手段と、検索処理を行う検索処理手段とを有し、登録用の全文索引記憶部と、削除用の全文索引記憶部とを、前記検索用の全文索引記憶部とは別に有し、さらに、前記登録用の全文索引記憶部及び削除用の全文索引記憶部から前記検索用の全文索引記憶部へ、全文索引の構成要素である転置リストごとにデータを移すデータ転送手段を有し、前記データ転送手段は、前記登録用の全文索引記憶部の容量が予め指定された容量に達することをデータ転送開始条件として、前記検索用の全文索引記憶部にデータを移す処理を行う全文検索装置であって、
前記登録用の全文索引記憶部から前記検索用の全文索引記憶部へのデータ転送に要するデータ転送時間を記録するデータ転送時間記憶部を有し、
前記データ転送手段は、前記データ転送時間が予め指定された時間を超えた場合には、次回のデータ転送の前記開始条件を変更することを特徴とする全文検索装置。
【請求項３】
複数の文書データから指定された文字列を含む文書を検索する全文検索装置において、登録された文書データを保存する文書データ記憶部と、検索用の全文索引記憶部と、文書データに関する登録処理を行う登録処理手段と、文書データに関する削除処理を行う削除処理手段と、検索処理を行う検索処理手段とを有し、登録用の全文索引記憶部と、削除用の全文索引記憶部とを、前記検索用の全文索引記憶部とは別に有し、さらに、前記登録用の全文索引記憶部及び削除用の全文索引記憶部から前記検索用の全文索引記憶部へ、全文索引の構成要素である転置リストごとにデータを移すデータ転送手段を有し、前記データ転送手段は、前記削除用の全文索引記憶部に登録された文書データ件数が予め指定された件数に達することをデータ転送開始条件として、前記検索用の全文索引記憶部にデータを移す処理を行う全文検索装置であって、
前記削除用の全文索引記憶部から前記検索用の全文索引記憶部へのデータ転送に要するデータ転送時間を記録するデータ転送時間記憶部を有し、
前記データ転送手段は、前記データ転送時間が予め指定された時間を超えた場合には、次回のデータ転送の前記開始条件を変更することを特徴とする全文検索装置。
【請求項４】
複数の文書データから指定された文字列を含む文書を検索する全文検索装置において、登録された文書データを保存する文書データ記憶部と、検索用の全文索引記憶部と、文書データに関する登録処理を行う登録処理手段と、文書データに関する削除処理を行う削除処理手段と、検索処理を行う検索処理手段とを有し、登録用の全文索引記憶部と、削除用の全文索引記憶部とを、前記検索用の全文索引記憶部とは別に有し、さらに、前記登録用の全文索引記憶部及び削除用の全文索引記憶部から前記検索用の全文索引記憶部へ、全文索引の構成要素である転置リストごとにデータを移すデータ転送手段を有し、前記データ転送手段は、前記削除用の全文索引記憶部の容量が予め指定された容量に達することをデータ転送開始条件として、前記検索用の全文索引記憶部にデータを移す処理を行う全文検索装置であって、
前記削除用の全文索引記憶部から前記検索用の全文索引記憶部へのデータ転送に要するデータ転送時間を記録するデータ転送時間記憶部を有し、
前記データ転送手段は、前記データ転送時間が予め指定された時間を超えた場合には、次回のデータ転送の前記開始条件を変更することを特徴とする全文検索装置。
【請求項５】
コンピュータを、請求項１乃至４のいずれか１記載の全文検索装置として機能させるためのプログラム。
【請求項６】
請求項５記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、全文検索装置、プログラム、及び記録媒体に関し、より詳細には、複数の文書データから指定された文字列を含む文書を検索する全文検索装置、プログラム、及び記録媒体に関する。本発明は、例えば文書管理システム、電子図書館システム、特許公報検索システムなど、多量の文書データを管理するシステムに適用可能である。
【０００２】
【従来の技術】
近年、情報通信技術の発達により電子化された文書及びその文書に関する情報がインターネットなどを介して大量に流通している。この電子化文書及び情報の流通に際し、所望の文書を精度よく、さらには高速に検索する文書検索装置が提案されている。
【０００３】
そのような文書検索装置においてはキーワード検索手法や全文検索手法が用いられている。全文検索手法を用いた全文検索装置は、任意の検索文字列と検索対象の文書全てとの間で照合を行なって、検索文字列を含む文書を漏れなく抽出する装置であり、キーワード検索手法のように検索対象となる全ての文書に対してキーワードを予め付与するといった多大な人力が必要ない。全文検索装置としては、様々な種類のものが提案されているが、その１種として転置（索引）ファイル方式を採用した装置がある。転置ファイル方式では、検索のための補助ファイルとして、文字／単語／ｎ−ｇｒａｍ（ｎ文字連接）などが出現する文書、或いはそれらの文書中の出現位置を記録する転置ファイルを予め構築し、全文検索時には、転置ファイルのみを用いて検索するもので非常に高速な検索を行なうことが可能であり大量文書の高速検索が要求されるシステムに対して有効である。
【０００４】
なお、全文検索方式一般、転置ファイル方式の詳細については、特開平１１−０７３４２９号公報の従来技術や、全文検索システム協議会平成１０年度活動報告（ｈｔｔｐ：／／ｗｗｗ．ｆｔｓａｎｅｔ．ｃｏｍ／ｄｂｔｏｋｙｏ９９／Ｄｂ９９．ｈｔｍ）などで述べられており、公知であるのでその説明を省略する。
【０００５】
転置ファイル方式を採用した従来技術として、特許第３０２４５４４号公報には、検索用インデックスファイルとは別にリアルタイム処理データを記憶することにより、検索用インデックスファイルを更新中であっても検索処理を行うことが可能な情報検索装置が記載されている。また、特開平７−１４６８８０号公報には、新規文書を登録する際に、主インデックスよりも小さな副インデックスに登録し、登録時間を短くすることが可能な文書検索装置及び方法が記載されている。
【０００６】
しかしながら、上述した公報も含め、転置ファイル方式では、通常原データの数倍にも及ぶ転置ファイルを構築する必要があり、転置ファイル方式の全文索引は登録されている文書データ量が多くなるにしたがって登録・削除処理に時間を要するようになり、全文検索装置としては利用者側からみた登録・削除処理のレスポンスタイムが長くなる。
【０００７】
【発明が解決しようとする課題】
本発明は、上述のごとき実情に鑑みてなされたものであり、利用者側からみた登録及び削除処理のレスポンスタイムを短くすることが可能な、全文検索装置、コンピュータをその装置として機能させるためのプログラム、及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体を提供することをその目的とする。
【０００８】
【課題を解決するための手段】
請求項１の発明は、複数の文書データから指定された文字列を含む文書を検索する全文検索装置において、登録された文書データを保存する文書データ記憶部と、検索用の全文索引記憶部と、文書データに関する登録処理を行う登録処理手段と、文書データに関する削除処理を行う削除処理手段と、検索処理を行う検索処理手段とを有し、登録用の全文索引記憶部と、削除用の全文索引記憶部とを、前記検索用の全文索引記憶部とは別に有し、さらに、前記登録用の全文索引記憶部及び削除用の全文索引記憶部から前記検索用の全文索引記憶部へ、全文索引の構成要素である転置リストごとにデータを移すデータ転送手段を有し、前記データ転送手段は、前記登録用の全文索引記憶部に登録された文書データ件数が予め指定された件数に達することをデータ転送開始条件として、前記検索用の全文索引記憶部にデータを移す処理を行う全文検索装置であって、前記登録用の全文索引記憶部から前記検索用の全文索引記憶部へのデータ転送に要するデータ転送時間を記録するデータ転送時間記憶部を有し、前記データ転送手段は、前記データ転送時間が予め指定された時間を超えた場合には、次回のデータ転送の前記開始条件を変更することを特徴としたものである。
【０００９】
請求項２の発明は、複数の文書データから指定された文字列を含む文書を検索する全文検索装置において、登録された文書データを保存する文書データ記憶部と、検索用の全文索引記憶部と、文書データに関する登録処理を行う登録処理手段と、文書データに関する削除処理を行う削除処理手段と、検索処理を行う検索処理手段とを有し、登録用の全文索引記憶部と、削除用の全文索引記憶部とを、前記検索用の全文索引記憶部とは別に有し、さらに、前記登録用の全文索引記憶部及び削除用の全文索引記憶部から前記検索用の全文索引記憶部へ、全文索引の構成要素である転置リストごとにデータを移すデータ転送手段を有し、前記データ転送手段は、前記登録用の全文索引記憶部の容量が予め指定された容量に達することをデータ転送開始条件として、前記検索用の全文索引記憶部にデータを移す処理を行う全文検索装置であって、前記登録用の全文索引記憶部から前記検索用の全文索引記憶部へのデータ転送に要するデータ転送時間を記録するデータ転送時間記憶部を有し、前記データ転送手段は、前記データ転送時間が予め指定された時間を超えた場合には、次回のデータ転送の前記開始条件を変更することを特徴としたものである。
【００１０】
請求項３の発明は、複数の文書データから指定された文字列を含む文書を検索する全文検索装置において、登録された文書データを保存する文書データ記憶部と、検索用の全文索引記憶部と、文書データに関する登録処理を行う登録処理手段と、文書データに関する削除処理を行う削除処理手段と、検索処理を行う検索処理手段とを有し、登録用の全文索引記憶部と、削除用の全文索引記憶部とを、前記検索用の全文索引記憶部とは別に有し、さらに、前記登録用の全文索引記憶部及び削除用の全文索引記憶部から前記検索用の全文索引記憶部へ、全文索引の構成要素である転置リストごとにデータを移すデータ転送手段を有し、前記データ転送手段は、前記削除用の全文索引記憶部に登録された文書データ件数が予め指定された件数に達することをデータ転送開始条件として、前記検索用の全文索引記憶部にデータを移す処理を行う全文検索装置であって、前記削除用の全文索引記憶部から前記検索用の全文索引記憶部へのデータ転送に要するデータ転送時間を記録するデータ転送時間記憶部を有し、前記データ転送手段は、前記データ転送時間が予め指定された時間を超えた場合には、次回のデータ転送の前記開始条件を変更することを特徴としたものである。
【００１１】
請求項４の発明は、複数の文書データから指定された文字列を含む文書を検索する全文検索装置において、登録された文書データを保存する文書データ記憶部と、検索用の全文索引記憶部と、文書データに関する登録処理を行う登録処理手段と、文書データに関する削除処理を行う削除処理手段と、検索処理を行う検索処理手段とを有し、登録用の全文索引記憶部と、削除用の全文索引記憶部とを、前記検索用の全文索引記憶部とは別に有し、さらに、前記登録用の全文索引記憶部及び削除用の全文索引記憶部から前記検索用の全文索引記憶部へ、全文索引の構成要素である転置リストごとにデータを移すデータ転送手段を有し、前記データ転送手段は、前記削除用の全文索引記憶部の容量が予め指定された容量に達することをデータ転送開始条件として、前記検索用の全文索引記憶部にデータを移す処理を行う全文検索装置であって、前記削除用の全文索引記憶部から前記検索用の全文索引記憶部へのデータ転送に要するデータ転送時間を記録するデータ転送時間記憶部を有し、前記データ転送手段は、前記データ転送時間が予め指定された時間を超えた場合には、次回のデータ転送の前記開始条件を変更することを特徴としたものである。
【００１２】
請求項５の発明は、コンピュータを、請求項１乃至４のいずれか１記載の全文検索装置として機能させるためのプログラムである。
【００１３】
請求項６の発明は、請求項５記載のプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【００１４】
【発明の実施の形態】
本発明の全文検索装置は、登録文書数が増えてもマージ処理に要する時間を一定の時間に抑えて他の処理の待ち時間を一定時間に抑え、システム全体のスループットを向上させることを可能とした装置であり、これは、本出願人による特願２００１−２２３６０４号明細書に記載の全文検索装置において短縮した登録及び削除のレスポンスタイムを、さらに短くすることを目的としてなされたものである。
【００１５】
特願２００１−２２３６０４号明細書に記載の全文検索装置は、小規模の全文索引を登録用及び削除用に別に用意し登録及び削除のレスポンスタイムの悪化を防ぎ、検索処理の際には大規模の全文索引の検索結果に、登録用の小規模全文索引の検索結果を加え、削除用の小規模全文索引の検索結果を除き、利用者に返す検索結果とする全文検索装置であり、これは、本出願人による特願２００１−７８０２６号明細書に記載の、登録・削除のためのデータ保持手段を検索向けデータ保持手段とは別に用意することによって登録・削除のスループットを高くする手法を、転置ファイル方式の全文索引を用いた全文検索装置に適用し、利用者側からみた登録及び削除処理のレスポンスタイムを短くしたものである。すなわち、特願２００１−２２３６０４号明細書に記載の全文検索装置においては、データ転送手段において元の文書データではなく転置ファイル方式の全文索引の構成要素である転置リストを用いることによってデータ転送に要する時間を短くしている。
【００１６】
しかしながら、文書データの登録件数が多くなるにしたがい、大規模の全文索引の転置リストが大きくなり、検索用及び削除用の小規模全文索引からのデータ転送（転置リストのマージ処理）に要する時間も長くなっていくという問題点がある。
【００１７】
本発明では、データ転送に要する時間を記録し、ある時点のデータ転送に要する時間が定められた時間を超えた場合には、次回のデータ転送を開始する条件を変更し、検索用或いは削除用の小規模全文索引がより小さな状態でデータ転送を行なうことによって、データ転送に要する時間を短くし、データ転送に要する時間が一定時間より大幅に大きくならないようにしている。
【００１８】
図１は、本発明の一実施形態に係る全文検索装置の機能を説明するためのブロック図、図２は、図１における全文検索装置をスタンドアロンで構成した場合のハードウェア構成例を示す図、図３は、図１における全文検索装置をサーバ／クライアントで構成した場合のハードウェア構成例を示す図である。
本発明に係る全文検索装置は、複数の文書データ（複数の電子化文書）から指定された文字列を含む文書を検索する装置である。図１を参照すると、本実施形態においては、入力手段１では、登録処理用のテキストデータ，削除処理用の文書識別子，検索処理用の検索条件などが入力され、それぞれ、登録処理手段３，削除処理手段４，検索処理手段５に渡される。登録処理手段３では文書データに関する登録処理を行う。登録処理手段３における登録処理は文書データ記憶部７及び登録用小規模全文索引記憶部９に対して行われる。削除処理手段４では文書データに関する削除処理を行う。削除処理手段４における削除処理は、入力手段１で入力された文書識別子に基づいて、文書データ記憶部７に記憶された文書データを読み出し、テキスト分割手段６を用い、登録用小規模全文索引記憶部９に登録された索引である場合にはそれを削除し、登録された索引でない場合には削除用小規模全文索引記憶部１０にその索引を記録する。なお、テキスト分割手段６では、登録処理手段３，削除処理手段４，検索処理手段５の各々で必要な、登録処理における文書データから部分文字列への分割処理、削除処理における文書データから部分文字列への分割処理、検索処理における検索条件（検索文字列）から部分文字列への分割処理を行う。また、検索処理手段５における検索処理は、検索用大規模全文索引記憶部８，登録用小規模全文索引記憶部９，削除用小規模全文索引記憶部１０に対して実行し、記憶部８及び９の検索結果から記憶部１０における検索結果を差し引いた結果を求め、検索結果として出力手段２で出力する。
【００１９】
マージ手段１１においては、検索用大規模全文索引記憶部８，登録用小規模全文索引記憶部９，削除用小規模全文索引記憶部１０間でのデータ転送を行う。また、マージ時間記憶部１２にはデータ転送に要する時間を記録する。
【００２０】
図２に示すスタンドアロンでのハードウェア構成においては、図１における入力手段１は入力装置２１に実現され、出力手段２は表示装置２２に実現される。各種処理手段３〜６，１１は主制御装置（ＣＰＵ，メモリ等）２４に、各種記憶部７〜１０，１２は記憶装置２５に実現される。また、入出力制御装置２３は主制御装置２４の制御信号に従って入力装置２１及び表示装置２２を制御する。
【００２１】
図３に示すサーバ／クライアントでのハードウェア構成においては、図１における入力手段１はクライアント３０の入力装置３１で実現され、出力手段２はクライアント３０の表示装置３２に実現される。各種処理手段３〜６，１１はクライアント３０及びサーバ５０の主制御装置（ＣＰＵ，メモリ等）３４，５２に実現され、各種記憶部７〜１０，１２はサーバ５０の記憶装置５３に実現される。また、クライアント３０，サーバ５０のネットワーク制御装置３５，５１は、ネットワーク４０を介してクライアント３０とサーバ５０の間のデータ伝送等の制御を行う。さらにクライアント３０の入出力制御装置３３は、主制御装置３４の制御信号に従って入力装置２１及び表示装置２２を制御する。
【００２２】
以下に、上述のごとく構成された全文検索装置の動作の一例を詳細に説明する。
（登録処理）
登録処理を実行するには、まず利用者が文書データを作成し、入力手段１からその文書データを登録する。登録処理手段３において文書データを文書データ記憶部７に保存し、同時にその文書データを示す識別子（文書識別子）を定める。さらに登録処理手段３において、テキスト分割手段６を用いて文書データから部分文字列（トークン）とそのトークンの出現位置情報を得る。最後に文書識別子と各トークンの出現位置情報を登録用小規模全文索引記憶部９に記録する。なお、テキスト分割手段６で使用される分割手法については、Ｎ文字組をトークンとする手法でもよいし、形態素解析を行い単語をトークンとする手法でもよい。以下の例ではＮ文字組みをトークンとする手法を用いたテキスト分割手段に限って説明するが形態素解析を行った単語をトークンとする手法に対しても同様に適用可能である。
【００２３】
図４は、図１の全文検索装置における処理を説明するための図で、全文索引の一例を示す図である。図４の例を用いて転置ファイル方式の全文索引について詳細に説明する。
登録文書データを文書１，文書２とし、それらの内容（ここではテキスト分割手段６で分割することにより得た内容）がそれぞれ、図４の符号６１，６２で表されるものとする。ここで、各文書の左の数字は文字列の先頭からの文字数を表している。つまり、文書１では、「全文検索」は先頭から１１文字目、「方法」は２０，６０文字目、「全文検索方法」は３１文字目に出現していることを意味する。また文書２では、「探索方法」は先頭から１文字目、「方法」は２４文字目、「全文」は３０，４２文字目に出現していることを意味する。
【００２４】
なお、２文字組を部分文字列とする場合、文書中の全ての部分文字列を抽出し、それらの文書内での出現位置（先頭からの文字数）を部分文字列ごとにまとめて索引に記録する。例えば、文書１からは「全文」が１１，３１の位置、「文検」が１２，３２の位置に出現しているので、索引に記録する。索引では、文書内での出現位置だけでなく、どの文書に出現したかを識別するための文書識別子と出現回数を加えて記録するので、図４の符号６３で示したような形式になる。例えば、「全文」に対する転置リスト｛１，２，（１１，３１）｝及び｛２，２，（３０，４２）｝はそれぞれ、文書１において２回出現してその位置は１１，３１であること、及び文書２において２回出現してその位置は３０，４２であることを意味する。
【００２５】
（削除処理）
削除処理を実行するには、まず利用者が入力手段１から削除する文書の文書識別子を入力する。次に、削除処理手段４において文書データ記憶部７から文書識別子に対応する文書データを読み出す。さらに削除処理手段４において、テキスト分割手段６を用いて文書データから部分文字列（トークン）とそのトークンの出現位置情報を得る。また、文書識別子が登録用小規模全文索引に登録されている文書識別子である場合には、各トークンの出現位置情報を登録用小規模全文索引記憶部９から削除する。文書識別子が登録用小規模全文索引に登録されていない場合（検索用大規模全文索引に登録されている場合）には、文書識別子と各トークンの出現位置情報を削除用小規模全文索引記憶部１０に記録する。また、削除処理手段４において文書データ記憶部７から文書識別子に対応する文書データを削除する。
【００２６】
（検索処理）
検索処理を実行するには、まず利用者が入力手段１から検索文字列を入力する。次に、検索処理手段５において、テキスト分割手段６を用いて検索文字列からトークンを得る。また、検索処理手段５において検索用大規模全文索引記憶部８の検索用大規模全文索引を用いて、検索文字列を含む文書データの文書識別子の集合（Ｒｓ）を得るとともに、登録用小規模全文索引記憶部９の登録用小規模全文索引を用いて、検索文字列を含む文書データの文書識別子の集合（Ｒｉ）を得る。さらに、検索処理手段５において削除用小規模全文索引記憶部１０の削除用小規模全文索引を用いて、検索文字列を含む文書データの文書識別子の集合（Ｒｄ）を得る。検索処理手段５は得られた文書識別子の集合（Ｒｓ，Ｒｉ，Ｒｄ）に対して下記の集合演算を行い、その結果を検索結果（Ｒ）とし、出力手段３を通じて利用者に検索文字列を含む文書データの文書識別子の集合を出力する。
Ｒ＝Ｒｓ＋Ｒｉ−Ｒｄ
ただし、＋を論理和演算子、−を論理差演算子とする。
【００２７】
図４の全文索引６３を例として検索処理について詳細に説明する。
検索文字列を「全文検索」とすると、テキスト分割手段が「全文」，「文検」，「検索」の３個のトークンを抽出する。次に全文索引６３の対応するトークンの３つの転置リストを調べる。それぞれのトークン出現位置の差が１であるものを探すと文書識別子１の１１文字目と３１文字目に「全文検索」が存在することがわかる。
【００２８】
（マージ処理）
マージ手段１１によるマージ処理は、上述の特願２００１−７８０２６号明細書におけるデータ転送手段に変わる処理である。
元の文書データを用いて登録・削除処理を行う場合に比べて、処理開始時に既に作成されている転置リストを直接利用するのでテキスト分割処理によるトークンの切り出し及びその転置リスト作成に要する時間が不要となり、データ転送時間を短くできる。本発明においては転置リスト同士の処理であることからデータ転送処理のことをマージ処理とも呼ぶ。全文検索装置における文書データの登録・削除処理を転置リスト同士の処理とすることにより、検索用全文索引へのデータ登録・削除の際に、既に作成されている転置リストを直接利用するので検索用全文索引へのマージ処理の時間を短縮でき、検索処理の待ち時間を短くすることができる。
【００２９】
マージ処理を実行するには、まず登録用小規模全文索引の全てのトークンに対して、（ａ）全文索引からそのトークンの転置リストを取り出す処理、及び（ｂ）検索用大規模全文索引の対応するトークンの転置リストの末尾に先の転置リストを加える処理を行う。次に登録用小規模全文索引を空にする。また、削除用小規模全文索引の全てのトークンに対して、（ｃ）全文索引からそのトークンの転置リストを取り出す処理、及び（ｄ）検索用大規模全文索引の対応するトークンの転置リストから（ｃ）で取り出した転置リスト中の出現位置情報を削除する処理を行う。次に削除用小規模全文索引を空にする。
【００３０】
図５は、図４における全文索引６３のトークン「全文」の転置リストを例にマージ処理の概要を説明するための図である。
検索用全文索引の転置リスト７１として、「全文」に対する転置リスト｛１，２，（１１，３１）｝，｛２，２，（３０，４２）｝、登録用全文索引の転置リスト７２として、「全文」に対する転置リスト｛５，２，（４，１６）｝，｛８，１，（３）｝をマージ処理７３する場合を説明する。マージ処理７３を実行することにより、「全文」に対する転置リスト｛１，２，（１１，３１）｝，｛２，２，（３０，４２）｝，｛５，２，（４，１６）｝，｛８，１，（３）｝（７４）が得られる。さらに、この転置リストと、削除用全文索引の転置リスト７６としての、「全文」に対する転置リスト｛１，２，（１１，３１）｝とをマージ処理７５することにより、「全文」に対する転置リスト｛２，２，（３０，４２）｝，｛５，２，（４，１６）｝，｛８，１，（３）｝（７７）が得られる。
【００３１】
（マージ処理の形態１）
登録用小規模全文索引のマージ処理は、その開始条件（以下、起動条件と呼ぶ）として、登録用小規模全文索引記憶部９における登録用小規模全文索引に登録されている文書識別子の数が予め指定されている数（Ｎｉ）に達したときに、登録処理手段３によって起動され、マージ手段１１により実行されるようにする。
【００３２】
マージ処理においては、上述の起動条件を満たしたときに、まず、マージ時間記憶部１２へ開始時刻（Ｔｓ）を記録（記憶）する。次に、登録用小規模全文索引の全てのトークンに対して、（ａ）全文索引からそのトークンの転置リストを取り出す処理、及び（ｂ）検索用大規模全文索引の対応するトークンの転置リストの末尾に先の転置リストを加える処理を行う。次に、登録用小規模全文索引を空にする。そして、削除用小規模全文索引の全てのトークンに対して、（ｃ）全文索引からそのトークンの転置リストを取り出す処理、及び（ｄ）検索用大規模全文索引の対応するトークンの転置リストから（ｃ）で取り出した転置リスト中の出現位置情報を削除する処理を行う。次に削除用小規模全文索引も空にする。そして、マージ時間記憶部１２へ終了時刻（Ｔｅ）を記憶する。
【００３３】
以上のマージ処理において、マージ処理時間（Ｔｅ−Ｔｓ）が予め設定された時間（Ｔ）より大きい場合には、次回のマージ処理起動条件を以下の式（１）に変更する。
Ｎｉ×（１−（Ｔｅ−Ｔｓ）÷Ｔ）　　　　…（１）
【００３４】
（マージ処理の形態２）
登録用小規模全文索引のマージ処理は、その起動条件として、登録用小規模全文索引記憶部９における記憶容量（大きさ）が予め指定されているサイズ（Ｓｉ）になったときに、登録処理手段３によって起動され、マージ手段１１により実行されるようにしてもよい。ただし、ここでのマージ処理においては、前述のマージ処理（形態１）で説明したマージ処理起動条件（式（１））を、以下の式（２）とする。
Ｓｉ×（１−（Ｔｅ−Ｔｓ）÷Ｔ）　　　　…（２）
【００３５】
この形態により、利用者から登録される文書データの大きさにばらつきがあるような応用形態として使用される場合に、小さな文書データが連続して登録されたときに登録用小規模全文索引への登録時間が長くなる前にマージ処理が開始されることを防ぐことができる。サイズを起動条件にすることでマージの処理時間を均等にすることができる。さらに、前述のマージ処理（形態１）の場合には件数を起動条件にしており全文索引記憶部の大きさを管理する必要がないので処理が簡単になる利点がある。
【００３６】
（マージ処理の形態３）
削除用小規模全文索引のマージ処理は、その起動条件として、削除用小規模全文索引記憶部１０の削除用小規模全文索引に登録されている文書識別子の数が予め指定されている数（Ｎｄ）に達したときに、削除処理手段４によって起動され、マージ手段１１により実行されるようにする。ただし、ここでのマージ処理においては、前述のマージ処理（形態１）で説明したマージ処理起動条件（式（１））を、以下の式（３）とする。形態３では削除処理が多く発生しないような場合、マージ処理の時間を短縮できる利点がある。
Ｎｄ×（１−（Ｔｅ−Ｔｓ）÷Ｔ）　　　　…（３）
【００３７】
（マージ処理の形態４）
削除用小規模全文索引のマージ処理は、その起動条件として、削除用小規模全文索引記憶部１０の削除用小規模全文索引の大きさが予め指定されているサイズ（Ｓｄ）に達したときに、削除処理手段４によって起動され、マージ手段１１により実行されるようにしてもよい。ただし、ここでのマージ処理においては、前述のマージ処理（形態１）で説明したマージ処理起動条件（式（１））を、以下の式（４）とする。形態４では削除処理が多く発生しないような場合、マージ処理の時間を短縮できる利点がある。
Ｓｄ×（１−（Ｔｅ−Ｔｓ）÷Ｔ）　　　　…（４）
【００３８】
上述のごときマージ処理の各形態により、全文検索装置においては登録・削除する文書データの特徴や利用分野の特徴に適した条件で全文索引のマージ処理を開始することが可能となり、マージ処理の発生回数を減らせ、システム全体のスループットを向上させることが可能となる。その上、登録文書数が増えてもマージ処理に要する時間を一定の時間に抑えることにより、他の処理の待ち時間を一定時間に抑えることができるので、さらにシステム全体のスループットを向上させることができる。
【００３９】
以上、本発明の全文検索装置を中心に各実施形態を説明してきたが、本発明は、これら全文検索装置として機能させるためのプログラム、又はその各手段として機能させるためのプログラムとしても、或いは、そのプログラムを記録したコンピュータ読み取り可能な記録媒体としての形態も可能である。
【００４０】
本発明による全文検索の機能を実現するためのプログラムやデータを記憶した記録媒体の実施形態を説明する。記録媒体としては、具体的には、ＣＤ−ＲＯＭ、光磁気ディスク、ＤＶＤ−ＲＯＭ、ＦＤ、フラッシュメモリ、及びその他各種ＲＯＭやＲＡＭ等が想定でき、これら記録媒体に上述した本発明の各実施形態のシステムの機能をコンピュータに実行させ、全文検索の機能を実現するためのプログラムを記録して流通させることにより、当該機能の実現を容易にする。そしてコンピュータ等の情報処理装置に上記のごとくの記録媒体を装着して情報処理装置によりプログラムを読み出すか、若しくは情報処理装置が備えている記憶媒体に当該プログラムを記憶させておき、必要に応じて読み出すことにより、本発明に係わる全文検索機能を実行することができる。
【００４１】
【発明の効果】
本発明によれば、全文検索装置における登録・削除処理を小規模な全文索引記憶部に対して行うので、その処理時間は短くなり利用者へのレスポンスタイムを短くすることが可能となり、その上、登録・削除する文書データの特徴や利用分野の特徴に適した条件で全文索引のマージ処理を開始することでマージ処理の発生回数を減らせ、さらに、登録文書数が増えてもマージ処理に要する時間を一定の時間に抑えることで他の処理の待ち時間を一定時間に抑えることができるので、システム全体のスループットを向上させることができる。
【図面の簡単な説明】
【図１】本発明の一実施形態に係る全文検索装置の機能を説明するためのブロック図である。
【図２】図１における全文検索装置をスタンドアロンで構成した場合のハードウェア構成例を示す図である。
【図３】図１における全文検索装置をサーバ／クライアントで構成した場合のハードウェア構成例を示す図である。
【図４】図１の全文検索装置における処理を説明するための図で、全文索引の一例を示す図である。
【図５】図４における全文索引のトークン「全文」の転置リストを例にマージ処理の概要を説明するための図である。
【符号の説明】
１…入力手段、２…出力手段、３…登録処理手段、４…削除処理手段、５…検索処理手段、６…テキスト分割手段、７…文書データ記憶部、８…検索用大規模全文索引記憶部、９…登録用小規模全文索引記憶部、１０…削除用小規模全文索引記憶部、１１…マージ手段、１２…マージ時間記憶部、２１，３１…入力装置、２２，３２…表示装置、２３，３３…入出力制御装置、２４，３４，５２…主制御装置（ＣＰＵ・メモリ）、２５，５３…記憶装置、３０…クライアント、３５，５１…ネットワーク制御装置、４０…ネットワーク、５０…サーバ。
【図１】
2004013764.tif 000003
【図２】
2004013764.tif 000004
【図３】
2004013764.tif 000005
【図４】
2004013764.tif 000006
【図５】
2004013764.tif 000007