Browse > Article
http://dx.doi.org/10.3745/KIPSTD.2008.15-D.6.755

Log-Structured B-Tree for NAND Flash Memory  

Kim, Bo-Kyeong (한양대학교 컴퓨터공학과)
Joo, Young-Do (강남대학교 컴퓨터미디어공학부)
Lee, Dong-Ho (한양대학교 컴퓨터공학과)
Abstract
Recently, NAND flash memory is becoming into the spotlight as a next-generation storage device because of its small size, fast speed, low power consumption, and etc. compared to the hard disk. However, due to the distinct characteristics such as erase-before-write architecture, asymmetric operation speed and unit, disk-based systems and applications may result in severe performance degradation when directly implementing them on NAND flash memory. Especially when a B-tree is implemented on NAND flash memory, intensive overwrite operations may be caused by record inserting, deleting, and reorganizing. These may result in severe performance degradation. Although ${\mu}$-tree has been proposed in order to overcome this problem, it suffers from frequent node split and rapid increment of its height. In this paper, we propose Log-Structured B-Tree(LSB-Tree) where the corresponding log node to a leaf node is allocated for update operation and then the modified data in the log node is stored at only one write operation. LSB-tree reduces additional write operations by deferring the change of parent nodes. Also, it reduces the write operation by switching a log node to a new leaf node when inserting the data sequentially by the key order. Finally, we show that LSB-tree yields a better performance on NAND flash memory by comparing it to ${\mu}$-tree through various experiments.
Keywords
Flash Memory; Index Structure; B-Tree; Log-Structure;
Citations & Related Records
연도 인용수 순위
  • Reference
1 Samsung Electronics, “64M ${times}$ 8 Bits NAND Flash Memory (K9F1208X0C),” 2007
2 Tae-Sun Chung, Dong-Joo Park, Sangwon Park, Dong-Ho Lee, Sang-Won Lee, Ha-Joo Song, “System Software for Flash Memory: A Survey.,” International Conference on Embedded and Ubiquitous Computing, pp.394-404, 2006   DOI   ScienceOn
3 Chin-Hsien Wu, Li-Pin Chang, Tei-Wei Kuo, “An Efficient B-Tree Layer for Flash-Memory Storage Systems,” Real-Time and Embedded Computing Systems and Applications (RTCSA), pp.409-430, 2003
4 M. Rosenblum and J. K. Ousterhout, “Thre Design and Implementation of A Log-Structured File System,” ACM Trans. Computer Systems, 10(1):26-52, 1992   DOI
5 Patrick O'Neil, Edward Cheng, Dieter Gawlick, Elizabeth (Betty) O'Neil, “The Log-Structured Merge-Tree,” Acta Informatica Vol.33, No.4, 1996   DOI
6 KIM, J. S., KIM, J. M.,NOH, S. H.,MIN, S. L., AND CHO, Y. K. 2002. A Space-Efficient Flash Translation Layer for Compactflash Systems. IEEE Transactions on Consumer Electronics 48, 366-375, 2006   DOI   ScienceOn
7 Douglas Comer, “The Ubiquitous B-Tree,” ACM Computing Surveys. 11(2): 121-137, 1979   DOI   ScienceOn
8 Henessy, J. L. and Patterson, D. A. “Computer Architecture: A Quantitative Approach 3rd ed.,” Morgan Kaufmann, San Mateo, CA., 2003
9 Artem B. Bityutskiy, “JFFS3 design issues,” http://www.linux-mtd.infradead.org, 2005
10 Dongwon Kang et al., “${\mu}$-Tree: An Ordered Index Structure for NAND Flash Memory,” Proceedings of the 7th Annual ACM Conference on Embedded Systems Software (ACM EMSOFT 2007), 2007
11 Sang-Won Lee, Dong-Joo Park, Tae-Sun Chung, Dong-Ho Lee, Sangwon Park, Ha-Joo Song, “A Log Buffer based Flash Translation Layer using Fully Associative Sector Translation,” ACM Transactions on Embedded Computing Systems, Vol.6, No.1 Ariticle 5, 2007   DOI
12 Samsung Electronics, “2G ${times}$ 8 Bit / 4G ${times}$ 8 Bit / 8G ${times}$ 8 Bit NAND Flash Memory (K9XXG08XXM),” 2007