Rethinking Logging, Checkpoints, and Recovery for High-Performance Storage Engines
Michael Haubenschild, Caetano Sauer, Thomas Neumann, Viktor Leis
摘要
For decades, ARIES has been the standard for logging and recovery in database systems. ARIES offers important features like support for arbitrary workloads, fuzzy checkpoints, and transparent index recovery. Nevertheless, many modern in-memory database systems use more lightweight approaches that have less overhead and better multi-core scalability but only work well for the in-memory setting. Recently, a new class of high-performance storage engines has emerged, which exploit fast SSDs to achieve performance close to pure in-memory systems but also allow out-of-memory workloads. For these systems, ARIES is too slow whereas in-memory logging proposals are not applicable. In this work, we propose a new logging and recovery design that supports incremental and fuzzy checkpointing, index recovery, out-of-memory workloads, and low-latency transaction commits. Our continuous checkpointing algorithm guarantees bounded recovery time. Using per-thread logging with minimal synchronization, our implementation achieves near-linear scalability on multi-core CPUs. We implemented and evaluated these techniques in our LeanStore storage engine. For working sets that fit in main memory, we achieve performance close to that of an in-memory approach, even with logging, checkpointing, and dirty page writing enabled. For the out-of-memory scenario, we outperform a state-of-the-art ARIES implementation by a factor of two.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper19
- What Modern NVMe Storage Can Do, And How To Exploit It: High-Performance I/O for High-Performance Storage EnginesGabriel Haas, Viktor LeisVLDB 2023 · 被引用 83 次
- ScaleStore: A Fast and Cost-Efficient Storage Engine using DRAM, NVMe, and RDMATobias Ziegler, Carsten Binnig, Viktor LeisSIGMOD 2022 · 被引用 51 次
- Virtual-Memory Assisted Buffer ManagementViktor Leis, Adnan Alhomssi, Tobias Ziegler, Yannick Loeck 等SIGMOD 2023 · 被引用 37 次
- Plush: A Write-Optimized Persistent Log-Structured Hash-TableLukas Vogel, Alexander van Renen, Satoshi Imamura, Jana Giceva 等VLDB 2022 · 被引用 27 次
- Memory-Optimized Multi-Version Concurrency Control for Disk-Based Database SystemsMichael J. Freitag, Alfons Kemper, Thomas NeumannVLDB 2022 · 被引用 14 次
相关 Paper
- Index Checkpoints for Instant Recovery in In-Memory Database SystemsLeon Lee, Siphrey Xie, Yunus Ma, Shimin ChenVLDB 2022 · 被引用 13 次
- Revisiting the Design of LSM-tree Based OLTP Storage Engine with Persistent MemoryBaoyue Yan, Xuntao Cheng, Bo Jiang, Shibin Chen 等VLDB 2021 · 被引用 30 次
- Scalable, NearZero Loss Disaster Recovery for Distributed Data StoresAhmed Alquraan, Alex Kogan, Virendra J. Marathe, Samer Al-KiswanyVLDB 2020 · 被引用 4 次
- Improving the Concurrency Performance of Persistent Memory Transactions on MulticoresQing Wang, Youyou Lu, Zhongjie Wu, Fan Yang 等DAC 2020 · 被引用 3 次
- NV-SQL: Boosting OLTP Performance with Non-Volatile DIMMsMijin An, Jonghyeok Park, Tianzheng Wang, Beomseok Nam 等VLDB 2023 · 被引用 6 次
