IPLB+-tree for Flash Memory Database Systems

Recently, the in-page logging (IPL) scheme has been proposed to improve the overall write performance of flash memory by avoiding costly erase operations that would be caused by small random write requests common in database applications. In this paper, we identify the problems inherent in the existing design of disk-based B + -tree index, and present the design and implementation of the IPL B + -tree. In this paper, in order to prove the concept of IPL to be a viable and effective solution for flash memory, we show the superior performance of the IPL B + -tree index by running it on a real hardware prototype. We then show the IPL B + -tree index outperforms traditional B + -tree index running on top of an FTL by a factor of two to fifteen. In addition, we introduce the concept of FTL dependency: many existing B + tree schemes for flash memory could not control FTL so that their performance might be heavily dependent on the underlying FTL. In contract, IPL does not suffer from such FTL dependency because it does not assume the underlying FTL.

[1]  Tei-Wei Kuo,et al.  An efficient B-tree layer implementation for flash-memory storage systems , 2007, TECS.

[2]  Hiroshi Motoda,et al.  A Flash-Memory Based File System , 1995, USENIX.

[3]  Michael Wu,et al.  eNVy: a non-volatile, main memory storage system , 1994, ASPLOS VI.

[4]  Bingsheng He,et al.  Tree Indexing on Flash Disks , 2009, 2009 IEEE 25th International Conference on Data Engineering.

[5]  Olaf Spinczyk,et al.  Programming Languages and Operating Systems , 2004, ECOOP Workshops.

[6]  Sang-Won Lee,et al.  A log buffer-based flash translation layer using fully-associative sector translation , 2007, TECS.

[7]  Sang Lyul Min,et al.  A space-efficient flash translation layer for CompactFlash systems , 2002, IEEE Trans. Consumer Electron..

[8]  Sang-Won Lee,et al.  Design of flash-based DBMS: an in-page logging approach , 2007, SIGMOD '07.

[9]  Jin-Soo Kim,et al.  μ*-Tree: An Ordered Index Structure for NAND Flash Memory with Adaptive Page Layout Scheme , 2013, IEEE Trans. Computers.

[10]  Suman Nath,et al.  FlashDB: Dynamic Self-tuning Database for NAND Flash , 2007, 2007 6th International Symposium on Information Processing in Sensor Networks.

[11]  Sivan Toledo,et al.  Algorithms and data structures for flash memories , 2005, CSUR.