ヘッダーをスキップ
Oracle® Textアプリケーション開発者ガイド
12cリリース1 (12.1)
B71317-04
  目次へ移動
目次
索引へ移動
索引

前
次
 

CDIによるパフォーマンス・チューニング

FILTER BY列のMDATAへのマッピングがサポートされているため、RANGEおよびLIKEのサポートされた機能を制限することで、問合せのパフォーマンスは等価性検索に対して最適化されます。ただし、FILTER BY列が連続した値を含むかまたはそのカーディナリティが非常に高い場合は、FILTER BY列のMDATAへのマッピングはお薦めしません。このようなマッピングは、非常に時間がかかり、$I表の範囲が限定され、$Xのパフォーマンスが低下する可能性があります。このような連続した列の一例として、DATEスタンプを使用した場合があります。このような連続した列の場合は、SDATAへのマッピングをお薦めします。

SORT述語およびFILTER BY述語をCDIに含めるか含めないかには、次のヒントを使用できます。

注意:

domain_index_filterヒントは、問合せオプティマイザにCDIの使用を強制しません。かわりに、コストベース・オプティマイザがCDIの使用を選択している場合は、フィルタ述語も索引に含められます。問合せオプティマイザにCDI索引の選択を強制するには、さらにINDEXヒントも使用する必要があります。

例7-1 CDIヒントを使用したテキスト問合せのパフォーマンス・チューニング

次の例では、表booksに対し、最適化された問合せを実行しています。

SELECT bookid, pub_date, source FROM
  (SELECT /*+ domain_index_sort domain_index_filter(books books_ctxcdi) */ bookid, pub_date, source
      FROM books
      WHERE CONTAINS(text, 'aaa',1)>0 AND bookid >= 80
      ORDER BY PUB_DATE desc nulls last, SOURCE asc  nulls last, score(1) desc)
 WHERE rownum < 20;