2.312 RESULT_CACHE_MODE
RESULT_CACHE_MODE
では、結果キャッシュに格納する対象になる問合せを指定します。結果キャッシュ演算子が指定されている問合せ計画のみが、結果キャッシュに対する読取りまたは書込みを試行します。
特性 | 説明 |
---|---|
パラメータ・タイプ |
文字列 |
構文 |
|
デフォルト値 |
|
変更可能 |
|
PDBで変更可能 |
はい |
基本 |
いいえ |
Oracle RAC |
複数インスタンスには、異なる値を指定可能。 |
値:
-
MANUAL
問合せヒントまたは表注釈を使用した場合のみ問合せの結果を結果キャッシュに格納できます。
-
MANUAL_TEMP
問合せヒントまたは表注釈を使用した場合のみ問合せの結果を結果キャッシュに格納できます。ヒント付きのすべての問合せは、
/*+ RESULT_CACHE (TEMP=FALSE) */
ヒントを使用して明示的に禁止されていないかぎり、ディスクの一時セグメントを活用できます。 -
FORCE
すべての問合せ結果が、結果キャッシュに格納されます。結果がキャッシュ内に存在しない場合、データベースは問合せを実行して結果をキャッシュに格納します。それ以降の同じSQL文の実行では、その文に
/*+ RESULT_CACHE */
ヒントが含まれていると、キャッシュからデータが取得されるようになります。セッションでは、そうした結果が使用されます(可能な場合)。キャッシュからの問合せ結果を除外するには、/*+ NO_RESULT_CACHE */
ヒントを使用します。 -
FORCE_TEMP
すべての問合せ結果が、結果キャッシュに格納されます。すべての問合せは、ヒントによって明示的に禁止されていないかぎり、ディスクの一時セグメントを活用できます。
ノート:
FORCE
モードとFORCE_TEMP
モードは、データベースおよびクライアントが問合せのすべてをキャッシュしようとして、パフォーマンスとラッチの多大なオーバーヘッドが発生するためお薦めできません。さらに、確定的でないPL/SQLファンクションを呼び出す問合せもキャッシュされるため、そのように対象範囲が広い場合の結果キャッシュは、大幅に結果を変える原因になる可能性があります。
関連項目:
-
この初期化パラメータの値を変更する前に結果キャッシュがPL/SQLファンクションを処理する方法の詳細は、『Oracle Database SQLチューニング・ガイド』を参照してください。
-
NO_RESULT_CACHE
ヒントの詳細は、『Oracle Database SQL言語リファレンス』を参照してください