Senna 組み込み型全文検索エンジン
English | Japanese
Sennaは組み込み型の全文検索エンジンです。DBMSやスクリプト言語処理系等に組み込むことによって、その全文検索機能を強化することができます。 n-gramインデックスと単語インデックスの特徴を兼ね備えた、高速かつ高精度な転置インデックスタイプのエンジンです。コンパクトな実装ですが、大規模な文書量と検索要求を処理できるよ うに設計されています。また、純粋なn-gramインデックスの作成も可能です。
特徴
組み込み型全文検索エンジン
DBMSやスクリプト言語処理系等への組み込み易さを重視しています。
多くの全文検索エンジンは文書ファイルと転置ファイルから構成されますが、Sennaではあえて転置ファイル機能のみを提供し、文書ファイルの管理は組み込み対象のシステムが元々備えているストレージエンジンに任せることによって、文書データの重複管理を避けています。
また、排他制御を加えることなく、読み込み処理と書き込み処理を安全に同時実行できますので、高度な同時実行制御機能を持つストレージエンジンにも性能を阻害することなく組み込むことができます。
高精度
インデックスのサイズが比較的小さくて適合率が高いという単語インデックス方式のエンジンの特徴を備えつつ、n-gramインデックス方式エンジンのような再現率の高さを実現しています。
Sennaはデフォルトでは形態素解析によって分かち書きされた単語単位で転置ファイルを構成しますが、高速な部分一致検索が可能な語彙表を用いることによって、通常の単語インデックス方式のエンジンでは検索洩れになってしまう文書も検索することができます。
インクリメンタルな文書の追加/変更/削除
作成したインデックスに対して、インクリメンタルに文書の追加/変更/削除操作を加えることができます。このため、一度作成したインデックスを作成し直す必要がありません。
ライセンス
Senna はフリーソフトウェアです。あなたは、 Free Software Foundationが公表したGNU Lesser General Public License が定める条項に従って本プログラムを再頒布または変更することができます。
Senna は有用とは思いますが、頒布にあたっては、市場性及び特定目的適合性についての暗黙の保証を含めて、いかなる保証も行ないません。詳細については GNU Lesser General Public License をお読みください。
動作環境
- OS
- Linux, FreeBSD, MacOS X, Windows
- 一部の機能を利用するために必要なソフトウェア
- (分かち書きインデックスを作成する場合(推奨))MeCab-0.80以降 http://mecab.sourceforge.jp/
連絡先
<senna-at-razil.jp>