IBM Books
(C) IBM Corp. 2000

Net Search Extender 管理およびユーザーズ・ガイド


テキスト索引の作成

サマリー

時期
検索対象のテキストを含んでいる列ごとに 1 回。

コマンド
CREATE INDEX ... FOR TEXT ... (以下の例を参照)

権限
表に対する CONTROL

サポートされているデータ・タイプのテキスト索引を作成できます。 ただし、以下のデータ・タイプでは要件が異なります。

また、ストアード・プロシージャー用のテキスト索引の作成に関しても要件は異なります。

テキスト索引を作成すると、以下のオブジェクトも作成されます。

ログ表
ログ表は、ユーザー表内で変更されたすべての行を追跡します。 Recreate index on Update オプションを選択する場合、 またはレプリケーション・キャプチャー表を使用する場合には、 ログ表は作成されないので注意してください。

イベント表
この表は、テキスト索引の更新時の問題に関する情報を収集します。

ユーザー表のトリガー
トリガーによって、列内の文書が追加、削除、 または変更された場合は常に、ログ表に情報が追加されます。 この情報は、次回の索引作成時に索引を同期化するときのために必要です。

トリガーが作成されるのは、ログ表を作成し、 かつ基本表 (ビューでもニックネーム表でもない) のテキスト索引を作成した場合だけであることに注意してください。

パフォーマンスおよびディスク・スペースを最適化するために、CREATE INDEX コマンドを使用して、 表のために別の表スペースを指定できます。

DB2 LOAD コマンドを使用して文書をインポートすると、 問題が発生する可能性があります。 これは、トリガーが開始されず、 ロードされた文書の索引を増大して作成することができないためです。

したがって、DB2 IMPORT コマンドを使用することをお勧めします。 このコマンドはトリガーをアクティブ化します。

次の例では、表 htmltab 内のテキスト列 HTMLFILE のテキスト索引を作成します。

db2text create index DB2EXT.HTMLIDX for text on DB2EXT.HTMLTAB 
           (HTMLFILE) format HTML
 

この表の主キーが必要です。

索引作成のデフォルト値は、db2ext.dbdefaults ビューから取られます。

索引作成時にエラーが発生した場合には、 いわゆる索引更新イベントがイベント表に追加されます。 たとえば、索引作成のためにキューに入れられた文書が見つからない場合などです。 詳細については、イベント・ビューを参照してください。

CREATE INDEX が行った変更を元に戻すには、 DROP INDEX コマンドを使用します。 詳細については、テキスト索引のドロップを参照してください。

テキスト索引とデータベースを同期させるには、次のコマンドを使用します。

db2text update index DB2EXT.HTMLIDX for text

同期が終了するまで、 文書の検索を行うことはできません。

検索のサマリー

索引作成中に選択するオプションによって、 以下のようなさまざまな検索を行うことができます。

  • SQL スカラー検索関数は、 ビューに関して作成されたテキスト索引以外のすべてのテキスト索引を処理します。
  • ストアード・プロシージャー検索関数は、 キャッシュを使用して作成されたテキスト索引のみを処理します。
  • SQL 表値関数は、ビューに作成されたテキスト索引を含むすべてのテキスト索引を処理します。


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]