SpanDB: A Fast, Cost-Effective LSM-tree Based KV Store on Hybrid Storage
summary
SpanDB adapts RocksDB to put write-ahead logs and the top LSM levels on a small NVMe while keeping bulk SSTables on cheaper SSDs, implements SPDK for polling I/O, parallel WAL with multiple outstanding writes and atomic page allocation, and an async request pipeline that pins threads to roles. Evaluation on YCSB and Facebook traces reports up to 8.8x throughput and 9.5–58.3% latency drop versus RocksDB, and matches KVell throughput at 2.3–21.6x lower latency.
AI-written summary · about
chapters (10)
- 0:00Intro
- 0:30Rise of Key-Value Stores
- 1:18Challenge 1: Fast Accesses to Fast Devices
- 3:24Related Work and Our Approach
- 4:12SpanDB Overview
- 5:26Async. KV Request Processing
- 6:27Parallel Logging via SPDK
- 7:21Dynamic LSM-Tree Level Placement
- 8:42Experimental Setup
- 10:24YCSB Results, Comparison w. KVell
related talks
24mSplinterDB: Closing the Bandwidth Gap for NVMe Key-Value Stores
57mRocksDB
21mMatrixKV: Reducing Write Stalls and Write Amplification in LSM-tree Based KV Stores
01h 02mRonDB: A Key-Value Store with SQL Capabilities and LATS Properties
19mSILK: Preventing Latency Spikes in Log-Structured Merge Key-Value Stores
29mAccelerating Performance: Mastering RocksDB for High Speed Data Processing
52mRocksDB Performance and Reliability Practics
18mSplitKV: Splitting IO Paths for Different Sized Key-Value Items with Advanced
