Skip to main content
Log in

Abstract

With the rapid increasing capacity of flash memory, flash-aware indexing techniques are highly desirable for flash devices. The unique features of flash memory, such as the erase-before-write constraint and the asymmetric read/write cost, severely deteriorate the performance of the traditional B+-tree algorithm. In this paper, we propose an optimized indexing method, called lazy-update B+-tree, to overcome the limitations of flash memory. The basic idea is to defer the committing of update requests to the B+-tree by buffering them in a segment of main memory. They are later committed in groups so that the cost of each write operation can be amortized by a bunch of update requests. We identify a victim selection problem for the lazy-update B+-tree and develop two heuristic-based commit policies to address this problem. Simulation results show that the proposed lazy-update method, along with a well-designed commit policy, greatly improves the update performance of the traditional B+-tree while preserving the query efficiency.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Lee S W, Moon B. Design of flash-based DBMS: An in-page logging approach. In Proc. the 2007 ACM SIGMOD International Conference on Management of Data (SIGMOD 2007), Beijing, China, June 11-14, 2007, pp.55-66.

  2. Nath S, Kansal A. FlashDB: Dynamic self-tuning database for NAND flash. In Proc. the 6th International Conference on Information Processing in Sensor Networks (IPSN 2007), New York, USA, 2007, pp.410-419.

  3. Wu C, Kuo T, Chang L P. An efficient b-tree layer implementation for flash-memory storage systems. Trans. Embedded Computing Sys., 2007, 6(3): 19.

    Article  Google Scholar 

  4. Understanding the flash translation layer (FTL) specification. Technical Report, Intel Corporation, 1998, http://developer.intel.com.

  5. Kawaguchi A, Nishioka S, Motoda H. A flash-memory based file system. In Proc. USENIX 1995, New Orleans, USA, Jan. 16-20, 1995, pp.155-164.

  6. SmartMedia specification. SSFDC Forum, http://www.ssfdc.or.jp.

  7. Kim B, Lee G. Method of driving remapping in flash memory and flash memory architecture. United States Patent, No.6 381176, 2002.

  8. Reiser H. Reiser file system. http://www.namesys.com, 1997.

  9. Oracle Corporation. Oracle 10g. http://www.oracle.com/database/index.html, 2003.

  10. Chang L P, Kuo T W, Lo S W. Real-time garbage collection for flash-memory storage systems of real-time embedded systems. Trans. Embedded Computing Sys., 2004, 3(4): 837-863.

    Article  Google Scholar 

  11. Kim H J, Lee S G. A new flash memory management for flash storage system. In Proc. the 23rd International Computer Software and Applications Conference (COMPSAC 1999), Phoenix, USA, Oct. 19-26, 1999, p.284.

    Google Scholar 

  12. Chang L P, Kuo T W. An efficient management scheme for large-scale flash-memory storage systems. In Proc. the 2004 ACM Symposium on Applied Computing (SAC 2004), Nicosia, Cyprus, Mar. 14-17, 2004, pp.862-868.

    Chapter  Google Scholar 

  13. Chang Y H, Hsieh J W, Kuo T W. Endurance enhancement of flash-memory storage systems: An efficient static wear leveling design. In Proc. the 44th Annual Conference on Design Automation (DAC 2007), San Diego, USA, June 4-8, 2007, pp.212-217.

    Chapter  Google Scholar 

  14. Embedded Debian, YAFFS: A nand-flash file system. Aleph one ltd., http://www.aleph1.co.uk/yaffs, 2002.

  15. Woodhouse D. JFFS: The journalling flash file system. In Proc. the Ottawa Linux Symposium, Ottawa, Canada, July 25-28, 2001, pp.177-182.

  16. Lee S W, Moon B, Park C, Kim J M, Kim S W. A case for flash memory SSD in enterprise database applications. In Proc. the 2008 ACM SIGMOD International Conference on Management of Data (SIGMOD 2008), Vancounver, Canada, June 10-12, 2008, pp.1075-1086.

  17. Cieslewicz J, Mee W, Ross K A. Cache-conscious buffering for database operators with state. In Proc. the Fifth International Workshop on Data Management on New Hardware (DaMoN 2009), Rhode Island, USA, June 28, 2009, pp.43-51.

  18. Jo H, Kang J, Park S, Kim J, Lee J. FAB: Flash-aware buffer management policy for portable media players. Trans. Consumer Electronics, 2006, 52(2): 485-493.

    Article  Google Scholar 

  19. Kim H, Ahn S. BPLRU: A buffer management scheme for improving random writes in flash storage. In Proc. the 6th USENIX Conference on File and Storage Technologies (FAST 2008), Berkeley, USA, 2008, pp.1-14.

  20. Park S, Jung D, Kang J, Kim J, Lee J. CFLRU: A replacement algorithm for flash memory. In Proc. the 2006 International Conference on Compilers, Architecture and Synthesis for Embedded Systems (CASES 2006), Seoul, Korea, Oct. 23-25, 2006, pp.234-241.

  21. Ou Y, Härder T, Jin P. CFDC: A flash-aware replacement policy for database buffer management. In Proc. the Fifth International Workshop on Data Management on New Hardware (DaMoN 2009), Rhode Island, USA, June 28, 2009, pp.15-20.

  22. Lee H S, Park S, Song H J, Lee D H. An efficient buffer management scheme for implementing a B-tree on NAND flash memory. In Proc. the 3rd International Conference on Embedded Software and Systems (ICESS 2007), Berlin, Heidelberg, 2007, pp.181-192.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Sai Tung On.

Additional information

This work is supported by the Research Grants Council of Hong Kong under Grant No. HKBU210808 and the National Natural Science Foundation of China under Grant No. 60833005.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Tung On, S., Hu, H., Li, Y. et al. Flash-Optimized B+-Tree. J. Comput. Sci. Technol. 25, 509–522 (2010). https://doi.org/10.1007/s11390-010-9341-1

Download citation

  • Received:

  • Revised:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11390-010-9341-1

Keywords

Navigation