Parallax: Hybrid Key-Value Placement in LSM-based Key-Value Stores

被引:11
|
作者
Xanthakis, Giorgos [1 ,2 ]
Saloustros, Giorgos [1 ]
Batsaras, Nikos [1 ,2 ]
Papagiannis, Anastasios [1 ,2 ,3 ]
Bilas, Angelos [1 ,2 ]
机构
[1] Fdn Res & Technol Hellas FORTH, Inst Comp Sci ICS, Iraklion, Greece
[2] Univ Crete, Dept Comp Sci, Rethimnon, Greece
[3] Facebook, London, England
基金
欧盟地平线“2020”;
关键词
D O I
10.1145/3472883.3487012
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Key-value (KV) separation is a technique that introduces randomness in the I/O access patterns to reduce I/O amplification in LSM-based key-value stores. KV separation has a significant drawback that makes it less attractive: Delete and update operations in modern workloads result in frequent and expensive garbage collection (GC) in the value log. In this paper, we design and implement Parallax, which proposes hybrid KV placement to reduce GC overhead significantly and increases the benefits of using a log. We first model the benefits of KV separation for different KV pair sizes. We use this model to classify KV pairs in three categories small, medium, and large. Then, Parallax uses different approaches for each KV category: It always places large values in a log and small values in place. For medium values it uses a mixed strategy that combines the benefits of using a log and eliminates GC overhead as follows: It places medium values in a log for all but the last few (typically one or two) levels in the LSM structure, where it performs a full compaction, merges values in place, and reclaims log space without the need for GC. We evaluate Parallax against RocksDB that places all values in place and BlobDB that always performs KV separation. We find that Parallax increases throughput by up to 12.4x and 17.83x, decreases I/O amplification by up to 27.1x and 26x, and increases CPU efficiency by up to 18.7x and 28x, respectively, for all but scan-based YCSB workloads.
引用
收藏
页码:305 / 318
页数:14
相关论文
共 50 条
  • [31] ThanosKV: A Holistic Approach to Utilize NVM for LSM-tree based Key-Value Stores
    Zhao, Guangxun
    Shin, Hojin
    Yoo, Seehwan
    Cho, Seong-je
    Choi, Jongmoo
    2024 IEEE INTERNATIONAL CONFERENCE ON BIG DATA AND SMART COMPUTING, IEEE BIGCOMP 2024, 2024, : 143 - 150
  • [32] FPGA-based Compaction Engine for Accelerating LSM-tree Key-Value Stores
    Sun, Xuan
    Yu, Jinghuan
    Zhou, Zimeng
    Xue, Chun Jason
    2020 IEEE 36TH INTERNATIONAL CONFERENCE ON DATA ENGINEERING (ICDE 2020), 2020, : 1261 - 1272
  • [33] Exploiting Hybrid Index Scheme for RDMA-based Key-Value Stores
    Han, Shukai
    Zhang, Mi
    Jiang, Dejun
    Xiong, Jin
    PROCEEDINGS OF THE 16TH ACM INTERNATIONAL SYSTEMS AND STORAGE CONFERENCE, SYSTOR 2023, 2023, : 49 - 59
  • [34] Review on HDD-based, SSD-based and hybrid Key-Value Stores
    Li, Juan
    Xiao, Nong
    Lu, Yutong
    Chen, Zhiguang
    Liu, Fang
    Xing, Yuxuan
    Li, Shuo
    2017 IEEE 15TH INTL CONF ON DEPENDABLE, AUTONOMIC AND SECURE COMPUTING, 15TH INTL CONF ON PERVASIVE INTELLIGENCE AND COMPUTING, 3RD INTL CONF ON BIG DATA INTELLIGENCE AND COMPUTING AND CYBER SCIENCE AND TECHNOLOGY CONGRESS(DASC/PICOM/DATACOM/CYBERSCI, 2017, : 1236 - 1241
  • [35] Elasticity Controller for Cloud-Based Key-Value Stores
    Arman, Ala
    Al-Shishtawy, Ahmad
    Vlassov, Vladimir
    PROCEEDINGS OF THE 2012 IEEE 18TH INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED SYSTEMS (ICPADS 2012), 2012, : 268 - 275
  • [36] SFM: Mitigating Read/Write Amplification Problem of LSM-Tree-Based Key-Value Stores
    Lee, Hoyoung
    Lee, Minho
    Eom, Young Ik
    IEEE ACCESS, 2021, 9 : 103153 - 103166
  • [37] Towards Read-Intensive Key-Value Stores with Tidal Structure Based on LSM-Tree
    Wang, Yi
    Wu, Shangyu
    Mao, Rui
    2020 25TH ASIA AND SOUTH PACIFIC DESIGN AUTOMATION CONFERENCE, ASP-DAC 2020, 2020, : 307 - 312
  • [38] A Resource Allocation Controller for Key-Value Data Stores
    Kim, Young Ki
    HoseinyF, M. Reza
    Lee, Young Choon
    Zomaya, Albert Y.
    2017 IEEE 16TH INTERNATIONAL SYMPOSIUM ON NETWORK COMPUTING AND APPLICATIONS (NCA), 2017, : 281 - 284
  • [39] Benchmarking Key-Value Stores via Trace Replay
    Boza, Edwin F.
    San-Lucas, Cesar
    Abad, Cristina L.
    Viteri, Jose A.
    2017 IEEE INTERNATIONAL CONFERENCE ON CLOUD ENGINEERING (IC2E 2017), 2017, : 183 - 189
  • [40] Improving Write Performance for LSM-tree-based Key-Value Stores with NV-Cache
    Jiang, Xuzhen
    Cai, Miao
    Ye, Baotiu
    2022 IEEE INTL CONF ON PARALLEL & DISTRIBUTED PROCESSING WITH APPLICATIONS, BIG DATA & CLOUD COMPUTING, SUSTAINABLE COMPUTING & COMMUNICATIONS, SOCIAL COMPUTING & NETWORKING, ISPA/BDCLOUD/SOCIALCOM/SUSTAINCOM, 2022, : 394 - 401