自動リフレッシュ間隔および状態の設定

自動リフレッシュ間隔では、自動リフレッシュ処理の実行頻度を分、秒またはミリ秒の単位で指定します。

自動リフレッシュ間隔が同じキャッシュ・グループは、同じトランザクション内でリフレッシュされます。自動リフレッシュ間隔を0ミリ秒に設定すると、自動リフレッシュを連続するよう指定できます。連続自動リフレッシュを指定している場合、次の自動リフレッシュ・サイクルは、最後の自動リフレッシュ・サイクルの終了後、可能なかぎり早くスケジュールされます。

TimesTen Classicでは、ttCacheAutorefresh組込みプロシージャを使用すると、即時自動リフレッシュ処理を手動で開始できます。『Oracle TimesTen In-Memory Databaseリファレンス』「ttCacheAutorefresh」を参照してください。

自動リフレッシュ状態はONOFFまたは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データベースのデータが大きすぎて初期全体ロードを実行できない場合は、すべての全体ロード処理を無効にできます。「キャッシュ・グループの完全自動リフレッシュの無効化」を参照してください。