CLC number: TP392
On-line Access: 2024-08-27
Received: 2023-10-17
Revision Accepted: 2024-05-08
Crosschecked: 2023-07-24
Cited: 0
Clicked: 2735
Citations: Bibtex RefMan EndNote GB/T7714
Xiao ZHANG, Mengyu LI, Michael NGULUBE, Yonghao CHEN, Yiping ZHAO. MyWAL: performance optimization by removing redundant input/output stack in key-value store[J]. Frontiers of Information Technology & Electronic Engineering,in press.https://doi.org/10.1631/FITEE.2200496 @article{title="MyWAL: performance optimization by removing redundant input/output stack in key-value store", %0 Journal Article TY - JOUR
MyWAL:一种基于精简输入输出堆栈的键值存储系统性能优化方案1西北工业大学计算机学院,中国西安市,710072 2西北工业大学大数据存储与管理工信部重点实验室,中国西安市,710072 3西北工业大学空天地海一体化大数据应用技术国家工程实验室,中国西安市,710072 4西北工业大学软件学院,中国西安市,710072 摘要:基于日志结构合并(LSM)树的键值(KV)存储系统可优化随机写入性能,并提高读取性能,因此被广泛应用于电子商务、在线分析和实时通信等现代数据存储系统。日志结构合并树将变更的KV数据存在内存中,批量刷新至内存,优化了随机写入效率,但是在系统意外崩溃时会有数据丢失。为了避免内存中的数据丢失,RocksDB在更新内存之前,会将数据写入写前日志(WAL)中。但是开启同步WAL后系统的写入性能会受到较大的影响。在本文中,我们分析了利用本地文件系统保存WAL的一些缺陷,在此基础上提出了一种新的WAL机制,该机制根据WAL文件的特性直接管理原始设备(或分区),避免了无用的元数据更新,同时保证了数据顺序写入磁盘。实验结果表明,对于固态硬盘(SSD)SSD上的小KV数据,MyWAL可以将RocksDB的数据写入性能提高5到8倍。在NVMe SSD和非易失性存储器(NVM)上,MyWAL可以将数据写入性能提高10%-30%。此外,YCSB的结果表明,与SpanDB相比,写入延迟降低了50%。 关键词组: Darkslateblue:Affiliate; Royal Blue:Author; Turquoise:Article
Reference[1]Absalyamov I, Carey MJ, Tsotras VJ, 2018. Lightweight cardinality estimation in LSM-based systems. Proc Int Conf on Management of Data, p.841-855. ![]() [2]Athanassoulis M, Chen SM, Ailamaki A, et al., 2011. MaSM: efficient online updates in data warehouses. Proc ACM SIGMOD Int Conf on Management of Data, p.865-876. ![]() [3]Chen H, Ruan CY, Li C, et al., 2021. SpanDB: a fast, cost-effective LSM-tree based KV store on hybrid storage. 19th USENIX Conf on File and Storage Technologies, p.17-32. ![]() [4]Dayan N, Idreos S, 2018. Dostoevsky: better space-time trade-offs for LSM-tree based key-value stores via adaptive removal of superfluous merging. Proc Int Conf on Management of Data, p.505-520. ![]() [5]Dong SY, Kryczka A, Jin YQ, et al., 2021. Evolution of development priorities in key-value stores serving large-scale applications: the RocksDB experience. 19th USENIX Conf on File and Storage Technologies, p.33-49. ![]() [6]Facebook, 2019. RocksDB, a persistent key-value store for fast storage environments. http://rocksdb.org/ [Accessed on Jan. 7, 2021]. ![]() [7]Izraelevitz J, Yang J, Zhang L, et al., 2019. Basic performance measurements of the Intel Optane DC persistent memory module. https://arxiv.org/abs/1903.05714 ![]() [8]Kaiyrakhmet O, Lee S, Nam B, et al., 2019. SLM-DB: single-level key-value store with persistent memory. 17th USENIX Conf on File and Storage Technologies, p.191-205. ![]() [9]Kannan S, Bhat N, Gavrilovska A, et al., 2018. Redesigning LSMs for nonvolatile memory with NoveLSM. Proc USENIX Conf on Usenix Annual Technical Conf, p.993-1005. ![]() [10]Leavitt N, 2010. Will NoSQL databases live up to their promise?Computer, 43(2):12-14. ![]() [11]Lu LY, Pillai TS, Gopalakrishnan H, et al., 2017. WiscKey: separating keys from values in SSD-conscious storage. ACM Trans Stor, 13(1):5. ![]() [12]Luo C, Carey MJ, 2019. Efficient data ingestion and query processing for LSM-based storage systems. Proc VLDB Endow, 12(5):531-543. ![]() [13]Mei F, Cao Q, Jiang H, et al., 2018. SifrDB: a unified solution for write-optimized key-value stores in large datacenter. Proc ACM Symp on Cloud Computing, p.477-489. ![]() [14]Pan FF, Yue YL, Xiong J, 2017. dCompaction: delayed compaction for the LSM-tree. Int J Parallel Prog, 45(6):1310-1325. ![]() [15]Papagiannis A, Saloustros G, González-Férez P, et al., 2018. An efficient memory-mapped key-value store for flash storage. Proc ACM Symp on Cloud Computing, p.490-502. ![]() [16]Qader MA, Cheng SW, Hristidis V, 2018. A comparative study of secondary indexing techniques in LSM-based NoSQL databases. Proc Int Conf on Management of Data, p.551-566. ![]() [17]Raju P, Kadekodi R, Chidambaram V, et al., 2017. PebblesDB: building key-value stores using fragmented log-structured merge trees. Proc 26th Symp on Operating Systems Principles, p.497-514. ![]() [18]Ren K, Zheng Q, Arulraj J, et al., 2017. SlimDB: a space-efficient key-value storage engine for semi-sorted data. Proc VLDB Endow, 10(13):2037-2048. ![]() [19]Stonebraker M, 2010. SQL databases v. NoSQL databases. Commun ACM, 53(4):10-11. ![]() [20]Teng DJ, Guo L, Lee R, et al., 2017. LSbM-tree: re-enabling buffer caching in data management for mixed reads and writes. IEEE 37th Int Conf on Distributed Computing Systems, p.68-79. ![]() [21]Wu XB, Xu YH, Shao ZL, et al., 2015. LSM-trie: an LSM-tree-based ultra-large key-value store for small data items. USENIX Annual Technical Conf, p.71-82. ![]() [22]Yao T, Wan JG, Huang P, et al., 2017. A light-weight compaction tree to reduce I/O amplification toward efficient key-value stores. Proc 33rd Int Conf on Massive Storage Systems and Technology, p.1-13. ![]() [23]Yao T, Zhang YW, Wan JG, et al., 2020. MatrixKV: reducing write stalls and write amplification in LSM-tree based KV stores with a matrix container in NVM. Proc USENIX Conf on Usenix Annual Technical Conf, Article 2. ![]() [24]Zhang YM, Li YK, Guo F, et al., 2018. ElasticBF: fine-grained and elastic bloom filter towards efficient read for LSM-tree-based KV stores. Proc 10th USENIX Conf on Hot Topics in Storage and File Systems, Article 11. ![]() [25]Zhang ZG, Yue YL, He BS, et al., 2014. Pipelined compaction for the LSM-tree. IEEE 28th Int Parallel and Distributed Processing Symp, p.777-786. ![]() [26]Zhu YC, Zhang Z, Cai P, et al., 2017. An efficient bulk loading approach of secondary index in distributed log-structured data stores. Proc 22nd Int Conf on Database Systems for Advanced Applications, p.87-102. ![]() Journal of Zhejiang University-SCIENCE, 38 Zheda Road, Hangzhou
310027, China
Tel: +86-571-87952783; E-mail: cjzhang@zju.edu.cn Copyright © 2000 - 2025 Journal of Zhejiang University-SCIENCE |
Open peer comments: Debate/Discuss/Question/Opinion
<1>