キャッシュ・グループの作成
キャッシュ・グループを作成するには、CREATE CACHE GROUP
SQL文を使用するか、グラフィカル・ツールであるOracle SQL Developerを使用します。
SQL Developerの詳細は、『Oracle TimesTen In-Memory Database SQL Developerサポート・ユーザーズ・ガイド』を参照してください。
キャッシュ・グループは、TimesTenキャッシュ管理ユーザーが作成し、所有する必要があります。
Oracle Databaseデータを一時データベースにキャッシュすることはできません。
キャッシュ・グループは、システム管理またはユーザー管理のいずれかとして識別されます。システム管理キャッシュ・グループでは特定の動作が実行されますが、ユーザー管理キャッシュ・グループの動作はカスタマイズできます。
システム管理キャッシュ・グループには次のものがあります。
-
読取り専用キャッシュ・グループ: キャッシュされたOracle Database表にコミットされた更新は、TimesTenのキャッシュ表に自動的にリフレッシュされます。TimesTenキャッシュ表は直接更新できません。
-
非同期ライトスルー(AWT)キャッシュ・グループ: TimesTenキャッシュ表にコミットされた更新は、キャッシュされたOracle Database表に自動的に非同期で伝播されます。
-
同期ライトスルー(SWT)キャッシュ・グループ: TimesTenキャッシュ表にコミットされた更新は、キャッシュされたOracle Database表に自動的に同期して伝播されます。
-
ハイブリッド・キャッシュ・グループ: Oracle Databaseにルート表がないキャッシュ表から、コミットされた更新を動的にロードします。
ユーザー管理キャッシュ・グループ: キャッシュ動作をカスタマイズします。システム管理キャッシュ・グループがアプリケーションの要件を満たさない場合は、キャッシュ表属性を持つ、カスタマイズされたキャッシュ動作を定義するユーザー管理キャッシュ・グループを作成できます。
データのロード方法を定義できます。
-
静的キャッシュ・グループ: キャッシュ・インスタンスをTimesTenキャッシュ表に手動でロードします。
-
動的キャッシュ・グループ: 動的ロード処理を使用するか、またはロード処理を手動で使用して、キャッシュ・インスタンスをOracle DatabaseからTimesTenキャッシュ表にリクエストに応じてロードします。
「TimesTenデータベースとOracleデータベース間での変更の送信」を参照してください。
キャッシュ・グループの作成には、次の内容も適用されます。
-
DYNAMICキーワードを使用した動的キャッシュ・グループの作成。キャッシュされたOracle Database表で更新された新しいキャッシュ・インスタンスをTimesTenキャッシュ・グループに動的にロードできます。
-
キャッシュ・グループの自動リフレッシュ:
AUTOREFRESH
キャッシュ表属性は、キャッシュされたOracle Database表にコミットされた変更が読取り専用TimesTenキャッシュ表に自動的にリフレッシュされるように指定します。 -
WHERE句の使用: 特定のキャッシュ・グループ・タイプについて、TimesTenデータベースでキャッシュする行を制限できます。
-
ON DELETE CASCADEキャッシュ表の属性: 参照されるキー値を含む行が親表から削除されると、依存する外部キーを持つ子表の行も削除されるように指定します。
-
キャッシュ表の主キー列に対するハッシュ索引の作成: キャッシュ表の主キー列に、範囲索引ではなくハッシュ索引が作成されるように指定します。