X

TimesTen In-Memory Database
for Extreme Performance

Oracle TimesTen and Intel Optane Persistent Memory

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

Oracle TimesTen 18.1.4.1.0 now supports Intel Optane persistent memory in Memory Mode for the following TimesTen configurations on Linux x8664:

  • Oracle TimesTen In-Memory Database used as a system of record
  • Oracle TimesTen Application Tier Database Cache used as a cache for the Oracle Database
  • Oracle TimesTen Scaleout used as a system of record
  • Oracle TimesTen Scaleout used as a cache for the Oracle Database

 

Intel Optane persistent memory supports two modes (Memory Mode and App Direct Mode):

  • Oracle TimesTen 18.1.4.1.0 supports Intel Optane persistent memory in Memory Mode
  • Oracle TimesTen demonstrated using App Direct Mode at Oracle Open World 2018 with Intel
    • Loading a 2.7 TB database in under half a second
    • An increase of over 6x in durable transaction performance when using synchronous writes to Intel Optane persistent memory
    • Oracle TimesTen plans to support App Direct Mode in a future release

 

Larger capacity memory at a cheaper price point

When used in Memory Mode, persistent memory acts like standard system memory, with DRAM used as a low-latency cache layer. The benefits of running persistent memory in Memory Mode are larger effective system memory at a cheaper price point.  Despite the name, persistent memory is actually non persistent when running in Memory Mode.

DDR4 and PMem DIMM capacity

The price of both DDR4 SDRAM and Intel Optane persistent memory are constantly changing and dependent on factors like memory capacity and volume, so price comparisons are difficult. One comparison from April 2019 showed persistent memory to be about 1/5 of the price of the equivalent DDR4 SDRAM 128 GB memory. You need to make your own comparisons for the memory capacity for a specific server hardware model to have any meaningful results.

 

Larger TimesTen Classic and Scaleout Databases

  • Due to the high cost of large capacity (eg 128 GB  module) DRAM, most two socket Linux x8664 servers without using persistent memory can only support up to 1.5 TB of RAM
  • Two socket Linux x8664 servers can support up to 6 TB of persistent memory
  • Single instance Oracle TimesTen Classic databases of nearly 6 TB are now cost effective
  • Oracle TimesTen Scaleout databases of nearly 200 TB are now cost effective

TimesTen Scaleout using PMem

 

Intel Specific Memory Controller, firmware, CPUs and DIMMs

Intel Optane persistent memory when used in Memory Mode needs to be used in conjunction with DRAM as the DRAM acts as a low latency cache for the most frequently accessed data. The Intel Xeon Scalable processor memory controller transparently handles the DRAM caching operations.  The implications of using this Intel specific memory controller are that Intel Optane persistent memory will only work with recent [second generation and newer] Intel Xeon Scalable processors and firmware.

Hot and cold data

 

TimesTen In-Memory Database Effective Memory Latency

Intel Optane persistent memory has very low latency, but it can be up to three times slower than using DRAM depending on whether there is a cache hit or miss in DRAM. The trick is to try to use DRAM for the most frequently accessed data and to use the slower persistent memory for the less frequency accessed data.

The performance of using the TimesTen In-Memory Database with Intel Optane persistent memory in Memory Mode depends on two things:

  • The size of the hot data
  • The ratio of DRAM to Persistent Memory

If the hot data can fit within the DRAM then TimesTen will work at DRAM speeds. If the hot data is larger than the DRAM size, then the effective memory latency will be proportional to the ratio of DRAM to Persistent Memory.

Intel Optane PMem and DDR4 RAM

The good news is that most database transactional workloads tend to have some data that is more frequently used that other data, so the hot data will always tend to be smaller than the total database size.

 

 

Persistent Memory Configuration

There is no TimesTen specific configuration required to use Intel Optane persistent memory.

Confiugration for Persistent memory

Intel Optane persistent memory needs to be configured before it can be used on a Linux x8664 machine:

  • The full details for configuration are here
  • The following highlight some of the configuration considerations
    • Currently only a subset of latest Intel CPUs (2nd generation Xeon Scalable Processor Family and newer) are supported
    • A combination of both DRAM DIMMs and Optane persistent memory mobules must be used
      • Only certain combinations are supported (contact your platform provider for specific options)
    • All Optane persistent memory modules should have the same part number
    • All of the Optane persistent memory modules should use the same version of the firmware
    • The libnvdimm & ipctl libraries and the ndctl utility using Linux Kernel 4.19+ are recommended
    • The ext4 or XFS file systems are required
  • TimesTen 18.1.4.1.0 was tested using Red Hat 7.6 with Intel Optane persistent memory 100 series modules on servers configured with 2nd Generation Intel Xeon Scalable Processors

 

 

Hardware that supports Intel Optane persistent memory

Although persistent memory is a new technology, it is already available on Linux x8664 servers from the following vendors:

Hardware Vendor support for PMem

 

Summary

  • Oracle TimesTen 18.1.4.1.0+ supports Intel Optane persistent memory when used in Memory Mode
  • TimesTen In-Memory Databases can store more data when using Intel Optane persistent memory
  • No TimesTen specific configuration is needed to use Intel Optane persistent memory

 

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.