JP2008234204A - 文書検索装置、文書検索方法および文書検索プログラム - Google Patents

文書検索装置、文書検索方法および文書検索プログラム Download PDF

Info

Publication number
JP2008234204A
JP2008234204A JP2007071488A JP2007071488A JP2008234204A JP 2008234204 A JP2008234204 A JP 2008234204A JP 2007071488 A JP2007071488 A JP 2007071488A JP 2007071488 A JP2007071488 A JP 2007071488A JP 2008234204 A JP2008234204 A JP 2008234204A
Authority
JP
Japan
Prior art keywords
document
document data
file
search
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2007071488A
Other languages
English (en)
Inventor
Takuya Hiraoka
卓也 平岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2007071488A priority Critical patent/JP2008234204A/ja
Publication of JP2008234204A publication Critical patent/JP2008234204A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】登録及び削除を高速に処理すると共に、検索適合率のスコア算出を高速に実行することを可能にする文書検索装置、文書検索方法および文書検索プログラムを提供することを主な目的とする。
【解決手段】文書データファイル410と、複数の転置ファイル430と、文書長ファイル420と、前記文書データファイル410に記憶された前記文書データ410bを前記索引単位430aに分割するテキスト分割部340と、前記テキスト分割部340により分割された前記索引単位430aの前記文書データの文字列上における文字列位置を求め、前記文字列位置を前記索引単位430aの前記文書データ上の出現位置430bとして、前記文書識別番号410aと、前記索引単位430aと、対応付けて前記複数の転置ファイル430のうちいずれか一つに登録する登録処理部310と、を有することを特徴とする。
【選択図】 図2

Description

