ホーム > 全文検索SAVVY > XML対応超高速全文検索エンジン SAVVY/NEO

savvy/neo

超高速全文検索の開発ツール・開発システム

超高速全文検索の開発ツール・開発システム「SAVVY/NEO」

知識表現モデル型超高速全文検索エンジンのSAVVY/NEOは、ジップインフォブリッジが1980年代から培って参りました国産屈指の全文検索エンジンと、オブジェクト間の関連を保持する意味ネットワークエンジンを核とした、開発・組み込み用の全文検索エンジンライブラリです。開発ツール・開発システムとして、様々なプログラミング環境から利用でき、多彩な機能を様々なシステムに取り込むことが可能となっています。
強力な全文検索機能によって、完全一致検索・あいまい検索・あるまで検索など、さまざまな検索方式に対応すると共に、あらかじめデータ構造を定義する必要がないことから、不定形データやXMLのような構造化文書に適しています。

SAVVY/NEOの概要

SAVVY/NEO(サビーネオ)は、ジップインフォブリッジが1980年代から培って参りました国産屈指のパターン認識技術に基づく全文検索技術を核とした、組み込み用の全文検索エンジンライブラリです。Microsoft Visual C/C++、Microsoft Visual Basic、Microsoft .NET、Javaなど様々なプログラミング環境から利用でき、SAVVY/NEOの多彩で高速な全文検索機能を様々なシステムに取り込むことが可能です。

SAVVY/NEOはカード型データベースを採用していますので、1枚のカードに複数のデータを追加できます。ダイナミックカード機能によりカード内のデータ構成は事前定義が不要で、 カードごとに異なるデータ構造を持つことも、後からカードにデータを追加することもできます。XMLのような構造化された文書の検索にも適しています。

全文検索エンジンは、ジップインフォブリッジ独自のパターン認識技術をベースとするもので、一般的な完全一致検索だけでなく、あいまい検索、あるまで検索、自然語調検索など、 多彩な全文検索方式をサポートします。全文検索のためのインデキシング(SAVVYの全文検索エンジンでは、この作業を「学習」と呼びます)は完全にリアルタイムで行われ、 データの投入と同時に全文検索の対象となります。インデキシングも非常に高速です。

全文検索エンジンライブラリSAVVY/NEOは、シソーラス辞書機能も搭載しています(シソーラス辞書は同義語辞書とは異なり、 狭義や関連といった様々な観点で分類される辞書です)。シソーラス辞書で検索条件 を展開してから全文検索することで、幅を持たせた全文検索が実現できます。また、シソーラス辞書は運用中のリアルタイム編集が可能で、編集内容はすぐに全文検索などに反映されます。

全文検索エンジンライブラリSAVVY/NEOは、全文検索時に使用するインデックスファイルのみ管理し、オリジナルデータそのものは保持しませんが、「セマンティックオプション」を追加することでデータの格納も可能なカード型データベースへと拡張することができます。 また、意味ネットワーク機能により、カード間の関連情報を意味リンクとして格納することや、その全文検索も可能となります。

「セマンティックオプション」にはユーザ管理機能とオブジェクトのアクセス制御機能も含まれます。これによりユーザ認証や、データへのセキュリティ設定なども可能となります。

SAVVY/NEOの多彩な全文検索機能

