ChameleonDB: a Key-value Store for Optane Persistent Memory

被引:42
|
作者
Zhang, Wenhui [1 ]
Zhao, Xingsheng [1 ]
Jiang, Song [1 ]
Jiang, Hong [1 ]
机构
[1] Univ Texas Arlington, Arlington, TX 76019 USA
基金
美国国家科学基金会;
关键词
key-value store; persistent-memory; Optane DC;
D O I
10.1145/3447786.3456237
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
The emergence of Intel's Optane DC persistent memory (Optane Pmem) draws much interest in building persistent key-value (KV) stores to take advantage of its high throughput and low latency. A major challenge in the efforts stems from the fact that Optane Pmem is essentially a hybrid storage device with two distinct properties. On one hand, it is a high-speed byte-addressable device similar to DRAM. On the other hand, the write to the Optane media is conducted at the unit of 256 bytes, much like a block storage device. Existing KV store designs for persistent memory do not take into account of the latter property, leading to high write amplification and constraining both write and read throughput. In the meantime, a direct re-use of a KV store design intended for block devices, such as LSM-based ones, would cause much higher read latency due to the former property. In this paper, we propose ChameleonDB, a KV store design specifically for this important hybrid memory/storage device by considering and exploiting these two properties in one design. It uses LSM tree structure to efficiently admit writes with low write amplification. It uses an in-DRAM hash table to bypass LSM-tree's multiple levels for fast reads. In the meantime, ChameleonDB may choose to opportunistically maintain the LSM multi-level structure in the background to achieve short recovery time after a system crash. ChameleonDB's hybrid structure is designed to be able to absorb sudden bursts of a write workload, which helps avoid long-tail read latency. Our experiment results show that ChameleonDB improves write throughput by 3.3x and reduces read latency by around 60% compared with a legacy LSM-tree based KV store design. ChameleonDB provides performance competitive even with KV stores using fully in-DRAM index by using much less DRAM space. Compared with CCEH, a persistent hash table design, ChameleonDB provides 6.4x higher write throughput.
引用
收藏
页码:194 / 209
页数:16
相关论文
共 50 条
  • [1] Rethinking Key-Value Store for Byte-Addressable Optane Persistent Memory
    Wu, Sung-Ming
    Chang, Li-Pin
    [J]. PROCEEDINGS OF THE 59TH ACM/IEEE DESIGN AUTOMATION CONFERENCE, DAC 2022, 2022, : 805 - 810
  • [2] LibreKV: A Persistent in-Memory Key-Value Store
    Liu, Hao
    Huang, Linpeng
    Zhu, Yanmin
    Shen, Yanyan
    [J]. IEEE TRANSACTIONS ON EMERGING TOPICS IN COMPUTING, 2020, 8 (04) : 916 - 927
  • [3] TurboHash: A Hash Table for Key-value Store on Persistent Memory
    Zhao, Xingsheng
    Zhong, Chen
    Jiang, Song
    [J]. PROCEEDINGS OF THE 16TH ACM INTERNATIONAL SYSTEMS AND STORAGE CONFERENCE, SYSTOR 2023, 2023, : 35 - 48
  • [4] High-availability in-memory key-value store using RDMA and Optane DCPMM
    Xuecheng Qi
    Huiqi Hu
    Jinwei Guo
    Chenchen Huang
    Xuan Zhou
    Ning Xu
    Yu Fu
    Aoying Zhou
    [J]. Frontiers of Computer Science, 2023, 17
  • [5] High-availability in-memory key-value store using RDMA and Optane DCPMM
    Qi, Xuecheng
    Hu, Huiqi
    Guo, Jinwei
    Huang, Chenchen
    Zhou, Xuan
    Xu, Ning
    Fu, Yu
    Zhou, Aoying
    [J]. FRONTIERS OF COMPUTER SCIENCE, 2023, 17 (01)
  • [6] HyperKV: A High Performance Concurrent Key-Value Store for Persistent Memory
    Sun, Penghao
    Xue, Dongliang
    You, Litong
    Yan, Yan
    Huang, Linpeng
    [J]. 19TH IEEE INTERNATIONAL SYMPOSIUM ON PARALLEL AND DISTRIBUTED PROCESSING WITH APPLICATIONS (ISPA/BDCLOUD/SOCIALCOM/SUSTAINCOM 2021), 2021, : 125 - 134
  • [7] A Scalable and Persistent Key-Value Store Using Non-Volatile Memory
    Kim, Doyoung
    Choi, Won Gi
    Sung, Hanseung
    Park, Sanghyun
    [J]. SAC '19: PROCEEDINGS OF THE 34TH ACM/SIGAPP SYMPOSIUM ON APPLIED COMPUTING, 2019, : 464 - 467
  • [8] FlashStore: High Throughput Persistent Key-Value Store
    Debnath, Biplob
    Sengupta, Sudipta
    Li, Jin
    [J]. PROCEEDINGS OF THE VLDB ENDOWMENT, 2010, 3 (02): : 1414 - 1425
  • [9] PetaKV: Building Efficient Key-Value Store for File System Metadata on Persistent Memory
    Zhang, Yiwen
    Zhou, Jian
    Min, Xinhao
    Ge, Song
    Wan, Jiguang
    Yao, Ting
    Wang, Daohui
    [J]. IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 2023, 34 (03) : 843 - 855
  • [10] CRAST: Crash-resilient data management for a key-value store in persistent memory
    Han, Youil
    Lee, Eunji
    [J]. IEICE ELECTRONICS EXPRESS, 2018, 15 (23):