本発明は、文書検索装置、文書検索方法および文書検索プログラムに関するものであり、特に膨大な文書データのデータベースの登録、検索および削除を高速に実行する技術に関するものである。
近年、情報通信技術の発達により電子化された文書や関連する情報がインターネットを介して大量に流通している。これら電子化文書及び情報の流通に際し、所望の文書を精度よく、更には高速に検索する文書検索装置が提案されている。
そのような文書検索装置においては、キーワード検索手法や全文検索手法が採用されている。全文検索手法を用いた文書検索装置は、任意の検索文字列と検索対象の文書全てとの間で照合を行って、検索文字列を含む文書を漏れなく抽出する検索装置であり、キーワード検索手法のように検索対象となる全ての文書に対してキーワードを予め付与するといった多大な工数を必要としない。現在、様々な方式の全文検索装置が提案されているが、その一手法として転置索引方式を採用した全文検索装置がある。
従来、この転置索引方式を用いた多くの全文検索装置では、検索は高速だが、登録は低速であるという問題があった。転置索引方式は、索引単位ごとに存在する転置リストファイルへ登録を行う必要があり、転置リストファイルの大きさに比例して、登録処理時間が増加していく。そのため、登録を高速化するためには、索引ファイルの大きさを小さく保つ必要がある。特許文献1に開示される技術では、主インデックスと小さな副インデックスを用意し、副インデックスがある程度の大きさになると、主インデックスに合成させることによって、登録処理を高速化している。また、特許文献2、3、4に開示される技術では、登録および削除用の小規模索引と、大規模索引を有し、小規模索引がある程度の大きさになると、主インデックスに合成させることによって、登録処理を高速化している。
特開平7−146880号公報 特開2003−122794号公報 特開2004−13764号公報 特開2003−242180号公報 特願2005−154374号公報
しかしながら、特許文献1、2、3及び4に開示される技術では、小規模な転置リストファイルに登録している間は高速に登録処理が行えるが、ファイルが大規模になっていくにつれ、転置リストファイルへのマージ処理の際に、大規模リストファイルの大きさに依存し、登録処理時間が増加してしまう。一方、特許文献5に開示される技術では、登録ファイルを分散しているので、ファイルサイズが大規模になることによる登録時間の増加はある程度避けられるが、複数の登録ファイル内の情報を合成させるために、検索結果一覧を表示する際の検索適合率の算出が複雑になり、検索速度の面で問題がある。
本発明は、上記に鑑みてなされたものであって、データベースの登録、検索及び削除を高速に処理することを可能にする文書検索装置、文書検索方法および文書検索プログラムを提供することを主な目的とする。
上述した課題を解決し、目的を達成するために、請求項1にかかる発明は、文書データと、該文書データに固有の文書識別情報と、を対応付けて記憶可能な文書データ記憶手段と、前記文書識別情報と、前記文書データを検索するための見出しとなる索引単位と、該索引単位の前記文書データ上の出現位置と、を対応付けて記憶可能な複数の転置ファイル記憶手段と、前記文書識別情報と、前記文書データの文字列長である文書長と、前記複数の転置ファイル記憶手段ごとに固有の第1の転置ファイル識別情報と、を対応付けて記憶可能な文書長記憶手段と、前記文書データ記憶手段に記憶された前記文書データを前記索引単位に分割するテキスト分割手段と、前記テキスト分割手段により分割された前記索引単位の前記文書データの文字列上における文字列位置を求め、前記文字列位置を前記索引単位の前記文書データ上の出現位置として、前記文書識別情報と、前記索引単位と、対応付けて前記複数の転置ファイル記憶手段のうちいずれか一つに登録する登録処理手段と、を有することを特徴とする。
また、請求項2にかかる発明は、請求項1にかかる発明において、前記文書データと、該文書データから前記テキスト分割手段により分割された前記索引単位と、前記第1の転置ファイル識別情報と、を対応付けて削除する削除処理手段を有することを特徴とする。
また、請求項3にかかる発明は、請求項1にかかる発明において、前記文書長記憶手段は、前記登録処理手段による時系列で最後の登録先である前記転置ファイル記憶手段に固有の第2の転置ファイル識別情報と、前記文書データ記憶手段に記憶されている全ての前記文書データの文字列長の総和である全文書長と、前記文書データ記憶手段に記憶されている全ての前記文書データの総数である全文書数と、をさらに記憶可能であること、を特徴とする。
また、請求項4にかかる発明は、請求項1にかかる発明において、前記文書データ記憶手段と、前記文書長記憶手段は、さらに前記文書識別情報によってソートされたB木データ構造を有し、前記複数の転置ファイル記憶手段は、さらに前記文書識別情報によってソートされたB木データ構造もしくは前記索引単位をキーとしたハッシュテーブル構造を有すること、を特徴とする。
また、請求項5にかかる発明は、請求項1にかかる発明において、前記登録処理手段は、前記登録処理手段による時系列で最後の登録先である前記転置ファイル記憶手段が所定の記憶容量を越えた際に、前記転置ファイル記憶手段に新たな記憶領域を確保し、該記憶領域に前記出現位置を登録すること、を特徴とする。
また、請求項6にかかる発明は、請求項1にかかる発明において、前記登録処理手段は、前記複数の転置ファイル記憶手段のうちいずれか一つをラウンドロビン方式で選択し、選択された前記転置ファイル記憶手段に前記出現位置を登録すること、を特徴とする。
また、請求項7にかかる発明は、文書検索装置において文書を検索する文書検索方法であって、文書データと、該文書データに固有の文書識別情報と、を対応付けて記憶可能な文書データ記憶手段と、前記文書識別情報と、前記文書データを検索するための見出しとなる索引単位と、該索引単位の前記文書データ上の出現位置と、を対応付けて記憶可能な複数の転置ファイル記憶手段と、前記文書識別情報と、前記文書データの文字列長である文書長と、前記複数の転置ファイル記憶手段ごとに固有の第1の転置ファイル識別情報と、を対応付けて記憶可能な文書長記憶手段と、を備え、前記文書データ記憶手段に記憶された前記文書データを前記索引単位に分割するテキスト分割ステップと、前記テキスト分割ステップにより分割された前記索引単位の前記文書データの文字列上における文字列位置を求め、前記文字列位置を前記索引単位の前記文書データ上の出現位置として、前記文書識別情報と、前記索引単位と対応付けて前記複数の転置ファイル記憶手段のうちいずれか一つに登録する登録処理ステップと、前記文書データと、該文書データから前記テキスト分割手段により分割された前記索引単位と、前記第1の転置ファイル識別情報と、を対応付けて削除する削除処理ステップと、を有することを特徴とする。
また、請求項8にかかる発明は、文書検索装置において文書を検索する文書検索方法であって、文書データと、該文書データに固有の文書識別情報と、を対応付けて記憶可能な文書データ記憶手段と、前記文書識別情報と、前記文書データを検索するための見出しとなる索引単位と、該索引単位の前記文書データ上の出現位置と、を対応付けて記憶可能な複数の転置ファイル記憶手段と、前記文書識別情報と、前記文書データの文字列長である文書長と、前記複数の転置ファイル記憶手段ごとに固有の第1の転置ファイル識別情報と、を対応付けて記憶可能な文書長記憶手段と、を備え、前記文書データ記憶手段に記憶された前記文書データを前記索引単位に分割するテキスト分割ステップと、前記テキスト分割ステップにより分割された前記索引単位の前記文書データの文字列上における文字列位置を求め、前記文字列位置を前記索引単位の前記文書データ上の出現位置として、前記文書識別情報と、前記索引単位と対応付けて前記複数の転置ファイル記憶手段のうちいずれか一つに登録する登録処理ステップと、前記文書データと、該文書データから前記テキスト分割手段により分割された前記索引単位と、前記第1の転置ファイル識別情報と、を対応付けて削除する削除処理ステップと、としてコンピュータに機能させることを特徴とする。
請求項1にかかる発明によれば、文書データと、文書データから分割された索引単位と、索引単位の文書データ上の出現位置と、を対応付けて文書データファイルと、文書長ファイルと、複数の転置ファイルと、に対応付けて登録することにより、登録される文書データが増加しても、登録および検索の処理時間を所定時間以下に維持する文書検索を実現することができるという効果を奏する。
また、請求項2にかかる発明によれば、文書データファイルと、文書長ファイルと、複数の転置ファイルと、に対応付けて登録した文書データと、文書データから分割された索引単位と、索引単位の文書データ上の出現位置と、を対応付けて削除することにより、文書検索を実行する上での必要な文書データが無駄に増大することを避け、登録及び検索の処理時間を所定時間以下に維持する文書検索を実現することができるという効果を奏する。
また、請求項3にかかる発明によれば、最も直近に登録処理が実行された転置ファイルの識別番号、既に登録されている文書データの文字列長の総和と総文書データ数を記憶し、新規文書データの追加または既存文書データの削除の際には常に更新することにより、次に登録する転置ファイルの決定、および検索時の検索適合率スコアの算出を最短時間で実行することができるという効果を奏する。
また、請求項4にかかる発明によれば、文書データ記憶手段と、文書長記憶手段はB木データ構造を有し、転置ファイル記憶手段はB木データ構造もしくはハッシュテーブル構造を有することにより、文書データの登録、検索及び削除を実行する際の既存データ探索を最短時間で実行することができるという効果を奏する。
また、請求項5にかかる発明によれば、文書データから分割された索引単位と、索引単位の文書データ上の出現位置と、を対応付けて登録する転置ファイルを所定サイズ以下に制限することにより、登録データが増加しても、登録及び検索の処理時間を所定時間以下に維持する文書検索を実現することができるという効果を奏する。
また、請求項6にかかる発明によれば、文書データから分割された索引単位と、索引単位の文書データ上の出現位置と、を対応付けて登録する転置ファイルを所定数に制限し、ファイルアクセス時間を平均化することにより、登録データが増加しても、登録及び検索の処理時間を所定時間以下に維持する文書検索を実現することができるという効果を奏する。
また、請求項7にかかる発明によれば、文書データと、文書データから派生した索引単位と、索引単位の文書データ上の出現位置と、を対応付けて、文書データファイルと、文書長ファイルと、複数の転置ファイルと、に分割して登録することにより、登録データが増加しても、登録および検索の処理時間を所定時間以下に維持する文書検索方法を実現することができるという効果を奏する。
また、請求項8にかかる発明によれば、文書データと、文書データから分割された索引単位と、索引単位の文書データ上の出現位置と、を対応付けて文書データファイルと、文書長ファイルと、複数の転置ファイルと、に対応付けて登録することにより、登録される文書データが増加しても、登録および検索の処理時間を所定時間以下に維持する文書検索を実現することができるという効果を奏する。
以下に添付図面を参照して、本発明の実施の形態にかかる文書検索装置、文書検索方法および文書検索プログラムの最良な実施の形態を詳細に説明する。
(第1の実施の形態)
図1は、第1の実施の形態にかかる文書検索装置200がネットワーク500上に接続された状態を示す模式図である。クライアントPC100と、文書検索装置200がネットワーク500上に接続されている。このような構成により、文書検索装置200は、クライアントPC100から送信された文書データの登録、検索及び削除の処理を可能とする。なお、クライアントPC100から文書検索装置200へのデータ通信に用いられるネットワーク500は、無線もしくは有線、またLANや公衆通信回線を問わず、どのようなネットワークでもよい。
第1の実施の形態にかかる文書検索装置200は、文書処理部300と、文書記憶部400と、を備えている。ユーザは、クライアントPC100からネットワーク500を介して文書検索装置200内部の文書処理部300にアクセスして、検索を実行する。文書処理部300は、検索を指示される際に入力された文書データと検索条件に基づいて、文書記憶部400の文書データのデータベースの登録、検索及び削除を指示する。
図2は、第1の実施の形態にかかる文書検索装置200の概略構成を示すブロック図である。文書検索装置200は、文書処理部300と、文書記憶部400と、を備えている。なお、図2には、クライアントPC100側の構成である入力部110および出力部120も示している。
ユーザは、クライアントPC100側の入力部110に文書データ410bと検索条件130を入力し、当該文書データ410bの登録、検索及び削除の処理を実行する。ユーザがクライアントPC100側の入力部110に文書データ410bと検索条件130を入力し検索を実行すると、文書処理部300は文書記憶部400内部への文書データの登録及び削除を実行し、文書データのデータベースを更新する。更に、文書処理部300は検索処理を実行し、クライアントPC100側の出力部120に検索結果140を表示してユーザに検索結果を知らせる。
文書記憶部400は、ユーザから入力を受け付けた文書データのデータベースを構築しており、文書データファイル410と、文書長ファイル420と、転置ファイル430と、からなる記憶構造を備えている。文書記憶部400は、HDD(ハードディスクドライブ装置)等の記憶媒体である。
文書データファイル410は、入力部110に入力された文書データ410bを登録するものである。図3は、第1の実施の形態にかかる文書検索装置200の文書データファイル410の記憶構造を示す概要図である。文書データファイル410は、入力部110に入力された文書データ410bと、各文書データ410bに固有の文書識別番号410aと、を対応付けて記憶する構成となっている。文書識別番号410aは、各文書データ410bが入力された時点で、各文書データ固有に付けられた識別番号であり、各文書データ410bが識別できるようになっている。
文書長ファイル420は、文書データファイル410に登録された文書データ410bと後述する転置ファイル430との対応付けを登録するものである。図4は、第1の実施の形態にかかる文書検索装置200の文書長ファイル420の記憶構造を示す概要図である。文書長ファイル420は、ヘッダー領域420aとリスト領域420bと、から構成されている。
リスト領域420bは、文書データファイル410に登録した文書識別番号410aと、文書長420fと、転置ファイル430の転置ファイル識別番号420gと、を対応付けて記憶する構成となっている。文書長420fは、文書識別番号410aに該当する文書データ410bの文字列数である。転置ファイル識別番号420gは、複数の転置ファイル430のうちから個別のファイルを識別するものである。転置ファイル430の詳細については後述する。
ヘッダー領域420aは、検索を高速に実行するために累積的にデータが記録される領域であり、新規文書データの追加、または登録文書データの削除が行われるごとにデータが更新される。図4において、ヘッダー領域420aは、最も直近に登録された転置ファイル430の転置ファイル識別番号420cと、全文書長420dと、全文書数420eと、を記憶する構成となっている。全文書長420dは、リスト領域420bに記憶されている全ての文書データ410bの文字列数の総和である。また、全文書数420eは、リスト領域420bに記憶されている全ての文書データ410bの総数である。
文書処理部300は、文書記憶部400への文書データの登録、検索及び削除と、文書データのテキスト分割を処理しており、登録処理部310と、削除処理部320と、検索処理部330と、テキスト分割部340と、を備えている。
登録処理部310は、ユーザから入力を受け付けた文書データを文書記憶部400に登録する処理を実行する。これにより、文書記憶部400は、文書データのデータベースとしての機能を有する。
検索処理部330は、文書記憶部400に登録された文書データのデータベースを活用して、検索処理を実行する。これにより、文書データのデータベースを活用した検索結果を出力部120に表示することができる。
削除処理部320は、文書記憶部400に登録された文書データのデータベースの中で検索適合性の低いデータを削除する処理を実行する。これにより、文書データのデータベースは、検索適合性の比較的高いデータに絞って登録されることになり、文書記憶部400の記憶容量が無駄に増大することを防ぐことができる。
テキスト分割部340は、ユーザから入力された文書データを検索する際の見出しとなる索引単位に分割する処理を実行する。これにより、文書データは分割された索引単位と対応付けて登録されることとなる。
以下、テキスト分割部340による文書データ410bのテキスト分割について詳細を説明する。図5は、第1の実施の形態にかかる文書検索装置200に入力された文書データ410bを索引単位430aに分割する手順を示す概要図である。図5に示すように、テキスト分割部340は、入力された文書データ410bを名詞、助詞、動詞、接続詞、句読点など索引単位430aに分割する。例文として、「私はねこが好きだけど、彼はいぬが好きだ。」を入力したとする。テキスト分割部340は、「私」「は」「ねこ」「が」「好き」などの索引単位430aに分割する。
上述のように、文書データ410bを索引単位430aに分割する一方で、それぞれの索引単位430aの文書データ410b上における出現位置を求める。すなわち、該当する索引単位430aが、索引単位430aを含む文書データ410b上で何文字目に出現するかを数値化する。図5に示すように、上記の「私」「は」「ねこ」「が」「好き」は、それぞれ1文字目、2文字目と13文字目、3文字目、5文字目と16文字目、6文字目と17文字目となる。従って、これらの数値が出現位置430bとなる。
以下に、転置ファイル430について、詳細を説明する。転置ファイル430は、上記のように求められた索引単位430aと、索引単位430aの文書データ410b上の出現位置430bと、を対応付けて登録するものである。転置ファイル430は、登録、検索及び削除の処理時間を所定時間以下に維持するため複数のファイルで構成され、各転置ファイル430に転置ファイル識別番号420gが付されている。
図6は、第1の実施の形態にかかる文書検索装置200の転置ファイル430の記憶構造を示す概要図である。転置ファイル430は、索引単位430aと、文書識別番号410aと、出現位置430bと、を対応付けて登録する構成となっている。
これまで述べたように、第1の実施の形態にかかる文書検索装置200は、文書データファイル410と、文書長ファイル420と、転置ファイル430と、からなる記憶構造を備えている。更に、転置ファイル430は、複数のファイルに分割された記憶構造を備えており、各ファイルに固有の転置ファイル識別番号420gを有する。
上記のような記録構造を備えたことにより、登録されるデータが増えていっても、登録対象のファイルサイズが膨大になることを防ぐことができる。前述の文書データファイル410と、文書長ファイル420と、転置ファイル430と、からなる記憶構造を備えたことにより、文書データ410bおよび文書データ410bをテキスト分割した索引単位430aと、索引単位の出現位置430bの登録、検索及び削除の処理時間が増大していくことを防ぐことができる。
なお、文書データファイル410と、文書長ファイル420は、文書識別番号410aによってソートされたB木データ構造を有し、転置ファイル430は、文書識別番号410aによってソートされたB木データ構造もしくは索引単位430aをキーとしたハッシュテーブル構造を有することが検索性能の上で望ましい。
B木データ構造は、「多進木データ構造」とも言われ、記憶するデータ間の各ノードのつながりに、一定の大小関係を持って構成する。ノード間に一定の大小関係があるおかげで、データ探索時に余計なノードにアクセスすることなく、データ探索時にアクセス回数を大幅に減らせ、本実施の形態にかかるデータの登録、検索及び削除の処理時間削減の効果をより高めることができる。
また、ハッシュテーブル構造は、記憶したデータの中でキーとなる項目を選択し、キーに対応するデータを迅速に検索するためのデータ構造である。前述のように、転置ファイル430は索引単位430aを記憶しており、索引単位430aをキーとしたハッシュテーブル構造を採用すれば、索引単位430aを迅速に探索することが可能となり、本実施の形態にかかるデータの登録、検索及び削除の処理時間削減の効果をより高めることができる。
このように、各ファイル内部のデータ構造については、第1の実施の形態にかかる文書検索装置200の登録、検索及び削除の処理時間削減の使用目的にあわせ、最適の方式を選択することが可能である。もちろん、本実施の形態にかかる文書検索装置の技術の可否は、このデータ構造の選択に依存するものではない。
図2に戻り、登録処理部310は、文書記憶部400への文書データ410bと、索引単位430aと、索引単位430aの出現位置430bと、の登録処理を指示するものである。第1の実施の形態にかかる文書検索装置200では、登録処理部310があらかじめ定められた転置ファイル430へのファイルアクセス順で、索引単位430aと、文書識別番号410aと、出現位置430bを所定の転置ファイル430に登録する処理を実行する。
登録処理部310は、索引単位430aの文書データ410bにおける出現位置430bを求める処理、求められたデータ全てを文書識別番号410a、及び転置ファイル識別番号420gによって対応付けることにより、文書データファイル410と、文書長ファイル420と、転置ファイル430にそれぞれ対応付けて登録する処理の全てを実行する。
転置ファイル430が前述のごとく、B木データ構造またはハッシュテーブル構造を有している場合、登録処理部310は、次回の登録、検索及び削除の処理時間を短縮するために、転置ファイル430内部の既存データを検索し、記憶する位置を探索する処理も実行する。
このような登録処理の結果、転置ファイル430は、索引単位430aを登録したデータベースとして構築されていくこととなる。通常、登録されるデータが増えていけばいくほど、転置ファイル430のファイルサイズが大きくなっていき、転置ファイル430に記憶する処理時間が増大していくが、前述のごとく、転置ファイル430は複数に分割した記憶構造を有しているため、記憶処理時間の増大を所定時間以下に抑えることができる。
図2において、検索処理部330は、文書記憶部400に登録されている文書データ410bおよび分割された索引単位430aに基づいて、文書データ410bおよび検索条件130で指定された検索実行を指示するものである。検索処理部330は、ユーザが入力した文書データ410bと検索条件130に対して、登録処理部310によって文書データファイル410と、文書長ファイル420と、転置ファイル430に登録されたデータの検索を実行する。
検索条件130は、「単語一致」「文節一致」「文章一致」など検索時に指定される条件である。実際は、検索処理は検索条件に合わせて実行され、検索条件の変更は、索引単位430aの単独、もしくは複数の索引単位430aの合成のいずれかを選択されることとなる。第1の実施の形態にかかる文書検索装置200においては、テキスト分割された最小単位の索引単位430aに対して検索を実行されるものとして詳細を説明する。
検索処理を実行する場合、ユーザが入力したデータと照合した検索結果の重要度が非常に重要である。重要度は、どれだけ検索対象に適合したデータであるかを示しており、検索結果の重要度を示す指標として、検索適合率が算出される。検索結果を表示する際に、検索適合率の高いデータを先頭に、検索適合率の降順に表示することによって、最も重要度の高いデータから、重要度の序列で表示することができる。
従って、検索処理を実行した場合、検索適合率のスコアを算出し、スコアの高いデータを先頭に降順で検索結果を表示する。検索適合率のスコアは、検索される索引単位430aの重要度を表し、以下の(1)式に従って算出される。
Figure 2008234204
(1)式は、検索適合率のスコア算出式であり、全ての数値を代入することで検索対象の索引単位430aの検索適合率を算出する。(1)式に含まれる文書内出現頻度tfijと、文書数dfiは、転置ファイル430に登録された索引単位430aと、出現位置430bとの対応付けから求められる。また、文書長ljは、文書長ファイル420に登録した文書長420fである。転置ファイル430内の該当する索引単位430aに対応付けられた文書識別番号410aを文書長ファイル420内で探索することによって、該当する文書長ljを求める。
更に、全文書数Nは、文書長ファイル420のヘッダー領域420aに記憶した全文書数420eである。平均文書長Lは、全文書長420dを全文書数420eで除算することによって求められるので、文書長ファイル420のヘッダー領域420aに記憶した全文書長420dと、全文書数420eと、から算出する。(1)式にこれらの数値を代入することによって、検索適合率スコアは算出される。
前述のように、文書長ファイル420のヘッダー領域420aに全文書長420d、全文書数420eを記憶し、常に更新することにより、検索適合率スコアを迅速に算出することが可能となる。検索適合率のスコア算出の処理時間が短縮されれば、同時に検索処理時間も短縮されることとなる。
このように、検索処理部330は、ユーザが入力したデータに対して、登録されたデータの検索を実行し、検索適合した各データに対して検索適合率を算出し、検索適合率の高いデータを先頭に降順で検索結果を表示することができる。ユーザは、その検索結果を見て、検索結果のデータ取り扱いを判断することができる。
図2において、削除処理部320は、文書記憶部400に登録されている文書データ410bおよび分割された索引単位430aの削除処理を指示するものである。前述のように、登録処理部310が文書データファイル410と、文書長ファイル420と、転置ファイル430にユーザが入力するデータを随時登録していく。登録されたデータが増えていけばいくほど、文書データファイル410と、文書長ファイル420と、転置ファイル430はファイルサイズが大きくなっていく。
前述のように、転置ファイル430は、複数のファイル構成とすることにより、ファイルサイズの増大を防ぎ、登録及び検索の処理時間の増大を防ぐという記憶構造を有している。また、文書データファイル410と、文書長ファイル420についても同様にファイルサイズの増大を防ぐ必要がある。従って、登録されたデータの中で重要度の低いデータを削除することにより、登録される全体のデータ容量を制限し、文書記憶部400の文書データファイル410と、文書長ファイル420と、転置ファイル430全体としてファイルサイズの増大を防ぐことができる。
削除処理部320は、文書データファイル410と、文書長ファイル420と、転置ファイル430に登録された文書データ410b、もしくは索引単位430aのうち、前述の検索処理部330による検索処理の結果、検索適合率の極めて低い文書データ410b、もしくは索引単位430aを抽出し、それらのデータを「検索非適合」と判断して削除対象として抽出し、削除する。この削除処理により、文書データファイル410と、文書長ファイル420と、転置ファイル430と、からなる文書記憶部400は、検索適合率の極めて低いデータまで登録しておく必要はなく、文書記憶部400全体のデータ容量を所定容量以下に制限し、結果的に登録及び検索の処理時間を所定時間以下に制限することができる。
以下、第1の実施の形態にかかる文書検索装置200の登録処理部310が主に実行する登録処理フローについて詳細を説明する。図7は、第1の実施の形態にかかる文書検索装置200の登録処理動作を示すフローチャートである。
最初に、クライアントPC100の入力部110からユーザによる文書データ410bの入力を受け付けると(ステップS100)、登録処理部310が、文書データ410bに文書識別番号410aを付けて文書データファイル410に登録する(ステップS101)。そして、テキスト分割部340が、文書データ410bを索引単位430aに分割する(ステップS102)。図5に示したように、次に、登録処理部310が、分割された索引単位430aの文書データ410b内の出現位置430bを求める(ステップS103)。また、登録処理部310が、転置ファイル430のあらかじめ定められたファイルに文書識別番号410aと、索引単位430aと、各索引単位430aの出現位置430bと、を対応付けて登録する(ステップS104)。
なお、登録する転置ファイル430のファイル選定については、あらかじめ定めた複数の転置ファイル430のアクセス順位に従って行われる。次に、登録処理部310が、全ての索引単位430aを登録したかどうかを判定する(ステップS105)。全ての登録処理が終了していない場合(ステップS105:NO)、ステップS104に戻って、登録処理部310が、全ての索引単位430aを登録するまで、ステップS104の登録処理を継続する。また、全ての登録処理が終了した場合(ステップS105:YES)、登録処理部310が、索引単位430aを登録した転置ファイル430の転置ファイル識別番号420gを取得する(ステップS106)。
次に、登録処理部310が、文書長ファイル420のリスト領域420bに文書識別番号410aと、文書長420fと、転置ファイル識別番号420gと、を対応付けて登録する(ステップS107)。そして、登録処理部310が、文書データファイル410に登録された全ての文書データ410bを対象に、全ての文書データ410bの文書長の総和である全文書長420d、全ての文書データ410bの総文書数である全文書数420eを算出する(ステップS108)。最後に、登録処理部310が、文書長ファイル420のヘッダー領域420aに記憶された最も直近に登録された転置ファイル識別番号420c、全文書長420d、全文書数420eのデータを更新し、プログラムを終了する(ステップS109)。
以下、第1の実施の形態にかかる文書検索装置200の検索処理部330が主に実行する検索処理フローについて詳細を説明する。図8は、第1の実施の形態にかかる文書検索装置200の検索処理動作を示すフローチャートである。
最初に、クライアントPC100の入力部110からユーザによる文書データ410bの入力を受け付けると(ステップS200)、テキスト分割部340が、検索条件130に合わせて、文書データ410bを索引単位430aに分割する(ステップS201)。次に、検索処理部330が、該当する索引単位430aが含まれる転置ファイル430を探索する(ステップS202)。そして、検索処理部330が、検索対象の索引単位430aの文書データ410b内における出現位置430bから、文書内出現頻度tfijと文書数dfiをカウントする(ステップS203)。さらに、検索処理部330が、文書内出現頻度tfijが0かどうかを判定する(ステップS204)。文書内出現頻度tfijが0でなければ(ステップS204:NO)、検索処理部330が、(1)式の記号に全ての数値を代入して、検索適合率のスコアを算出する(ステップS205)。
また、文書内出現頻度tfijが0であれば(ステップS204:YES)、検索適合率スコアは0となるのでステップS206へジャンプする。そして、検索処理部330が、全ての転置ファイル430を検索したか判定する(ステップS206)。全てを検索していなければ(ステップS206:NO)、ステップS202に戻り、検索処理部330が、転置ファイル430探索を継続する。全てを検索終了すれば(ステップS206:YES)、検索処理部330が、全ての転置ファイル430から求めた検索適合率のスコアを算出する(ステップS207)。
次に、検索処理部330が、全ての転置ファイル430から求めた検索結果を検索適合率のスコアでソートする(ステップS208)。そして、検索処理部330が、全ての索引単位430aを検索したか判定する(ステップS209)。全てを検索していなければ(ステップS209:NO)、ステップS202に戻り、検索処理部330が、転置ファイル430探索を継続する。全てを検索終了すれば(ステップS209:YES)、検索処理部330が、検索結果を検索適合率スコアでソートして表示出力する(ステップS210)。
以下、第1の実施の形態にかかる文書検索装置200の削除処理部320が主に実行する削除処理フローについて詳細を説明する。図9は、第1の実施の形態にかかる文書検索装置200の削除処理動作を示すフローチャートである。
最初に、削除処理部320が、文書データファイル410から、削除対象の文書データ410bの文書識別番号410aを取得する(ステップS300)。次に、テキスト分割部340が、削除対象の文書データ410bを索引単位430aに分割する(ステップS301)。そして、削除処理部320が、文書長ファイル420のリスト領域420bを参照して、ステップS300で取得した文書識別番号410aに対応する転置ファイル識別番号420gを取得する(ステップS302)。さらに、削除処理部320が、ステップS302で取得した転置ファイル識別番号420gの転置ファイル430を読み出す(ステップS303)。
次に、削除処理部320が、読み出した転置ファイル430内に削除対象の文書データ410bを分割した索引単位430aが含まれるどうかを判定する(ステップS304)。含まれていなければ(ステップS304:NO)、ステップS300に戻って、削除処理部320が、削除対象の文書データ410bに該当する文書識別番号410aの取得を繰り返す。含まれていれば(ステップS304:YES)、削除処理部320が、削除対象の索引単位430aと、該当する文書識別番号410aが共に含まれる行を転置ファイル430から削除する(ステップS305)。
次に、削除処理部320が、削除された索引単位430aが含まれていた転置ファイル識別番号420gを取得する(ステップS306)。そして、削除処理部320が、ステップS300で取得した文書識別番号410aと、ステップS306で取得した転置ファイル識別番号420gが共に含まれる行を文書長ファイル420のリスト領域420bから削除する(ステップS307)。
次に、削除処理部320が、文書長ファイル420のヘッダー領域420aに記述された最も直近に登録された転置ファイル430の転置ファイル識別番号420c、登録されている全ての文書長420fを合計した全文書長420d、登録されている全ての文書データ410bの総数である全文書数420eを更新する(ステップS308)。最後に、削除処理部320が、ステップS300で取得した文書識別番号410aが含まれる行を文書データファイル410から削除する(ステップS309)。
上述のように、登録処理部310と、検索処理部330と、削除処理部320が、連携して処理を実行することにより、文書検索装置として無駄なデータを省き、ユーザにとって重要度の高いデータのみを記憶しておき、効率の高い検索機能を実現することができる。
以上述べたように、第1の実施の形態にかかる文書検索装置においては、クライアントPC100の入力部110にユーザから入力された文書データ410bを索引単位430aに分割し、文書記憶部400の文書データファイル410と、文書長ファイル420と、複数の転置ファイル430と、にそれぞれ対応付けて登録する。ここで、登録処理部310が文書記憶部400へのこれら一連の登録動作を実行し、検索処理部330が登録されたデータベースにアクセスして検索処理を実行し、削除処理部320がデータベースの不要データ削除を実行する。
このように、文書記憶部400において分割処理されたデータベースを構築することにより、個々のファイルが大きなファイルサイズにならず、所定サイズ以下に制限されたファイルが作成される。登録、検索及び削除の処理時間はファイルサイズに比例するので、データ量が膨大になっても処理時間は所定時間以下となる。
従って、第1の実施の形態によれば、文書処理部300の各部が実行する処理は、重要度の高いデータを記憶するように、文書記憶部400を維持管理する。一方、文書記憶部400の各部の記憶構造は、ファイル分割記憶を実行し、登録されるデータ量が増加しても登録、検索及び削除の処理時間を所定時間以下に維持する。これらの効果により、非常に効率の高い文書検索機能を実現することができる。
(第2の実施の形態)
以下、第2の実施の形態にかかる文書検索装置について説明する。第2の実施の形態が第1の実施の形態と異なる点は、登録処理部360による転置ファイル430の作成手順である。第2の実施の形態においては、登録処理部360が転置ファイル430のファイルサイズを検出し、所定ファイルサイズを超えたら、新規ファイルを作成し、登録する手順を実行する。
図10は、第2の実施の形態にかかる文書検索装置210の概略構成を示すブロック図である。第2の実施の形態にかかる文書検索装置210は、文書処理部350と、文書記憶部400と、を備えている。更に、クライアントPC100側に入力部110と、出力部120と、を備えている。第2の実施の形態にかかる文書検索装置210においては、文書処理部350内部の登録処理部360が第1の実施の形態と異なる。
文書処理部350は、第1の実施の形態にかかる文書処理部300と同様、文書記憶部400への文書データの登録、検索及び削除と、文書データのテキスト分割を処理しており、登録処理部360と、削除処理部320と、検索処理部330と、テキスト分割部340と、を備えている。以上、登録処理部360以外の要素は第1の実施の形態と同様であるため、同じ要素は同じ符号で示し、説明を省略する。
第2の実施の形態にかかる文書検索装置210では、登録処理部360は、文書記憶部400への登録処理時に、最も直近に登録した転置ファイル430のファイルサイズが所定容量を超えるまでは当該ファイルに索引単位430aと、文書識別番号410aと、出現位置430bと、を登録する処理を実行する。一方、最も直近に登録した転置ファイル430のファイルサイズが所定容量を超えたら、新規ファイルを作成し、当該新規ファイルに索引単位430aと、文書識別番号410aと、出現位置430bと、を登録する処理を実行する。
前述の登録処理を実行することにより、登録されるデータ数が増えていけばいくほど、転置ファイルの個数は増えていくが、一ファイルのファイルサイズは予め設定した所定ファイルサイズ以下に限定される。その結果、登録、検索及び削除の処理時間をある所定時間以下に制限することができる。
第2の実施の形態にかかる文書検索装置210の登録処理部360が主に実行する登録処理フローについて詳細を説明する。図11は、第2の実施の形態にかかる文書検索装置210の登録処理動作を示すフローチャートである。
最初に、クライアントPC100の入力部110からユーザによる文書データ410bの入力を受け付けると(ステップS400)、登録処理部360が、入力部110に入力された文書データ410bに文書識別番号410aを付けて文書データファイル410に登録する(ステップS401)。次に、登録処理部360が、文書長ファイル420のヘッダー領域420aに記述された最も直近に登録された転置ファイル430の転置ファイル識別番号420gを参照して、該当する転置ファイル430を読み出す(ステップS402)。さらに、登録処理部360が、最も直近に登録した転置ファイル430のファイルサイズが規定サイズより大きいかどうかを判定する(ステップS403)。
次に、ステップS403において、転置ファイル430が規定ファイルサイズを超えていなければ(ステップS403:NO)、登録処理部360が、文書長ファイル420のリスト領域420bに文書識別番号410aと、文書長420fと、転置ファイル識別番号420gと、を登録する(ステップS404)。一方、転置ファイル430が規定ファイルサイズを超えていれば(ステップS403:YES)、登録処理部360が、新規の転置ファイル430を作成する(ステップS405)。次に、登録処理部360が、新規の転置ファイル識別番号420gを取得する(ステップS406)。さらに、ステップS404に行き、登録処理部360が、文書長ファイル420のリスト領域420bに文書識別番号410aと、文書長420fと、転置ファイル識別番号420gと、を登録する(ステップS404)。
次に、テキスト分割部340が、文書データ410bを索引単位430aに分割する(ステップS407)。そして、登録処理部360が、分割された索引単位430aの文書データ410b上の出現位置430bを求める(ステップS408)。さらに、登録処理部360が、ステップS403〜S406で定めた転置ファイル430に、ステップS408で求めた索引単位430aと、出現位置430bと、を全て登録する(ステップS409)。さらに、登録処理部360が、全ての索引単位430aを登録したか判定する(ステップS410)。
ステップS410において、登録未了であれば(ステップS410:NO)、ステップS409に戻り、登録処理部360が、転置ファイル430への登録処理を継続する。登録終了であれば(ステップS410:YES)、登録処理部360が、文書長ファイル420のヘッダー領域420aに記述された最も直近に登録された転置ファイル430の転置ファイル識別番号420c、登録されている全ての文書長を合計した全文書長420d、登録されている全ての文書データ410bの総数である全文書数420eを更新する(ステップS411)。
以上述べたように、第2の実施の形態によれば、登録処理部360が、文書記憶部400内部の転置ファイル430のうち最も直近に登録されたファイルが所定のファイルサイズを超えたら、新規の転置ファイル430を作成して登録処理を実行する。第2の実施の形態にかかる登録処理部360を備えたことにより、転置ファイル430を所定ファイルサイズ以下の複数のファイルに分割記憶し、文書検索装置全体として登録データが増加しても登録及び検索の処理時間を所定時間以下に維持する文書検索機能を実現することができる。
(第3の実施の形態)
以下、第3の実施の形態にかかる文書検索装置について説明する。第3の実施の形態が第1の実施の形態と異なる点は、登録処理部380による転置ファイル430の作成手順である。第3の実施の形態においては、登録処理部380が転置ファイル430の各ファイルへのファイルアクセス時間が均等になるようにラウンドロビン方式で登録対象ファイルを選択し、登録する手順を実行する。
図12は、第3の実施の形態にかかる文書検索装置220の概略構成を示すブロック図である。第3の実施の形態にかかる文書検索装置220は、文書処理部370と、文書記憶部400と、を備えている。更に、クライアントPC100側に入力部110と、出力部120と、を備えている。第3の実施の形態にかかる文書検索装置220においては、文書処理部370内部の登録処理部380が第1の実施の形態と異なる。
文書処理部370は、第1の実施の形態にかかる文書処理部300と同様、文書記憶部400への文書データの登録、検索及び削除と、文書データのテキスト分割を処理しており、登録処理部380と、削除処理部320と、検索処理部330と、テキスト分割部340と、を備えている。以上、登録処理部380以外の要素は第1の実施の形態と同様であるため、同じ要素は同じ符号で示し、説明を省略する。
第3の実施の形態にかかる文書検索装置220では、登録処理部380が転置ファイル430を予め所定数のファイルで構成するように作成しておき、各ファイルのファイルアクセス時間が均等になるようにラウンドロビン方式で登録対象ファイルを選択し、索引単位430aと、文書識別番号410aと、出現位置430bと、を登録対象の転置ファイル430に登録する処理を実行する。
登録処理部380は、上述の登録処理と同時に、文書長ファイル420のヘッダー領域420aに記述された最も直近に登録された転置ファイル430の転置ファイル識別番号420cを常時更新することにより、次の登録対象の転置ファイルの選択を容易にしている。
前述の登録処理を実行することにより、登録されるデータ数が増えていけばいくほど、予め所定数に設定した各転置ファイルのファイルサイズは大きくなっていくが、どのファイルに対しても、ファイルアクセス時間は予め設定した均等時間に制限され、長時間で通してみると、どのファイルでもファイルアクセス時間はほぼ同じとなる。その結果、検索対象に関わらず、登録、検索及び削除の処理時間をある所定時間以下に制限することができる。
第3の実施の形態にかかる文書検索装置220の登録処理部380が主に実行する登録処理フローについて詳細を説明する。図13は、第3の実施の形態にかかる文書検索装置220の登録処理動作を示すフローチャートである。
最初に、クライアントPC100の入力部110からユーザによる文書データ410bの入力を受け付けると(ステップS500)、登録処理部380が、入力部110に入力された文書データ410bに文書識別番号410aを付けて文書データファイル410に登録する(ステップS501)。次に、登録処理部380が、文書長ファイル420のヘッダー領域420aに記述された最も直近に登録された転置ファイル430の転置ファイル識別番号420gを参照して、該当する転置ファイル430を読み出す(ステップS502)。そして、テキスト分割部340が、文書データ410bを索引単位430aに分割する(ステップS503)。
次に、登録処理部380が、分割された索引単位430aの文書データ410b上の出現位置430bを求める(ステップS504)。そして、登録処理部380が、ステップS502で読み出した転置ファイル430に、ステップS504で求めた索引単位430aと出現位置430bを全て登録する(ステップS505)。さらに、登録処理部380が、全ての索引単位430aを登録したか判定する(ステップS506)。登録未了であれば(ステップS506:NO)、ステップS505に戻り、登録処理部380が登録処理を継続する。
一方、登録終了であれば(ステップS506:YES)、登録処理部380が、文書長ファイル420のリスト領域420bに文書識別番号410a、文書長420f、転置ファイル識別番号420gを登録する(ステップS507)。次に、登録処理部380が、文書長ファイル420のヘッダー領域420aに記述された最も直近に登録された転置ファイル430の転置ファイル識別番号420c、登録されている全ての文書長を合計した全文書長420d、登録されている全ての文書データ410bの総数である全文書数420eを更新する(ステップS508)。
以上述べたように、第3の実施の形態によれば、登録処理部380が、文書記憶部400内部の転置ファイル430を予め所定数のファイルで構成し、各ファイルに対するアクセス時間が均等化されたラウンドロビン方式で登録対象の転置ファイル430を選択し、登録処理を実行する。第3の実施の形態にかかる登録処理部380を備えたことにより、転置ファイル430の各ファイルへのファイルアクセス時間を均等化することができ、文書検索装置全体として登録データが増加しても登録及び検索の処理時間を所定時間以下に維持する文書検索機能を実現することができる。
なお、第1の実施の形態〜第3の実施の形態にかかる文書検索装置は、CPUなどの制御装置と、ROM(Read Only Memory)やRAMなどの記憶装置と、HDD、CDドライブ装置などの外部記憶装置と、ディスプレイ装置などの表示装置と、キーボードやマウスなどの入力装置を備えており、通常のコンピュータを利用したハードウェア構成となっている。
第1の実施の形態〜第3の実施の形態にかかる文書検索装置で実行される文書検索プログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録されて提供される。
さらに、第1の実施の形態〜第3の実施の形態にかかる文書検索装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。
第1の実施の形態〜第3の実施の形態にかかる文書検索装置で実行される文書検索プログラムは、上述した各部(登録処理部、検索処理部、削除処理部、テキスト分割部)を含むモジュール構成となっており、実際のハードウェアとしてはCPU(プロセッサ)が上記ROMからプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ、登録処理部、検索処理部、削除処理部およびテキスト分割部が主記憶装置上に生成されるようになっている。また、上述した文書記憶部400内部の記憶構成をHDD等に展開する。
なお、本発明は、上記の第1の実施の形態〜第3の実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化することができる。また、上記実施の形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成することができる。例えば、実施の形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施の形態にわたる構成要素を適宜組み合わせても良い。
第1の実施の形態にかかる文書検索装置200がネットワーク500上に接続された状態を示す模式図である。 第1の実施の形態にかかる文書検索装置200の概略構成を示すブロック図である。 第1の実施の形態にかかる文書検索装置200の文書データファイル410の記憶構造を示す概要図である。 第1の実施の形態にかかる文書検索装置200の文書長ファイル420の記憶構造を示す概要図である。 第1の実施の形態にかかる文書検索装置200に入力された文書データ410bを索引単位430aに分割する手順を示す概要図である。 第1の実施の形態にかかる文書検索装置200の転置ファイル430の記憶構造を示す概要図である。 第1の実施の形態にかかる文書検索装置200の登録処理動作を示すフローチャートである。 第1の実施の形態にかかる文書検索装置200の検索処理動作を示すフローチャートである。 第1の実施の形態にかかる文書検索装置200の削除処理動作を示すフローチャートである。 第2の実施の形態にかかる文書検索装置210の概略構成を示すブロック図である。 第2の実施の形態にかかる文書検索装置210の登録処理動作を示すフローチャートである。 第3の実施の形態にかかる文書検索装置220の概略構成を示すブロック図である。 第3の実施の形態にかかる文書検索装置220の登録処理動作を示すフローチャートである。
符号の説明
100 クライアントPC
110 入力部
120 出力部
130 検索条件
140 検索結果
200 文書検索装置
210 文書検索装置
220 文書検索装置
300 文書処理部
310 登録処理部
320 削除処理部
330 検索処理部
340 テキスト分割部
350 文書処理部
360 登録処理部
370 文書処理部
380 登録処理部
400 文書記憶部
410 文書データファイル
410a 文書識別番号
410b 文書データ
420 文書長ファイル
420a ヘッダー領域
420b リスト領域
420c 最も直近に登録された転置ファイルの転置ファイル識別番号
420d 全文書長
420e 全文書数
420f 文書長
420g 転置ファイル識別番号
430 転置ファイル
430a 索引単位
430b 出現位置
500 ネットワーク

