APEX: A High-Performance Learned Index on Persistent Memory

05/03/2021
by   Baotong Lu, et al.
0

The recently released persistent memory (PM) has been gaining popularity. PM offers high performance (still lower than DRAM), persistence, and is cheaper than DRAM. This opens up new possibilities for index design. Existing indexes on PM typically evolve traditional B+tree indexes. However, this is not the best choice. Recently proposed learned indexes use machine learning (ML) for data distribution-aware indexing and perform significantly better than B+Trees, but none support persistence and instant recovery. In this paper, we propose a new learned index on PM namely APEX, with very high performance, persistence, concurrency, and instant recovery. Our very careful design combines the best of both worlds. Specifically, APEX is designed to reduce PM accesses, especially the heavy-weight writes, flush, and memory fence instructions, while still exploiting ML, to achieve high performance. Our in-depth experimental evaluation on Intel DCPMM shows that APEX achieves up to  15X higher throughput as compared to the state-of-the-art PM indexes, and can recover from failures in  42ms. To the best of our knowledge, APEX is the first full-fledged and practical learned index on PM.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
05/15/2020

Lessons learned from the early performance evaluation of Intel Optane DC Persistent Memory in DBMS

Non-volatile memory (NVM) is an emerging technology, which has the persi...
research
10/27/2017

Espresso: Brewing Java For More Non-Volatility with Non-volatile Memory

Fast, byte-addressable non-volatile memory (NVM) embraces both near-DRAM...
research
10/20/2018

Triad-NVM: Persistent-Security for Integrity-Protected and Encrypted Non-Volatile Memories (NVMs)

Emerging Non-Volatile Memories (NVMs) are promising contenders for build...
research
04/07/2021

Plinius: Secure and Persistent Machine Learning Model Training

With the increasing popularity of cloud based machine learning (ML) tech...
research
01/23/2022

Cuckoo Trie: Exploiting Memory-Level Parallelism for Efficient DRAM Indexing

We present the Cuckoo Trie, a fast, memory-efficient ordered index struc...
research
06/05/2023

A Simple Yet High-Performing On-disk Learned Index: Can We Have Our Cake and Eat it Too?

While in-memory learned indexes have shown promising performance as comp...
research
09/23/2019

RECIPE : Converting Concurrent DRAM Indexes to Persistent-Memory Indexes

We present Recipe, a principled approach for converting concurrent DRAM ...

Please sign up or login with your details

Forgot password? Click here to reset