KVSSD: Close Integration of LSM trees and Flash Translation Layer for Write-Efficient KV Store

碩士 === 國立交通大學 === 資訊科學與工程研究所 === 106 === Log-Structured-Merge (LSM) trees are a write-optimized data structure for lightweight, high-performance Key-Value (KV) store. Solid State Disks (SSDs) provide acceleration of KV operations of LSM trees. However, this hierarchical design involves multiple soft...

Full description

Bibliographic Details
Main Authors: Lin, Kai-Hsiang, 林楷翔
Other Authors: Chang, Li-Pin
Format: Others
Language:en_US
Published: 2017
Online Access:http://ndltd.ncl.edu.tw/handle/6r2wdw
Description
Summary:碩士 === 國立交通大學 === 資訊科學與工程研究所 === 106 === Log-Structured-Merge (LSM) trees are a write-optimized data structure for lightweight, high-performance Key-Value (KV) store. Solid State Disks (SSDs) provide acceleration of KV operations of LSM trees. However, this hierarchical design involves multiple software layers, including the LSM tree, host file system, and Flash Translation Layer (FTL) inside of SSDs, causing cascading write amplifications. We propose KVSSD, a close integration of LSM trees and the FTL, to manage write amplifications from different layers. It exploits the FTL mapping to implement copy-free compaction of LSM trees, and it enables direct data allocation in flash memory for efficient garbage collection. In our experiments, compared to the hierarchical design, our KVSSD reduced the write amplification by 80% and improved the throughput by 290%.