Claims (8)

  1. 文書データと、該文書データに固有の文書識別情報と、を対応付けて記憶可能な文書データ記憶手段と、
    前記文書識別情報と、前記文書データを検索するための見出しとなる索引単位と、該索引単位の前記文書データ上の出現位置と、を対応付けて記憶可能な複数の転置ファイル記憶手段と、
    前記文書識別情報と、前記文書データの文字列長である文書長と、前記複数の転置ファイル記憶手段ごとに固有の第1の転置ファイル識別情報と、を対応付けて記憶可能な文書長記憶手段と、
    前記文書データ記憶手段に記憶された前記文書データを前記索引単位に分割するテキスト分割手段と、
    前記テキスト分割手段により分割された前記索引単位の前記文書データの文字列上における文字列位置を求め、前記文字列位置を前記索引単位の前記文書データ上の出現位置として、前記文書識別情報と、前記索引単位と、対応付けて前記複数の転置ファイル記憶手段のうちいずれか一つに登録する登録処理手段と、
    を有することを特徴とする文書検索装置。
  2. 前記文書データと、該文書データから前記テキスト分割手段により分割された前記索引単位と、前記第1の転置ファイル識別情報と、を対応付けて削除する削除処理手段をさらに有することを特徴とする請求項1に記載の文書検索装置。
  3. 前記文書長記憶手段は、前記登録処理手段による時系列で最後の登録先である前記転置ファイル記憶手段に固有の第2の転置ファイル識別情報と、前記文書データ記憶手段に記憶されている全ての前記文書データの文字列長の総和である全文書長と、前記文書データ記憶手段に記憶されている全ての前記文書データの総数である全文書数と、をさらに記憶可能であることを特徴とする請求項1に記載の文書検索装置。
  4. 前記文書データ記憶手段と、前記文書長記憶手段は、さらに前記文書識別情報によってソートされたB木データ構造を有し、
    前記複数の転置ファイル記憶手段は、さらに前記文書識別情報によってソートされたB木データ構造もしくは前記索引単位をキーとしたハッシュテーブル構造を有することを特徴とする請求項1に記載の文書検索装置。
  5. 前記登録処理手段は、前記登録処理手段による時系列で最後の登録先である前記転置ファイル記憶手段が所定の記憶容量を越えた際に、前記転置ファイル記憶手段に新たな記憶領域を確保し、該記憶領域に前記出現位置を登録することを特徴とする請求項1に記載の文書検索装置。
  6. 前記登録処理手段は、前記複数の転置ファイル記憶手段のうちいずれか一つをラウンドロビン方式で選択し、選択された前記転置ファイル記憶手段に前記出現位置を登録することを特徴とする請求項1に記載の文書検索装置。
  7. 文書検索装置において文書を検索する文書検索方法であって、
    文書データと、該文書データに固有の文書識別情報と、を対応付けて記憶可能な文書データ記憶手段と、
    前記文書識別情報と、前記文書データを検索するための見出しとなる索引単位と、該索引単位の前記文書データ上の出現位置と、を対応付けて記憶可能な複数の転置ファイル記憶手段と、
    前記文書識別情報と、前記文書データの文字列長である文書長と、前記複数の転置ファイル記憶手段ごとに固有の第1の転置ファイル識別情報と、を対応付けて記憶可能な文書長記憶手段と、を備え、
    前記文書データ記憶手段に記憶された前記文書データを前記索引単位に分割するテキスト分割ステップと、
    前記テキスト分割ステップにより分割された前記索引単位の前記文書データの文字列上における文字列位置を求め、前記文字列位置を前記索引単位の前記文書データ上の出現位置として、前記文書識別情報と、前記索引単位と対応付けて前記複数の転置ファイル記憶手段のうちいずれか一つに登録する登録処理ステップと、
    前記文書データと、該文書データから前記テキスト分割手段により分割された前記索引単位と、前記第1の転置ファイル識別情報と、を対応付けて削除する削除処理ステップと、
    を有することを特徴とする文書検索方法。
  8. 請求項7に記載の文書検索方法をコンピュータに実行させるプログラム。
