ICDロゴ

フルテキスト検索 (full-text search)

【フルテキスト・ケンサク】

別名
全文検索 (full-text search) 【ゼンブン・ケンサク】

最終更新日: 2000/07/11

 文書中に含まれる一部の文字列を指定して、それが含まれる文書を特定し、文書中でそれが表記されている場所を検索できる機能、またはそのような検索を行うこと。

 大量の文書を対象として検索処理を行うと、膨大な時間がかかることがある。このため性能の低いコンピュータで検索処理を行う場合には、あらかじめ文書の特徴を要約した情報や、内容を連想できるキーワードを索引として用意しておき、これを検索することで文書を特定する方式がある。これをキーワード検索方式という。この方法では、比較的少ない計算量で検索が可能だが、代わりに文書のデータを直接検索するわけではないので、検索もれなどが発生する可能性がある。また、キーワードを付ける負担も大きいし、かならずしもすべてのキーワードが適切に付けられている保証もない。キーワードを自動的に文書ファイルから取り出して登録するという方法もあるが、日本語では単語の区切りが明確ではないので、かならずしもすべての単語が正しく検索できるわけではない。

 これに対してフルテキスト検索では、検索の母体が文書全体なので、指定したキーワードを含む文書をもれなく検索できる。原理的には、文書をすべて走査して、出現している語句をすべて列挙しておき、あらかじめ検索用インデックスを作成しておく。日本語のフルテキスト検索では、Nグラム(N-gram)方式がよく使われている。たとえばN=2のNグラム方式といえば、「文字列の検索処理」という単語を2文字ごとに分解して、その出現位置を記憶しておく。この場合は、「(1)文字」、「(2)字列」、「(3)列の」、「(4)の検」、「(5)検索」、「(6)索処」、「(7)処理」、「(8)理」と分解して、インデックスファイルに登録しておく(カッコ内の数字は出現位置)。ここで「検索」という単語を探す場合は、インデックスファイルから、「検索」という単語が含まれている文書を探せばよい。「検索処理」ならば、「検索」と「処理」の両方が含まれているファイルを探し、かつその出現位置が2ずれているもの(この場合は、(5)と(7)で見つかる)を探せばよい。英語の場合は、単語単位で区切って(英語では、単語は空白などで区切られているので、単語抽出が容易)、Nグラム方式を適用する。

 代表的なフルテキスト検索システムとしては、マイクロソフトのIndex Server、ジャストシステムのConceptBase Searchなどがある。また、InfoseekなどのWWWの検索エンジンでも、このフルテキスト検索技術が使われている。

Copyright (C) 2000-2007 Digital Advantage Corp.

アイティメディアの提供サービス

キャリアアップ