원문정보
초록
영어
Compaction is an essential ingredient in a LSM (Log-Structured Merge)-tree based key-value store. In this paper, we analyze two representative compaction policies, called leveled and universal, using RocksDB. Our analysis uncovers that the universal policy has a capability to reduce write amplification by applying compaction in a lazy manner. However, the lazy manner deteriorates space amplification, which leads to adverse effects such as a relatively longer period of low performance for compaction and degraded throughput for range query. We also observe that, for sequential access pattern, the leveled policy can provide better write amplification than the universal policy by employing a technique called trivial move. In addition, we find out that the background compaction and index cache give a substantial impact on the performance of point query. Our analysis reveals tradeoffs between two policies based on various aspects including access pattern, query type, and configurations, which can be used effectively for designing new and hybrid compaction policies.
목차
I. INTRODUCTION
II. BACKGROUND
A. RocksDB internals
B. Compaction policies
III. METHODOLOGY
A. Three amplfications
B. Write intensive workloads
C. Read intensive workloads
IV. ANALYSIS
A. Write intensive workloads
B. Read intensive workloads
V. CONCLUSION
ACKNOWLEDGEMENT
REFERENCES
