Abstract

Persistent key-value (KV) stores are an integral part of storage infrastructure in data centers. Emerging non-volatile memory (NVM) technologies are potential alternatives for future memory architecture design. In this study, we use NVM to optimize the KV store and propose RangeKV, an LSM-tree based persistent KV store built on a heterogeneous storage architecture. RangeKV uses RangeTab in NVM to manage L0 data and increases L0 capacity to reduce the number of LSM tree levels and system compactions. RangeKV pre-constructs the hash index of RangeTab data to reduce NVM access times and adopts a double-buffer structure to reduce LSM-tree write amplification due to compactions. We implement RangeKV based on RocksDB and conduct a comparative test and performance evaluation with RocksDB and NoveLSM. The test results show that the overall random write throughput is improved by $4.5\times $ to $5.7\times $ compared to RocksDB. In addition, RangeKV has a significant performance advantage over NoveLSM.

Highlights

  • P ERSISTENT key-value (KV) stores are an integral part of storage infrastructure in data centers and have been used in many applications including cloud storage [1], online games [2], advertising [3], [4], e-commerce [5], web indexing [3], [6], and social networks [4], [7], [8]

  • To further improve the system performance, overcome the drawbacks of NoveLSM, and reduce the write amplification of log-structured merge (LSM)-tree, in this paper, we propose RangeKV, an LSMtree-based persistent KV store built on a DRAM-non-volatile memory (NVM)-SSD storage architecture

  • We present the results of extensive experiments conducted to answer the following questions: 1) What are the advantages of RangeKV in terms of the performance? (Section 5.2); 2) What are the effects of different values of RangeKV parameters on the system performance? (Section 5.3)

Read more

Summary

Introduction

P ERSISTENT key-value (KV) stores are an integral part of storage infrastructure in data centers and have been used in many applications including cloud storage [1], online games [2], advertising [3], [4], e-commerce [5], web indexing [3], [6], and social networks [4], [7], [8]. The LSM-tree-based KV stores, such as BigTable [3], Cassandra [13], LevelDB [6], [14], RocksDB [4], and Hbase [15], are state-of-the-art persistent KV stores for write-intensive workloads. These widely used KV stores are mainly deployed on a DRAM-SSD hybrid architecture. LOG-STRUCTURED-MERGE-TREES IN ROCKSDB RocksDB is a popular LSM-tree based KV store It effectively converts small random writes into sequential writes, improving system write performance. Compaction is conducted throughout the lifetime of an LSM-tree to clean invalid/stale KV items and keep the data sorted on each level for efficient reads [12], [22]

Methods
Results
Conclusion
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.