Kit Wai Chan - Fotolia
Running a database in-memory offers the promise of improved performance and lower latency, but it's a task often easier said than done.
Among the vendors taking aim at the challenge of enabling an in-memory database is Aerospike Inc., which on Tuesday released version 4.8 of its namesake database. The big feature in Aerospike 4.8 is full support for Intel Optane DC persistent memory (PMEM) to run both the database index and the data storage.
Persistent memory is different than traditional DRAM memory, which is volatile and doesn't persist when power is shut off to a system. The key promise of PMEM is faster access and execution than a Flash SSD and more stability than DRAM.
The road to an in-memory database
For James Curtis, a senior analyst at 451 Research, the Aerospike 4.8 update continues the company's strategy of providing deployment flexibility.
"Full persistent memory support, for some customers, will also provide data durability because when a node goes down the data will remain in the persistent memory," Curtis said. "This ought to help with fast recovery, for instance."
Fully enabling persistent memory in Aerospike has taken just over a year. According to Srini Srinivasan, chief product officer and co-founder of Aerospike, the database has two core components: the index and the data. In November 2018, the company added a hybrid memory architecture to enable the database index to run in not just regular DRAM, but also PMEM. The data piece was stored in flash SSDs.
With Aerospike 4.8, for the first time both the index and the data can be stored in PMEM. As such, Aerospike database administrators can now choose to have the index and data in any combination of PMEM, DRAM and flash SSDs.
PMEM leads to performance gains
Enabling a database to run in PMEM involved several key development steps for Aerospike. Srinivasan explained that the database integrates with Intel's App Direct APIs, which enables the application to connect directly to Optane persistent memory.
It's also possible to use Optane in what Intel refers to as memory mode, in which case the PMEM extends existing system memory that is available to an application. By hooking directly into App Direct, there are some significant performance gains.
Srini SrinivasanChief product officer and founder, Aerospike
"With App Direct, what we found was that we could get about 30% to 40% improvement in performance," Srinivasan said.
Looking beyond the PMEM support, Aerospike 4.8 also boosts performance with improved compression between the client and the server. Srinivasan said it's possible to stretch a single Aerospike cluster across multiple data centers, making compression a critical capability to help accelerate performance.
As Srinivasan looks to 2020, he said there are several new features on the roadmap for future Aerospike releases. One of the things under development is improved performance capabilities for secondary database indexes. "In terms of the current implementation, we are improving the performance, making it more efficient," he said.