Publishing Service

Polishing & Checking

Frontiers of Information Technology & Electronic Engineering

ISSN 2095-9184 (print), ISSN 2095-9230 (online)

MyWAL: performance optimization by removing redundant input/output stack in key-value store

Abstract: Based on a log-structured merge (LSM) tree, the key-value (KV) storage system can provide high reading performance and optimize random writing performance. It is widely used in modern data storage systems like e-commerce, online analytics, and real-time communication. An LSM tree stores new KV data in the memory and flushes to disk in batches. To prevent data loss in memory if there is an unexpected crash, RocksDB appends updating data in the write-ahead log (WAL) before updating the memory. However, synchronous WAL significantly reduces writing performance. In this paper, we present a new WAL mechanism named MyWAL. It directly manages raw devices (or partitions) instead of saving data on a traditional file system. These can avoid useless metadata updating and write data sequentially on disks. Experimental results show that MyWAL can significantly improve the data writing performance of RocksDB compared to the traditional WAL for small KV data on solid-state disks (SSDs), as much as five to eight times faster. On non-volatile memory express soild-state drives (NVMe SSDs) and non-volatile memory (NVM), MyWAL can improve data writing performance by 10%‍–‍30%. Furthermore, the results of YCSB (Yahoo! Cloud Serving Benchmark) show that the latency decreased by 50% compared with SpanDB.

Key words: Key-value (KV) store; Log-structured merge (LSM) tree; Non-volatile memory (NVM); Non-volatile memory express soild-state drive (NVMe SSD); Write-ahead log (WAL)

Chinese Summary  <7> MyWAL:一种基于精简输入输出堆栈的键值存储系统性能优化方案

张晓1,2,3,黎梦钰2,4,Michael NGULUBE1,2,陈泳豪1,2,赵一平1
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%。

关键词组:键值(KV)存储;日志结构合并(LSM)树;非易失性存储器(NVM);NVMe SSD;写前日志(WAL)


Share this article to: More

Go to Contents

References:

<Show All>

Open peer comments: Debate/Discuss/Question/Opinion

<1>

Please provide your name, email address and a comment





DOI:

10.1631/FITEE.2200496

CLC number:

TP392

Download Full Text:

Click Here

Downloaded:

1014

Download summary:

<Click Here> 

Downloaded:

311

Clicked:

872

Cited:

0

On-line Access:

2023-07-24

Received:

2022-10-21

Revision Accepted:

2023-03-05

Crosschecked:

2023-07-24

Journal of Zhejiang University-SCIENCE, 38 Zheda Road, Hangzhou 310027, China
Tel: +86-571-87952276; Fax: +86-571-87952331; E-mail: jzus@zju.edu.cn
Copyright © 2000~ Journal of Zhejiang University-SCIENCE