 全文検索システム http://opensedk.sourceforge.jp/pukiwiki.php?%C1%B4%CA%B8%B8%A1%BA%F7%A5%B7%A5%B9%A5%C6%A5%E0 [ リロード ]   [ 新規 | 編集 | 凍結解除 | 差分 | 添付 ]   [ トップ | 一覧 | 単語検索 | 最終更新 | バックアップ | ヘルプ ] --------------------------------------------------------------------------------最新の20件2005-09-16 コンテンツ管理システム RSS/1bの一部としてのkoike 2005-08-13 RSS/1の全体の構造 Open-SEDKプロジェクト 2005-08-07 分散サービスレジストリ 2005-07-31 開発ノート：他DSRのサービス検索 2005-07-12 ストレージシステム 2005-06-16 ConcreteInterfaceFactory SearchEngine 関連システムとの接続インターフェース 全文検索の仕組み サマリー(要約) ドキュメント インデックス 2005-06-11 全文検索システム 2005-06-08 CVSサーバー上のプロジェクト一覧 2005-05-15 提供パッケージの依存関係 2005-04-09 console/shell 2005-04-06 全文検索apサーバー'phalanx' 2005-04-03 testsite  全文検索システム 対象範囲 全文検索エンジン'koike' インストール 実行方法 構成要素別解説全文検索システム↑対象範囲全文検索システムを開発するにあたり、全文検索システムとして開発する範囲を定義します。全文検索のコアとなるエンジンと、それを操作するためのインターフェース、インデックスや文書データを格納するシステムに分割することを想定し、以下のような役割分担をしました：全文検索エンジン インデックス管理システム ドキュメント管理システム インデクサ クライアントソフトウェアこの項では、「全文検索エンジン」と「インデクサ」を開発します。その他のものについては、別の項で扱うものとします。なお、そのままではテストがしにくいため、スタンドアロンで動作するクライアントソフトウェアも適当に実装します。↑全文検索エンジン'koike'koikeは、インデックス管理システム、ドキュメント管理システム(関連システムと呼びます)とは独立した全文検索エンジンのコアコンポーネントです。 koikeは関連システムとの接続を実現する、抽象化されたインターフェースを使用して、全文検索処理のコアとなる処理を実現します。この結果、全文検索エンジンの開発者は、関連システムとの接続インターフェースの開発のみに注力すればよいことになります。koikeは全文検索エンジンの抽象化されたインターフェースを提供するものですが、実際の実装がなければ動かないしわかりにくいので、抽象クラスであるSearchEngineクラスを継承した具象クラス、RSSSearchEngineを開発します。RSSSearchEngineは、RSS/1b向けの検索処理を実現する、全文検索エンジンです。その場合でも、関連システムとのインターフェースは疎であるため、この全文検索エンジンと、RSS/1bで想定している以外の関連システムとを結合することもできます。開発の第1段階として、まず関連システムなしでも開発/テストができるように、RSSSearchEngineは完全に実装し、関連システムにはスタブを使用するようにします。関連システムの実装が完全に出来次第、RSSSearchEngineと結合する、というスケジュールです。↑インストールまず実際に開発したものを、ダウンロードしてインストールする方法を説明します。1. koike-1.0.zipをダウンロードし、適当なディレクトリに展開する。2. 展開したディレクトリに移動し、antと入力してコンパイルする。↑実行方法一通り、RSSSearchEngineを実行する方法について説明します。1. インデックスシステム(スタブ)用のインデックスを生成する。RSSSearchEngineを動作させるには、まずインデックスシステムが必要です。koike-1.0.zipのデフォルトの設定では、同梱されているスタブのインデックスシステムを使用するようになっているため、これを使用します。インデックスを生成するには、antを使用して以下のようにします。ant index成功すると、data/stub/stub.indexが生成されます。※なお、検索対象(=インデクシング対象)となる文書は、docs/stubs/isys配下の*.txtです2. クライアントソフトウェアを起動する全文検索を実際に確かめるには、動作確認用のため適当に開発した、全文検索クライアントソフトウェアを使用します。やはりantを使って以下のようにします。ant fts成功すると、下記のような画面が表示されます。一部の方は見ておわかりいただけると思いますが、FTSのクライアントを改変して使用しています。このクライアントが、内部でRSSSearchEngineに検索語を引き渡し、検索結果を表示しています。画面最下行のテキスト入力欄に、"Open-SEDK RSS/1"と入力し、ENTERキーを押すと以下のように検索結果が表示されます。検索結果の表示に関する各項目の意味は以下の表のとおりです：項目 表示内容 該当 検索した結果、該当した件数 結果 検索結果連番(1～) [TITLEn] 本来は文書のタイトル。スタブのため、"TITLE" + 文書番号を出力 引用元 文書の所在URL。スタブのため、http://www.logical-paradox.org/ノードID/index.htmlを出力 (nodennnnn:m) 文書が保管されているドキュメント管理システムのノードIDと文書番号 RSS/1bでは、非常に大量の文書データを保持するために、複数のドキュメント管理システム(=RSS/1bではコンテンツ管理システムと呼ぶ)を使用し、分散させて保存しています。ノードIDというのは、個々のドキュメント管理システム(ノード)に対して一意に割り当てられる識別コードです。文書の保管場所を特定するには、ノードIDとノード内での文書番号が必要です。検索結果のほとんどの項目は、本来ドキュメント管理システムから取得できる情報ですが、今回はスタブのため、適当な値を表示しています。本当のドキュメント管理システムが開発されれば、上記の表の項目以外にも、文書の情報を表示することができます。↑構成要素別解説以下では、koikeの構成要素別に解説を進めます。構成要素には、例としてスタブも含めます。インデックス ドキュメント サマリー(要約) 全文検索の仕組み 関連システムとの接続インターフェース RSS/1bの一部としてのkoike --------------------------------------------------------------------------------添付ファイル: opensedk_rss1.png 3件 [詳細] fts.png 4件 [詳細] --------------------------------------------------------------------------------                       Last-modified: Sat, 11 Jun 2005 12:41:16 JST (106d)Modified by me "PukiWiki" 1.4.3 Copyright © 2001,2002,2003 PukiWiki Developers Team. License is GNU/GPL.Based on "PukiWiki" 1.3 by sng Powered by PHP 4.3.10-16 HTML convert time to 0.469 sec. 