PinK: High-speed In-storage Key-value Store with Bounded Tails
summary
PinK implements an LSM-tree KV-SSD that pins the top levels of the tree in DRAM to bound reads to a single flash access, removes Bloom filters to cut CPU work, and offloads compaction sorting to an FPGA. A prototype on an ARM+FPGA evaluation board with a custom flash card pins top three levels in 4 GB DRAM, uses a FPGA accelerator, and adopts no Bloom filters. Measured results: 73% lower 99th-percentile latency, 42% lower average read latency, and 37% higher throughput.
AI-written summary · about
chapters (19)
- 0:00Intro
- 0:36Key-Value (KV) Storage Device
- 1:22Key Challenges of Designing KV-SSD
- 2:21Experiments using Hash-based KV-SSD
- 3:01Problem of Hash-based KV-SSD
- 5:02Problem of LSM-tree-based KV-SSD
- 6:31Experiments using LSM-tree-based KV-SSD
- 7:44Pink : New LSM-tree-based KV-SSD
- 8:26Overview of LSM-tree in Pink Pink is based on key-value separated LSM-tree
- 9:22Bounding Tail Latency
- 10:54Memory Requirement
- 11:40Reducing Search Overhead
- 13:12Reducing Compaction I/O Pink without level-pinning
- 14:18Reducing Sorting Time
- 15:32Custom KV-SSD Prototype and Setup All algorithms for KV-SSD were implemented on ZCU102 board
- 17:28Experiment: Throughput
- 18:24Experiment: Latency
- 18:55Experiment: Impact of Level-pinning
- 19:45Experiment: Search Optimization Settings Pink (NO-OPT): Pink without prefix and range pointer Benchmark: YCSB-Load and YCSB-C
related talks
15mImproving Performance of Flash Based Key-Value Stores Using Storage Class Memory...
25mFlashield: a Hybrid Key-value Cache that Controls Flash Write Amplification
27mFPGA-Accelerated Compactions for LSM based Key-Value Store
01h 07mEmerging Embdedded Memories and Storage
12mSpanDB: A Fast, Cost-Effective LSM-tree Based KV Store on Hybrid Storage
19mBuilding KVStore for ML Workloads
17mPIMLex: A High-Performance Learned Index with Processing-in-Memory
28mAchieving 10Gbps Line-rate Key-value Stores with FPGAs
