Considerations When Using GoldenGate as the Cache Refresh Mechanism

Instead of using the TimesTen provided cache refresh mechanism, there are a couple of reasons when to use GoldenGate as the cache refresh mechanism for read-only cache groups.

If you are planning to use GoldenGate as the cache refresh mechanism, consider that:

  • GoldenGate cache refresh supports functionality similar to TimesTen static read-only cache groups. All other types of cache groups (dynamic, Asynchronous WriteThrough, Synchronous WriteThrough, User Managed, and so on) are not currently supported to use GoldenGate as the cache refresh mechanism. These types of cache groups must use the TimesTen native caching mechanisms.

  • GoldenGate for Oracle TimesTen supports delivery of data to user tables, instead of cache groups. Since GoldenGate uses regular tables instead of cache groups, create your cache tables in TimesTen as regular tables (using the CREATE TABLE statement) and not as cache groups (using the CREATE READONLY CACHE GROUP statement).

  • When using GoldenGate as the cache refresh mechanism, any read-only cached tables in TimesTen are not truly read-only. Applications are not automatically prevented from modifying data in the tables; however, any modifications can be overwritten if GoldenGate refreshes newly modified data into the table from the back-end database. You can mitigate this by having the tables owned by a dedicated user separate from the application users and assigning database privileges to ensure that application users only have read access to the cache tables.

  • A best practice is to use a dedicated TimesTen database user for the GoldenGate apply process. Cached tables should be owned by this user and application users should be granted only read (SELECT) privileges on the cached tables.

  • Create private synonyms, owned by any application users, for the cached tables to make the ownership transparent to application code and SQL statements.

  • Golden Gate only refreshes cache tables in TimesTen with modified data. You must perform an initial load of data from the source database into TimesTen. The initial table data load is used to establish data synchronization when instantiating GoldenGate replication.

  • You must set the DatabaseCharacterSet TimesTen database parameter to the same value as the Oracle Database database character set.

  • All GoldenGate connections to the TimesTen database must use a connection that explicitly sets ConnectionCharacterSet to the same value as DatabaseCharacterSet.

  • GoldenGate is a separately licensed product, and you must have suitable licenses to cover your usage. You must have license coverage for both GoldenGate capture for the source database and GoldenGate apply for TimesTen.