Pacman: An Efficient Compaction Approach for Log-Structured Key-Value Store on Persistent Memory

Jing Wang,Youyou Lu,Qing Wang,Minhui Xie,Keji Huang,Jiwu Shu
2022-01-01
Abstract:Recent persistent memory (PM) key-value (KV) stores adopt the log-structured approach to reap PM's full potential. However, they fail to sustain high performance at high capacity utilization due to inefficient compaction. The inefficiency results from the unawareness of PM's characteristics. This paper proposes PACMAN, an efficient PM-aware compaction approach for log-structured KV stores on PM. PACMAN (1) offloads reference search during compaction to service threads, so as to mitigate the onerous index traversal overhead, (2) leverages tagged pointer and DRAM-resident compaction information to avoid excessive PM accesses introduced by garbage collection, (3) redesigns the compaction pipeline based on the PM peculiarities to lower the persistence overhead, and (4) separates hot and cold objects in a lightweight manner to reduce PM data copying in compaction. We apply PACMAN to state-of-the-art PM-based log-structured KV stores and evaluate PACMAN using various benchmarks. Our evaluations show that PACMAN curtails the performance degradation at high capacity utilization, increases the compaction bandwidth by 2-4x, and boosts the performance of the state-of-the-art systems by 1.5-1.8x under write-intensive workloads.
What problem does this paper attempt to address?