Removing Double-Logging with Passive Data Persistence in LSM-tree based Relational Databases
Kecheng Huang, Zhaoyan Shen, Zhiping Jia, Zili Shao, Feng Chen
Abstract
Storage engine is a crucial component in relational databases (RDBs). With the emergence of Internet services and applications, a recent technical trend is to deploy a Logstructured Merge Tree (LSM-tree) based storage engine. Although such an approach can achieve high performance and efficient storage space usage, it also brings a critical doublelogging problem-In LSM-tree based RDBs, both the upper RDB layer and the lower storage engine layer implement redundant logging facilities, which perform synchronous and costly I/Os for data persistence. Unfortunately, such "double protection" does not provide extra benefits but only incurs heavy and unnecessary performance overhead.
In this paper, we propose a novel solution, called Passive Data Persistence Scheme (PASV), to address the doublelogging problem in LSM-tree based RDBs. By completely removing Write-ahead Log (WAL) in the storage engine layer, we develop a set of mechanisms, including a passive memory buffer flushing policy, an epoch-based data persistence scheme, and an optimized partial data recovery process, to achieve reliable and low-cost data persistence during normal runs and also fast and efficient recovery upon system failures. We implement a fully functional, open-sourced prototype of PASV based on Facebook's MyRocks. Evaluation results show that our solution can effectively improve system performance by increasing throughput by up to 49.9% and reducing latency by up to 89.3%, and it also saves disk I/Os by up to 42.9% and reduces recovery time by up to 4.8%.
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.
Cited by top-tier papers3
- XLL: Cross-Layer Logging for Data Deduplication in Consensus-Based StorageJohn Shawger, Arnav Jhingran, Andrea C. Arpaci-Dusseau, Remzi H. Arpaci-DusseauNSDI 2026 · 1 citation
- 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 on4
- MatrixKV: Reducing Write Stalls and Write Amplification in LSM-tree Based KV Stores with Matrix Container in NVMTing Yao, Yiwen Zhang, Jiguang Wan, Qiu Cui et al.USENIX ATC 2020 · 186 citations
- SpanDB: A Fast, Cost-Effective LSM-tree Based KV Store on Hybrid StorageHao Chen, Chaoyi Ruan, Cheng Li, Xiaosong Ma et al.FAST 2021 · 120 citations
- Rethinking Logging, Checkpoints, and Recovery for High-Performance Storage EnginesMichael Haubenschild, Caetano Sauer, Thomas Neumann, Viktor LeisSIGMOD 2020 · 43 citations
- A marriage of pointer- and epoch-based reclamationJeehoon Kang, Jaehwang JungPLDI 2020 · 25 citations
Related papers
- Lethe: A Tunable Delete-Aware LSM EngineSubhadeep Sarkar, Tarikul Islam Papon, Dimitris Staratzis, Manos AthanassoulisSIGMOD 2020 · 68 citations
- Less is More: De-amplifying I/Os for Key-value Stores with a Log-assisted LSM-treeKecheng Huang, Zhiping Jia, Zhaoyan Shen, Zili Shao et al.ICDE 2021 · 27 citations
- Leaper: A Learned Prefetcher for Cache Invalidation in LSM-tree based Storage EnginesLei Yang, Hong Wu, Tieying Zhang, Xuntao Cheng et al.VLDB 2020
- Terark-DS: A High-Performance and Storage-Efficient Key-Value Separation Storage Engine on Disaggregated StorageJianshun Zhang, Xun Deng, Fang Wang, Jiaxin Ou et al.VLDB 2026
- Revisiting the Design of LSM-tree Based OLTP Storage Engine with Persistent MemoryBaoyue Yan, Xuntao Cheng, Bo Jiang, Shibin Chen et al.VLDB 2021 · 30 citations