SAVVY/NEOの有する全文検索エンジンは、ジップインフォブリッジ独自のパターン認識技術をベースとするもので、一般的な完全一致検索だけでなく、多種多様な全文検索方式をサポートします。
全文検索のためのインデキシング(全文検索SAVVYのエンジンではこの作業を「学習」と呼びます)は完全にリアルタイムで行われ、データの投入と同時に全文検索の対象となります。 インデキシングも非常に高速です。
検索方式 概要
完全一致検索 指定した条件文字列に完全に一致するデータを全文検索します。
一般的な検索エンジンにおけるフレーズ検索に相当します。
例えば新聞記事データに対して”コンピュータ”で検索すると、”コンピュータ”を含む記事データが検索できます。
あいまい検索 指定した条件と字面が似ている文字列を含むデータが全文検索できます。
カタカナの表記のゆれや入力ミスなどを、辞書データなしに全文で検索することができます。
例えば"プログラミングインターフェイス"という条件で、"プログラムインタフェース"を含むデータの全文検索が可能です。
この全文検索方式では、検索精度というパラメータで、あいまい度合いの調節が可能です。検索語が不確定な場合や、OCR結果のようにデータが不正確な場合にも適しています。
あるまで検索 あいまい検索の全文検索の精度を自動調節する検索方式です。
指定した条件に似ている度合いの高いデータを全文検索します。
近傍検索 複数の条件と検索文字数を指定し、それらの条件が指定文字範囲内に出現するデータを全文検索します。データが長く、条件に該当する文字列が広範囲に散らばってしまうような場合に有効です。
例えば、"東京"と"大学"という文字列が100文字以内に出現するデータを全文検索する、といったことが可能です。
ワイルドカード検索
前方一致検索
後方一致検索
ワイルドカードを含む条件を全文検索します。"*"(n文字置換)、"?"(1文字置換)を条件に含めることが出来ます。
また、条件の末尾に"*"を付けることで前方一致検索が、条件の先頭に"*"を付けることで後方一致検索が行えます。
シソーラス辞書展開検索 指定した条件文字列をシソーラス辞書(後述)で展開して全文検索します。
辞書に登録された同義語や関連語などを自動的に条件に含めることで、より幅広い全文検索を行います。
例えば、辞書に"電子計算機"と"コンピュータ"という用語が同義語として登録されている場合、"電子計算機"という条件で"コンピュータ"を含むデータも全文検索することが可能です。
自然語調検索 短文を条件として全文検索する方式です。
例えば、"コンピュータウィルスを予防する上で効果的な方法"といったような条件で全文検索できます。辞書データは不要ですが、辞書データがある場合は、より精度の高い検索が行えます。
空データ検索 データが空のものを全文検索します。
データが空(0文字)であることに意味があるような場合、それを探し出すことが出来ます。

表記ゆれ・OCR誤認識に有効な文字列正規化フィルタ

全文検索エンジンライブラリ、SAVVY/NEOの持つ文字列正規化フィルタは、アルファベットの大文字/小文字や全角/半角などの同一視や、記号を無視して全文検索するための機能です。 フィルタファイルを作成しておくことで、同一視、あるいは無視する文字の定義を自由に設定可能です。

例えば「バ」と「ヴァ」を同一視する設定にすれば、「ヴァイオリン」を「バイオリン」で検索することができます。 また、文字だけでなく文字列も指定できるため、「(株)」と「株式会社」を同じものとして検索させることもできます。 入力間違いが多い漢字の組み合わせを同一視させたり、OCRの誤認識しやすい文字を同一視させるなどの応用も可能です。

関連語検索に有効なシソーラス辞書機能

全文検索エンジンライブラリSAVVY/NEOは、シソーラス辞書機能も搭載しています。
(シソーラス辞書は同義語辞書とは異なり、狭義や関連といった様々な観点で分類される辞書です)。
シソーラス辞書で検索条件を展開してから全文検索することで、幅を持たせた全文検索の結果が実現できます。
また、シソーラス辞書は運用中のリアルタイム編集が可能で、編集内容はすぐに全文検索などに反映されます。

全文検索のヒット順に応じたソート機能

全文検索を実行し大量の情報がヒットした場合に、全文検索結果の並びをスコア(検索条件との適合度)の高いもの順にしたり、カードやデータのID順に並び替えることができます。

セマンティックオプションを利用している場合は、データ内容やサイズによるソートも可能です。複数条件の指定(条件の対象データが同値の部分に適用する第2、第3の条件の指定)や、対象データの部分指定(データの3文字目から5文字分の内容だけを使うなど)のソート、 前述の文字列正規化フィルタを適用した結果のソートなども可能です。

多言語対応及びマルチスレッド

UNICODEによる多言語対応

データごとに言語が異なる場合はもとより、1データ内に複数の言語が混ざるものでも検索が可能です。

トランザクション機能

コミットやロールバック機能を備えています。

スレッド対応

マルチスレッドに対応しており、並列して処理が行えます。