Design of High-Performance LSM-tree based Key-Value Store
고성능 LSM-tree 기반 키-값 저장소 설계
- 주제(키워드) Key-Value Store , Log-structured Merge-tree , High-Performance , Parallel Processing , Sharding , Software Stack
- 발행기관 서강대학교 일반대학원
- 지도교수 박성용
- 발행년도 2026
- 학위수여년월 2026. 2
- 학위명 박사
- 학과 및 전공 일반대학원 컴퓨터공학과
- 실제URI http://www.dcollection.net/handler/sogang/000000082653
- UCI I804:11029-000000082653
- 본문언어 영어
- 저작권 논문은 저작권에 의해 보호받습니다.
초록(요약문)
The scale, diversity, and generation rate of data have increased to an unprecedented extent, highlighting the importance of storage engines that can efficiently handle large-scale write-intensive workloads. Modern data-intensive applications, such as log collection, streaming analytics, cloud services, and large-scale AI training and inference, continuously record and access massive volumes of data. In this context, Log-Structured Merge-tree (LSM-tree)–based key-value stores have emerged as a representative storage engine, leveraging their high write throughput and strong scalability. However, despite continuous advances in storage hardware such as NVMe SSDs, the internal compaction operation within LSM-trees remains a major bottleneck that limits overall system performance. Compaction inherently suffers from several fundamental issues, including limited parallelism, write stalls caused by structural back-pressure in a single pipeline architecture, and increasing software stack overhead due to reliance on system calls and kernel execution paths. These challenges prevent LSM-tree–based systems from fully exploiting the performance potential of modern storage devices. This dissertation proposes three solutions—DownForce, DiaLSM, and Resystance—to comprehensively address these compaction bottlenecks across three layers: execution phase, architecture, and I/O path. First, DownForce investigates the limitations of existing multi-threaded compaction and substantially extends cross-level parallelism by introducing non-blocking multi-threaded pipelining. Second, DiaLSM demonstrates that LSM-trees with a single pipeline structure are theoretically unable to avoid write stalls, and fundamentally resolves this structural bottleneck through a sharding architecture and dynamic fallback redirection. Third, Resystance identifies kernel level overhead, such as file system and kernel–user context switching due to system calls in the compaction I/O path, as the primary bottleneck. It dramatically eliminates software stack overhead through eBPF-based kernel offloading and an integrated io_uring I/O path. The three solutions each target different layers of LSM-tree compaction, but provide complementary contributions, which improve compaction throughput, mitigate write stalls, and avoid software overhead. Extensive experimental evaluations on RocksDB demonstrate that the proposed solutions significantly enhance the throughput and stability of LSM-tree–based systems, proving their ability to more effectively leverage the performance of modern storage hardware. This dissertation shows a new LSM-tree design direction suitable for the era of high-performance storage through a vertical approach that solves compaction bottlenecks at different layers, providing important implications for research on next-generation storage systems supporting big data and AI-based workloads.
more

