Font Size: a A A

Research And Implementation Of Key-Value Storage System Based On Shingled Magnetic Recording Drives

Posted on:2020-10-26Degree:MasterType:Thesis
Country:ChinaCandidate:H YeFull Text:PDF
GTID:2428330590958322Subject:Computer system architecture
Abstract/Summary:PDF Full Text Request
Key-value(KV)stores play an increasingly critical role in the massive data processing of large-scale applications in modern data centers,and the increasing amount of data is driving a trend of high storage density for KV stores.Shingled Magnetic Recording(SMR)represents a promising technology for increasing disk capacity,but it comes at the cost of poor random write performance and severe write amplification.Although KV stores based on Log-Structured Merge tree can convert random writes into sequential writes with high write performance,but simply applying it to SMR drives indroduces additional random I/O amplification,and traditional KV stores are not SMR-friendly.In order to improve the poor random writes and severe write amplification issues of SMR drives,we present SEALDB,a key-value store that is specifically optimized for and works well with SMR drives.First,for LSM-trees,SEALDB concatenates SSTables of each compaction,and group them into sets.Taking sets as the basic unit for compactions,SEALDB improves compaction efficiency by mitigating random I/Os.Second,SEALDB creates dynamic bands on HM-SMR drives,multiple sets are stored in one band as many as possible.This not only reduces the waste of space on gap between bands,but also improve the space management efficiency of garbage collection on SMR drives.Third,according to the features of dynamic band,two light-weight garbage collection policies are proposed to reduce the disk overhead and the impact of garbage collection on system performance.This paper implements the SEALDB system prototype based on the open source LevelDB,and compares SELADB with LevelDB and SMRDB.The results show that SEALDB can effectively improve system performance.SEALDB improves random write performance by 3.42 x relative to LevelDB and outperforms SMRDB by 1.67 x.As for random read performance,SEALDB transcends LevelDB and SMRDB by about 1.73 x.SMRDB and SEALDB exhibit quite similar sequential write and read performance,them surpass LevelDB by 1.75 x and 3.96 x.
Keywords/Search Tags:Key-value store, Shingled Magnetic Recording, Log-Structure Merge tree, Set, Dynamic band
PDF Full Text Request
Related items