JP2007071488A 2007-03-19 2007-03-19 文書検索装置、文書検索方法および文書検索プログラム Pending JP2008234204A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007071488A JP2008234204A (ja) 2007-03-19 2007-03-19 文書検索装置、文書検索方法および文書検索プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007071488A JP2008234204A (ja) 2007-03-19 2007-03-19 文書検索装置、文書検索方法および文書検索プログラム

Publications (1)

Publication Number Publication Date
JP2008234204A true JP2008234204A (ja) 2008-10-02

Family

ID=39906912

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007071488A Pending JP2008234204A (ja) 2007-03-19 2007-03-19 文書検索装置、文書検索方法および文書検索プログラム

Country Status (1)

Country Link
JP (1) JP2008234204A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012038124A (ja) * 2010-08-09 2012-02-23 Nec Corp 文書処理装置、文書処理方法、及び、プログラム
CN106156111A (zh) * 2015-04-03 2016-11-23 北京中知智慧科技有限公司 专利文件检索方法、装置和系统
CN109241360A (zh) * 2018-08-21 2019-01-18 阿里巴巴集团控股有限公司 组合字符串的匹配方法及装置和电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006134191A (ja) * 2004-11-09 2006-05-25 Hitachi Ltd 文書検索方法およびそのシステム
JP2006331117A (ja) * 2005-05-26 2006-12-07 Ricoh Co Ltd 文書検索システム、文書検索装置、文書検索方法および文書検索プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006134191A (ja) * 2004-11-09 2006-05-25 Hitachi Ltd 文書検索方法およびそのシステム
JP2006331117A (ja) * 2005-05-26 2006-12-07 Ricoh Co Ltd 文書検索システム、文書検索装置、文書検索方法および文書検索プログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012038124A (ja) * 2010-08-09 2012-02-23 Nec Corp 文書処理装置、文書処理方法、及び、プログラム
CN106156111A (zh) * 2015-04-03 2016-11-23 北京中知智慧科技有限公司 专利文件检索方法、装置和系统
CN109241360A (zh) * 2018-08-21 2019-01-18 阿里巴巴集团控股有限公司 组合字符串的匹配方法及装置和电子设备
CN109241360B (zh) * 2018-08-21 2021-08-20 创新先进技术有限公司 组合字符串的匹配方法及装置和电子设备

