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

前
次
 

ローカル・パーティションCONTEXT索引を使用した応答時間の短縮

データをパーティション化し、ローカル・パーティション索引を作成すると、問合せのパフォーマンスが向上します。パーティション表では、各パーティションに独自の索引表セットがあります。実際には複数の索引がありますが、各索引からの結果が必要に応じて組み合され、最終的な結果セットが生成されます。

LOCALキーワードを使用して、CONTEXT索引を次のように作成します。

CREATE INDEX index_name ON table_name (column_name) 
INDEXTYPE IS ctxsys.context
PARAMETERS ('...')
LOCAL

パーティション化された表および索引を使用すると、次のような問合せのパフォーマンスが向上します。

パーティション・キー列に対する範囲検索

これは、パーティション・キー列の特定の値範囲に検索を限定する問合せです。たとえば、日付範囲に対する次の問合せについて考えます。

SELECT storyid FROM storytab WHERE CONTAINS(story, 'oliver')>0 and pub_date BETWEEN '1-OCT-93' AND '1-NOV-93';

日付範囲が制限されている場合は、1つのパーティションを検索するだけで問合せが満たされる可能性があります。

パーティション・キー列でのORDER BY

これは、最初のn個のヒットのみが必要で、ORDER BY句がパーティション・キーを指定する問合せです。次のように、price列に対するORDER BY問合せで最初の20ヒットをフェッチする場合を考えてみます。

SELECT * FROM (
SELECT itemid FROM item_tab WHERE CONTAINS(item_desc, 'cd player')
  >0 ORDER BY price)
  WHERE ROWNUM < 20;

この例では、表はpriceによりパーティション化されており、最初のパーティションからのヒットを取得すれば問合せが満たされる可能性があります。