UDORN: A Design Framework of Persistent In-Memory Key-Value Database for NVM
Xianzhang Chen,Edwin H. -M. Sha,Ahmad Abdullah,Qingfeng Zhuge,Lin Wu,Chaoshu Yang,Weiwen Jiang
DOI: https://doi.org/10.1109/nvmsa.2017.8064478
2017-01-01
Abstract:Emerging non-volatile memory (NVM) technologies provide opportunities to improve the performance of key-value databases (KVDBs) by deploying database on NVM. However, existing in-memory KVDBs cannot fully exploit the advantages of NVM. They process data on in-memory database and store an image on persistent storage via an underlying file system. The performance of database operations is degraded by the backup mechanisms and involved I/O routines. In this paper, we propose a new design framework of in-memory KVDB called Unified Database on Raw NVM (UDORN). In UDORN, a persistent database on NVM is employed to accomplish the functions of both conventional in-memory database and persistent image. During runtime, the persistent database is mapped to process address space. The operations are directly performed on NVM via the corresponding address space. We implement a case study of UDORN based on open-source in memory KVDB Redis. Compared with original Redis, UDORN achieves more than 1400 times and 84% performance improvement when Redis deploys backup image on HDD and memory, respectively. Compared with the enhanced Redis using the NVM Library, UDORN also achieves 6 times performance improvement.
What problem does this paper attempt to address?