Similar Documents

Publication Publication Date Title
JP5116775B2 (ja) 情報検索方法及び装置及びプログラム及びコンピュータ読取可能な記録媒体
JP4972358B2 (ja) 文書検索装置、文書検索方法、文書検索プログラム及び記録媒体。
JP4314204B2 (ja) 文書管理方法、システム及びプログラム
JP2009238007A (ja) 情報検索装置及びプログラム
US20200278989A1 (en) Information processing apparatus and non-transitory computer readable medium
JP4237813B2 (ja) 構造化文書管理システム
JP5345582B2 (ja) シソーラス構築システム、シソーラス構築方法およびシソーラス構築プログラム
JP2008234204A (ja) 文書検索装置、文書検索方法および文書検索プログラム
JP2004178421A (ja) 文書検索装置、文書検索方法、プログラムおよび記録媒体
JP5179564B2 (ja) クエリセグメント位置決定装置
JP4108337B2 (ja) 電子ファイリングシステム及びその検索インデックス作成方法
JP2009104669A (ja) 文書検索方法、システム及びプログラム
JP2004192374A (ja) 文書検索装置、プログラムおよび記録媒体
JP2008276524A (ja) 情報処理装置及び情報処理方法
JP2008225957A (ja) 文書検索装置、方法、及びプログラム
JP2009037359A (ja) データ登録検索方法、データ登録検索プログラムおよびデータベースシステム
JP5505207B2 (ja) 情報検索装置、情報検索方法及び情報検索プログラム
JP5530334B2 (ja) 情報検索装置、及び情報検索プログラム
JP2003281181A (ja) 文書検索装置、文書検索方法、プログラム及び記録媒体
JP2009175896A (ja) 情報検索装置及び方法及びプログラム及びコンピュータ読取可能な記録媒体
JP2004240769A (ja) 情報検索装置
JP5145202B2 (ja) 文書検索装置および文書検索プログラム
JP5560971B2 (ja) 文書検索装置、文書検索方法、及びプログラム
JP5620896B2 (ja) 文書検索装置及び方法及びプログラム
JP2020187647A (ja) 検索方法、検索プログラム、および情報処理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090824

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111011

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120417