TOP業務システム> Ludiaの導入
Ludia
高性能なオープンソース全文検索システム「Ludia」

第3回:Ludiaの導入準備

著者:NTTデータ  加納 寿浩   2007/1/25
1   2  3  次のページ
Ludiaの導入

   第1回から第2回は、全文検索機能の必要性と仕組みや、導入の際の考慮点などを説明しました。そして第3回では、いよいよ全文検索ソフトLudiaを導入し、全文検索機能を体験してみます。
データベースの全文検索と、テキストファイルの全文検索

   Ludiaはデータベース(PostgreSQL)に対して、全文検索機能を提供します。しかし、テキストデータはデータベースだけでなく、Webサーバやファイルサーバにも多数存在します。全文検索機能を導入する際に、次のような疑問をもたれるかもしれません。

   なぜデータベースに対する全文検索で、テキストファイルに対する全文検索ではないのか。

   通常、オフィス環境で使用する全文検索は、GoogleやYahoo!などを利用して行うインターネット検索(HTML文書検索)、またはファイルサーバ検索(ワープロ文書やスプレッドシート文書やテキストファイルなどの検索)が多く、データベースに対する全文検索はイメージがないかもしれません。通常、エンドユーザにはデータベースの機能を直接公開しませんので、これは当然のことといえます。

   しかし徹底的に活用すべきデータソースは、企業においてもっとも重要なデータに対して求めることが効果的・効率的です。そのデータの格納場所はデータベースであることが多いと思います。エンドユーザは企業内システムが提供するインターフェースを用いて、データベースの全文検索を行う状態になっていることが望ましいといえます。

企業内におけるデータの格納場所
図1:企業内におけるデータの格納場所

   またデータベースに対する全文検索は、テキストファイルに対する全文検索より、高度な検索を高速に行うことができるため、性能的なメリットがあります。テキストファイルは、ある文書の管理属性となる作成者名や作成日をテキストファイルの中に保存します。

   これに対しデータベースは文書の管理属性となる項目を、各々列として独立して管理します。そのため、データベースは、この各々の列に対し個別の検索条件を指定し、そのすべての条件を満たすもののみを抽出することができます。

   例えば作成日に一般のインデックス(B-TREEインデックス)を設定することにより、文書本文に対するキーワード検索と、文書の作成日を検索条件とした複合条件検索を、複数のインデックスを併用して、より高速に実現することができます。

データベースの全文検索とテキストファイルの全文検索
図2:データベースの全文検索とテキストファイルの全文検索
(画像をクリックすると別ウィンドウに拡大図を表示します)

   このように重要なデータに対する多様な全文検索を高速に行うためには、データベースに対する全文検索機能が適しているといえます。

1   2  3  次のページ


株式会社NTTデータ 加納 寿浩
著者プロフィール
株式会社NTTデータ  加納 寿浩
日本でも有数の大規模システム更改プロジェクトに企画段階からサービス開始まで従事。主にメインフレーム上のデータベース性能対策を行う。その後、該当システムのオープン化検証にて、オープン系DBMSの評価を行った。2005年から現職。Ludiaプロジェクトの立ち上げを行う。


INDEX
第3回:Ludiaの導入準備
Ludiaの導入
  オープンソース全文検索の導入
  データベースの文字コードの確認