自動リフレッシュ間隔および状態の設定
自動リフレッシュ間隔では、自動リフレッシュ処理の実行頻度を分、秒またはミリ秒の単位で指定します。
自動リフレッシュ間隔が同じキャッシュ・グループは、同じトランザクション内でリフレッシュされます。自動リフレッシュ間隔を0ミリ秒に設定すると、自動リフレッシュを連続するよう指定できます。連続自動リフレッシュを指定している場合、次の自動リフレッシュ・サイクルは、最後の自動リフレッシュ・サイクルの終了後、可能なかぎり早くスケジュールされます。
TimesTen Classicでは、ttCacheAutorefresh
組込みプロシージャを使用すると、即時自動リフレッシュ処理を手動で開始できます。『Oracle TimesTen In-Memory Databaseリファレンス』の「ttCacheAutorefresh」を参照してください。
自動リフレッシュ状態はON
、OFF
またはPAUSED
に設定できます。
-
ON
: 自動リフレッシュ処理はキャッシュ・グループの自動リフレッシュ状態がON
の場合に、TimesTenによりスケジュールされます。 -
OFF
: キャッシュ・グループの自動リフレッシュ状態がOFF
の場合、キャッシュされたOracle Database表でコミットされた変更は追跡されません。状態をOFF
からON
に変更すると、完全自動リフレッシュが実行されます。 -
PAUSED
: キャッシュ・グループの自動リフレッシュ状態がPAUSED
の場合、キャッシュされたOracle Database表でコミットされた変更はOracle Database内で追跡されますが、状態がON
に変更されるまでTimesTenキャッシュ表には自動的にリフレッシュされません。
デフォルトでは、自動リフレッシュ状態がPAUSED
に設定されたキャッシュ・グループが作成されます。これにより、初期全体ロードの実行方法とタイミングを選択できます。
-
Oracleデータベースのデータが大きい場合は、キャッシュ・グループの初期全体ロードに時間がかかることがあります。
LOAD CACHE GROUP... PARALLEL
文を使用して手動ロードをパラレルで実行することをお薦めします。初期ロードが完了すると、自動リフレッシュの状態が自動的にON
に変わります。 -
Oracle Databaseのデータが小さい場合は、
ALTER CACHE GROUP
を使用して状態をON
に変更します。初期ロードがまだ実行されていないときに状態をON
に変更すると、初期ロードが実行され、自動リフレッシュ処理が開始されます。
初期ロードが完了したら、いつでも状態をPAUSED
に変更できます。状態をON
に変更すると、増分自動リフレッシュで作成された静的キャッシュ・グループの増分自動リフレッシュが再開されます。
Oracleデータベースのデータが大きすぎて初期全体ロードを実行できない場合は、すべての全体ロード処理を無効にできます。「キャッシュ・グループの完全自動リフレッシュの無効化」を参照してください。