True Cache: Oracle’s New In-Memory Caching Architecture

Oracle 23ai introduces True Cache — a new read-only, in-memory cache tier that sits between your application and the primary Oracle Database. Think of it as a lightweight, always-consistent cache that speaks SQL.

What True Cache is NOT:

  • Not Redis or Memcached (those are key-value stores, not SQL-aware)
  • Not Oracle In-Memory Column Store (that’s inside the primary database)
  • Not a full read replica (it doesn’t write redo logs for all changes)

What True Cache IS:

A lightweight Oracle instance that maintains a hot subset of the primary database in memory, synchronized via redo log shipping. Applications connect to True Cache and run full SQL queries — with full Oracle SQL semantics — but reads are served from memory without hitting primary storage.

Architecture:

App ──► True Cache (in-memory, read-only SQL)
               │
               │ redo sync
               ▼
        Primary Database (read-write)

Key characteristics:

  • Consistent reads: True Cache uses the same SCN (System Change Number) mechanism as the primary. Reads are always consistent with the primary database.
  • Automatic sync: Changes in the primary are shipped via redo and applied to True Cache — similar to Active Data Guard, but lighter weight.
  • No storage footprint: True Cache doesn’t persist data to disk. It’s purely an in-memory acceleration layer.
  • Transparent to applications: Applications connect using standard Oracle drivers; no code changes needed.

Best use case: Read-heavy OLTP workloads where the working set fits in memory and read latency matters — product catalogs, session data, reference lookups.

True Cache is Oracle’s answer to the “put everything in Redis” trend, with the critical advantage of full SQL consistency guarantees.

Discover more from grepOra

Subscribe now to keep reading and get access to the full archive.

Continue reading