自動リフレッシュの制限
AUTOREFRESH
キャッシュ・グループ属性を使用する場合、制限があります。
-
TimesTen Scaleoutでは、増分自動リフレッシュを使用した静的な読取り専用のキャッシュ・グループのみがサポートされます。『Oracle TimesTen In-Memory Database Scaleoutユーザーズ・ガイド』の「TimesTen Scaleoutでのキャッシュ・グループの使用」を参照してください。
-
キャッシュ・グループに対して
FLUSH CACHE GROUP
文を発行できません。「ユーザー管理キャッシュ・グループのフラッシュ」を参照してください。
-
キャッシュされたOracle Database表に対して発行された
TRUNCATE TABLE
文は、TimesTenキャッシュ表に自動的にリフレッシュされません。キャッシュされたOracle Database表に対してTRUNCATE TABLE
文を発行する前に、ALTER CACHE GROUP
文を使用して、キャッシュ表を含むキャッシュ・グループの自動リフレッシュ状態をPAUSED
に変更してください。「キャッシュ・グループの変更によるAUTOREFRESHのモード、間隔または状態の変更」を参照してください。
キャッシュされたOracle Database表に対して
TRUNCATE TABLE
文を発行した後、REFRESH CACHE GROUP
文を使用してキャッシュ・グループを手動でリフレッシュします。 -
キャッシュ・グループが動的である場合を除いて、
LOAD CACHE GROUP
文を発行できるのはキャッシュ表が空の場合のみです。「キャッシュ・グループの手動によるロードおよびリフレッシュ」および「DYNAMICキーワードを使用した動的キャッシュ・グループの作成」を参照してください。
-
キャッシュ・グループが動的である場合を除き、キャッシュ・グループに対して
LOAD CACHE GROUP
文を発行するには、自動リフレッシュ状態はPAUSED
になっている必要があります。キャッシュ・グループが動的である場合、自動リフレッシュ状態はPAUSED
またはON
である必要があります。 -
キャッシュ・グループが動的でない場合は、
LOAD CACHE GROUP
文にWHERE
句を含めることはできません。キャッシュ・グループが動的である場合、WHERE
句の後にCOMMIT EVERY
n
ROWS
句を続ける必要があります。「WHERE句の使用」を参照してください。
-
REFRESH CACHE GROUP
文をキャッシュ・グループに対して発行するには、自動リフレッシュ状態がPAUSED
になっている必要があります。REFRESH CACHE GROUP
文にWHERE
句を含めることはできません。 -
キャッシュ・グループの作成、ロードまたはアンロード時に
WHERE
句で参照されるすべての表および列は、完全修飾されている必要があります。たとえば、次のようにします:owner
.
table_name
andowner
.
table_name
.
column_name
-
ユーザー管理キャッシュ・グループで
AUTOREFRESH
キャッシュ・グループ属性を使用するには、すべてのキャッシュ表にPROPAGATE
キャッシュ表属性が指定されているか、またはすべてのキャッシュ表にREADONLY
キャッシュ表属性が指定されている必要があります。 -
NOT PROPAGATE
キャッシュ表属性を明示的に使用するキャッシュ表を含むユーザー管理キャッシュ・グループでは、AUTOREFRESH
キャッシュ・グループ属性を指定できません。 -
ユーザー管理キャッシュ・グループにOracle Databaseマテリアライズド・ビューをキャッシュする場合は、
AUTOREFRESH
キャッシュ表属性を使用できません。 -
LRUエージングがデフォルトで定義されている、キャッシュ・グループが動的である場合を除いて、キャッシュ・グループにLRUエージングを指定できません。
「TimesTen ClassicでのLRUエージング」を参照してください。
-
TimesTen Classicで自動リフレッシュを使用する静的キャッシュ・グループでレプリケーションを使用する場合は、アクティブ・スタンバイ・ペアのレプリケーション・スキームのみを使用できます。その他のタイプのレプリケーション・スキームは、TimesTen Classicで自動リフレッシュを使用した静的キャッシュ・グループでは許可されません。