dCompaction: Delayed Compaction for the LSM-Tree
dCompaction: Delayed Compaction for the LSM-Tree
复制标题
DOI:
10.1007/s10766-016-0472-z
复制
发表时间:
2017-12
影响因子:
1.5
通讯作者:
Fengfeng Pan;Yinliang Yue;Jin Xiong
中科院分区:
文献类型:
--
作者:
Fengfeng Pan;Yinliang Yue;Jin Xiong
Key-value (KV) stores have become a backbone of large-scale applications in today’s data centers. Write-optimized data structures like the Log-Structured Merge-tree (LSM-tree) and their variants are widely used in KV storage systems like BigTable and RocksDB. Conventional LSM-tree organizes KV items into multiple, successively larger components, and uses compaction to push KV items from one smaller component to another adjacent larger component until the KV items reach the largest component. Unfortunately, current compaction scheme incurs significant write amplification due to repeated KV item reads and writes, and then results in poor throughput. We propose a new compaction scheme,delayed compaction(dCompaction), that decreases write amplification. dCompaction postpones some compactions and gather them into the following compaction. In this way, it avoids KV item reads and writes during compaction, and consequently improves the throughput of LSM-tree based KV stores. We implementdCompactionon RocksDB, and conduct extensive experiments. Validation using YCSB framework shows that compared with RocksDBdCompactionhas about 30% write performance improvements and also comparable read performance.