HEAPO: Heap-Based Persistent Object Store

被引:35
作者
Hwang, Taeho [1 ]
Jung, Jaemin [1 ]
Won, Youjip [1 ]
机构
[1] Hanyang Univ, Dept Comp & Software, Seoul, South Korea
基金
新加坡国家研究基金会;
关键词
Design; Algorithms; Performance; Persistent heap; Persistent objects; Nonvolatile memory; CLASS MEMORY; SYSTEM;
D O I
10.1145/2629619
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
In this work, we developed a Heap-Based Persistent Object Store (HEAPO) to manage persistent objects in byte-addressable Nonvolatile RAM (NVRAM). HEAPO defines its own persistent heap layout, the persistent object format, name space organization, object sharing and protection mechanism, and undo-only log-based crash recovery, all of which are effectively tailored for NVRAM. We put our effort into developing a lightweight and flexible layer to exploit the DRAM-like access latency of NVRAM. To address this objective, we developed (i) a native management layer for NVRAM to eliminate redundancy between in-core and on-disk copies of the metadata, (ii) an expandable object format, (iii) a burst trie-based global name space with local name space caching, (iv) static address binding, and (v) minimal logging for undo-only crash recovery. We implemented HEAPO at commodity OS (Linux 2.6.32) and measured the performance. By eliminating metadata redundancy, HEAPO improved the speed of creating, attaching, and expanding an object by 1.3x, 4.5x, and 3.8x, respectively, compared to memory-mapped file-based persistent object store. Burst trie-based name space organization of HEAPO yielded 7.6x better lookup performance compared to hashed B-tree-based name space of EXT4. We modified memcachedb to use HEAPO in maintaining its search structure. For hash table update, HEAPO-based memcachedb yielded 3.4x performance improvement against original memcachedb implementation which uses mmap () over ramdisk approach to maintain the key-value store in memory.
引用
收藏
页数:21
相关论文
共 44 条
[1]  
Akel A., 2011, P WORKSH HOT TOP STO
[2]  
Ames S., 2006, P IEEE C MASS STOR S
[3]  
[Anonymous], FLASH MEMORY SUMMIT
[4]  
Badam Anirudh, 2011, P USENIX C NETW SYST
[5]  
Cao M., 2005, P OTT LIN S OLS 05
[6]   Bigtable: A distributed storage system for structured data [J].
Chang, Fay ;
Dean, Jeffrey ;
Ghemawat, Sanjay ;
Hsieh, Wilson C. ;
Wallach, Deborah A. ;
Burrows, Mike ;
Chandra, Tushar ;
Fikes, Andrew ;
Gruber, Robert E. .
ACM TRANSACTIONS ON COMPUTER SYSTEMS, 2008, 26 (02)
[7]  
Chodorow Kristina, 2010, FREE OP SOURC SOFTW
[8]  
Chu S., 2008, MEMCACHEDB
[9]  
Coburn J., 2011, P INT C ARCH SUPP PR
[10]  
Condit J., 2009, P ACM SIGOPS S OP SY