キャッシュが有効化されている場合、各問合せが評価されてキャッシュ・ヒットとみなされるかどうかが判断されます。
キャッシュ・ヒットとは、Oracle Analytics Cloudがキャッシュを使用して問合せに返答できるため、データベースでの処理がまったく発生しないことを意味します。Oracle Analytics Cloudは、問合せキャッシュを使用して、同じレベル以上の集計レベルの問合せに返答します。
多くの要因でキャッシュがヒットするかどうかが判断されます。次の表で、これらの要因について説明します。
| 要因またはルール | 説明 |
|---|---|
|
|
キャッシュ・ヒットとしてみなすには、新しい問合せの このルールは、キャッシュがヒットするための最小要件を示しますが、このルールを満たすことが、キャッシュヒットを保証するものではありません。この表にリストされているその他のルールも適用されます。 |
|
|
Oracle Analytics Cloudでは、キャッシュされた結果に対する式を計算して新しい問合せに返答できますが、キャッシュされた結果にすべての列が含まれている必要があります。たとえば、次の問合せでは: SELECT product, month, averageprice FROM sales WHERE year = 2000 次の問合せでキャッシュがヒットします: SELECT product, month, dollars, unitsales FROM sales WHERE year = 2000
|
|
|
問合せがキャッシュ・ヒットとみなされるには、 サブセットが次のいずれかの基準を満たす場合、キャッシュされた問合せの論理サブセットである
また、 SELECT employeename
FROM employee, geography
WHERE region in ('EAST', 'WEST')
REGIONが射影リストにないため、前述のリストのシード問合せのキャッシュ・ヒットになりません。 |
|
ディメンションのみの問合せは完全一致である必要があります |
ディメンションのみの問合せの場合、つまり、ファクトまたはメジャーが問合せに含まれていない場合、キャッシュされた問合せの射影列の完全一致のみがキャッシュにヒットします。この動作により、1つのディメンション表に対して複数の論理ソースが存在する場合の偽陽性が回避されます。 |
|
特別な関数を含む問合せは完全一致である必要があります |
時系列関数( |
|
論理表のセットが一致する必要があります |
キャッシュ・ヒットとみなされるには、新しい問合せにはすべて、キャッシュ・エントリと同じセットの論理表が存在する必要があります。このルールによって、誤ったキャッシュ・ヒットが回避されます。たとえば、 |
|
セキュリティ・セッション変数を含む、セッション変数値が一致する必要があります |
論理SQLまたは物理SQL文がセッション変数を参照する場合、セッション変数値が一致する必要があります。そうでない場合、キャッシュはヒットしません。 また、セキュリティ・センシティブなセッション変数の値は、論理SQL文自体がセッション変数を参照していなくても、セマンティック・モデルに定義されているセキュリティ・セッション変数値と一致する必要があります。行レベルのデータベース・セキュリティを使用する場合の正しいキャッシュ結果の保証を参照してください。 |
|
同等の結合条件 |
キャッシュ・ヒットとみなされるには、結果として得られる新しい問合せリクエストの結合論理表が、キャッシュされた結果と同じ(またはそのサブセット)である必要があります。 |
|
|
キャッシュされた問合せが |
|
問合せに、互換性のある集計レベルが含まれている必要があります |
集計レベルの情報を要求する問合せでは、より低い集計レベルのキャッシュされた結果を使用できます。たとえば、次の問合せは、サプライヤ、地域、および都市レベルで販売された数量を要求します: SELECT supplier, region, city, qtysold FROM suppliercity 次の問合せは、都市レベルで販売された数量を要求します: SELECT city, qtysold FROM suppliercity 2つ目の問合せは、1つ目の問合せのキャッシュ・ヒットとなります。 |
|
限られた追加集計 |
たとえば、列 |
|
|
選択リストに含まれていない列で並べ替える問合せは、キャッシュ・ミスになります。 |
|
キャッシュ・ヒット動作の診断 |
キャッシュ・ヒットの動作をより適切に評価するには、次の例に示すようにENABLE_CACHE_DIAGNOSTICSセッション変数を4に設定します: ENABLE_CACHE_DIAGNOSTICS=4 |