Return
A +Store: An Asynchronous Parallel Compaction for Multi-NDP-Enabled Key-Value Store
DOI:10.1016/j.sysarc.2025.103549.png)
Abstract
En 中文
LSM-tree-based key–value stores face significant I/O bandwidth consumption and performance bottlenecks due to frequent data rewrites and migrations during compaction. To address this issue, near-data processing (NDP) technology has emerged as a promising solution and is gaining increasing attention. NDP reduces the data transfer distance between storage and processing resources by placing computational resources closer to storage devices or integrating them into memory, thereby effectively alleviating performance bottlenecks. However, existing multi-NDP key–value stores still face synchronization problems, leading to long wait times and underutilization of resources. To address these issues, we propose an asynchronous parallel compaction for multi-NDP-enabled key–value store named A +Store. In A +Store, to optimize data layout, we implement an MLSM-tree on each NDP device, an asynchronous execution queue for dynamic task management, and an independent metadata management method. This asynchronous mechanism allows each NDP device to update its metadata immediately after completing a compaction task rather than wait for other devices, thereby eliminating synchronization waiting time among NDP devices. Additionally, as each NDP stores SSTables really within specific key ranges; thus, the device can perform sub-compaction tasks in parallel according to its key range, significantly enhancing the execution speed of tasks within each NDP device. This approach can improve the system’s parallel processing capability and resource utilization, addressing the bottlenecks in existing multi-NDP KV stores in applications with the requirements of large-scale data processing and low latency. To evaluate the performance of A+Store, we compare A+Store against state-of-the-art KV stores, including PStore, MStore, and RocksDB (configured with a RAID architecture). We develop a tested toolkit using the real-world dataset OpenAlex, and study the performance of A+Store under realistic workloads. Experimental results show that A+Store demonstrates superior performance across all tests. For example, when loading 100 GB of writes, A+Store achieves 2.87 × the throughput of PStore and 2 × that of MStore, while reducing write amplification by 65.3% and 24.8% compared to PStore and MStore – NDP-empowered KV stores, respectively.
Keywords:
LSM-tree
near-data processing
asynchronous compaction
key-value store
parallel processing
Journal
IF:
4.1
Papers:
3.0K
Citations:
4.2K


