TimesTen In-Memory Database
for Extreme Performance

How does TimesTen give lower latency for OLTP when all of my data is in the Oracle SGA

Doug Hood
Evangelist for Oracle TimesTen, Oracle In-Memory and Oracle NoSQL

The TimesTen In-Memory Database is optimized for low latency OLTP workloads

A disk based database such as Oracle stores all of its data on disk and a subset of its data in the SGA. Oracle uses a buffer pool/cache to transfer data blocks to and from disk and the SGA as needed. Surely if all of the data is in a huge Oracle SGA so that no disk IOs are required, then Oracle would be as fast as TimesTen In-Memory Database?

Oracle buffer cache and TimesTen

Even in this best case scenario when Oracle has cached all of the data blocks in the SGA, TimesTen can still be significantly faster.  How does it do it?

  • TimesTen does not use a buffer cache, so it knows that all of the data is in memory all of the time.  This enables simpler and faster algorithms and data structures to be used.
  • TimesTen can use Direct Linked connections.  When the application and TimesTen both run on the same machine, the application (Java, C, C++, .Net, PHP etc) can avoid network and IPC overheads and share the same address space as the database.  
  • TimesTen can also use Client Server connections (over a TCP socket) when the application is on a different machine than the TimesTen Database

In the following latency benchmark, an Oracle DB with and without the use of TimesTen Application Tier Cache are compared:

Latency benchmark with and without TimesTen

For latency benchmarks, smaller is better. You can see that even when all of the Oracle data blocks were cached in the SGA that the TimesTen latency was significantly less.  This was the perfect apples to apples comparison:

  • The same TATP HLR workload was used
  • The same data was used
  • The sample JDBC application was used. The only different was the connect string
  • The same hardware was used (Intel Xeon E5-2680 @ 2.7 GHz)
  • The same operating system was used (OEL 5)

The combination of TimesTen Application Tier Database Cache for low latency and Oracle Exadata for scalability gives the best of breed solution for large scale OLTP applications.

Disclaimer: these are my personal thoughts and do not represent Oracle's official viewpoint in any way, shape, or form.

Be the first to comment

Comments ( 0 )
Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.