Full-Text Engine

SQL Server Full-Text Engine は、フルテキスト インデックス作成機能付きの検索エンジンです。SQL Server 2008 では、Full-Text Engine はデータベース エンジンに完全に統合されています。つまり、これまでのように単独のプロセス (msftesql.exe) として実行されるのではなく、SQL Server プロセス (sqlservr.exe) の一部として実行されます。Full-Text Engine をデータベース エンジンに統合することにより、フルテキストの管理、混合クエリの最適化、および全体的なパフォーマンスが向上しています。SQL Server プロセス内に存在するフルテキスト検索コンポーネントの詳細については、「フルテキスト検索のアーキテクチャ」を参照してください。

SQL Server 2008 では、Full-Text Engine がサイド バイ サイドでインストールされます。SQL Server のインスタンスごとに、専用の Full-Text Engine インスタンスがあります。たとえば、専用のコンポーネント (ワード ブレーカやフィルタなど)、リソース (メモリなど)、構成 (インスタンス レベルでのサービス レベル設定) があります。

Full-Text Engine の機能

Full-Text Engine では、フルテキスト インデックスの読み取りと書き込みを行います。フルテキスト インデックスは、SQL Server に格納されるようになりました。Full-Text Engine は次の機能をサポートしています。

  • インデックス作成
    Full-Text Engine は、インデックス作成に必要なさまざまなタスクを実行します。たとえば、ベース テーブルからデータを収集し、そのデータをフィルタ デーモン ホストに送信します。フィルタ デーモン ホストは、フルテキスト Gatherer から渡されたデータのフィルタ処理とトークン化を行います。データがフィルタ処理され、単語が分解されると、SQL Server プロセスがその結果を受け取り、逆インデックス構造としてインデックスを作成します。この逆インデックス構造は、内部テーブルとしてデータベースに格納されます。

  • クエリ
    Full-Text Engine は、フルテキスト検索クエリを処理し、フルテキスト選択基準に一致するベース テーブル内のエントリ (行またはドキュメント) を決定します。選択基準を満たすエントリが見つかると、その行番号とオプションの順位値を返します。この情報は、クエリ結果セットの作成に使用されます。

    Full-Text Engine は、単純な語句検索と高度な語句検索の両方をサポートしています。詳細については、「サポートされるクエリ用語の形式」を参照してください。