Rethinking The Compaction Policies in LSM-trees
Hengrui Wang, Jiansheng Qiu, Fangzhou Yuan, Huanchen Zhang
Abstract
Log-structured merge-trees (LSM-trees) are widely used to construct key-value stores. They periodically compact overlapping sorted runs to reduce the read amplification. Prior research on compaction policies has focused on the trade-off between write amplification (WA) and read amplification (RA). In this paper, we propose to treat the compaction operation in LSM-trees as a computational and I/O-bandwidth investment for improving the system's future query throughput, and thus rethink the compaction policy designs. A typical LSM-tree application handles a steady but moderate write stream and prioritizes resources for top-level flushes of small sorted runs to avoid data loss due to write stalls. The goal of the compaction policy, therefore, is to maintain an optimal number of sorted runs to maximize average query throughput. Because compaction and read operations compete for the CPU and I/O resources from the same pool, we must perform a joint optimization to determine the appropriate timing and aggressiveness of the compaction. We introduce a three-level model of an LSM-tree and propose EcoTune, an algorithm based on dynamic programming to find the optimal compaction policy according to workload characterizations. Our evaluation on RocksDB shows that EcoTune improves the average query throughput by 1.5x to 3x over the leveling policy and by up to 2.5x over the lazy-leveling policy on workloads with range/point query ratios.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 290f8d30-ce5f-4f91-8ba7-f69ab8646daeCited by top-tier papers5
- How to Write to SSDsBohyun Lee, Tobias Ziegler, Viktor LeisVLDB 2026 · 2 citations
- ArceKV: Towards Workload-driven LSM-compactions for Key-Value Store Under Dynamic WorkloadsJunfeng Liu, Haoxuan Xie, Siqiang LuoVLDB 2026
- Pome: Parallelizing I/Os and Computations for Efficient LSM-tree-based Data StorageYanpeng Hu, Li Zhu, Lei Jia, Chundong WangHPDC 2026
- Swan: Hybrid MVCC Management for Efficient Transaction Processing in LSM-Tree-Based Key-Value StoresYang Guo, Jin Xue, Zili ShaoVLDB 2026
- Nezha: A Key-Value Separated Distributed Store with Optimized Raft IntegrationYangyang Wang, Yucong Dong, Ziqian Cheng, Zichen XuICDE 2026
Builds on27
- Benchmarking Learned IndexesRyan Marcus, Andreas Kipf, Alexander van Renen, Mihail Stoian et al.VLDB 2021 · 185 citations
- Evolution of Development Priorities in Key-value Stores Serving Large-scale Applications: The RocksDB ExperienceSiying Dong, Andrew Kryczka, Yanqin Jin, Michael StummFAST 2021 · 110 citations
- FPGA-Accelerated Compactions for LSM-based Key-Value StoreTeng Zhang, Jianying Wang, Xuntao Cheng, Hao Xu et al.FAST 2020 · 99 citations
- Rosetta: A Robust Space-Time Optimized Range Filter for Key-Value StoresSiqiang Luo, Subarna Chatterjee, Rafael Ketsetsidis, Niv Dayan et al.SIGMOD 2020 · 91 citations
- Constructing and Analyzing the LSM Compaction Design SpaceSubhadeep Sarkar, Dimitris Staratzis, Zichen Zhu, Manos AthanassoulisVLDB 2021 · 73 citations
Related papers
- Autumn: A Scalable Read Optimized LSM-Tree Based Key-Value Stores with Fast Point and Range ReadsFuheng Zhao, Zach Miller, Leron Reznikov, Divyakant Agrawal et al.ICDE 2025 · 2 citations
- Endure: A Robust Tuning Paradigm for LSM Trees Under Workload UncertaintyAndy Huynh, Harshal A. Chaudhari, Evimaria Terzi, Manos AthanassoulisVLDB 2022 · 28 citations
- Disco: A Compact Index for LSM-treesWenshao Zhong, Chen Chen, Xingbo Wu, Jakob ErikssonSIGMOD 2025 · 2 citations
- Rangereduce: Query-Driven LSM CompactionsShubham Kaushik, Manos Athanassoulis, Subhadeep SarkarICDE 2026
- Reducing Write Amplification of LSM-Tree with Block-Grained CompactionXiaoliang Wang, Peiquan Jin, Bei Hua, Hai Long et al.ICDE 2022 · 26 citations
