skip to main content
article

An efficient B-tree layer implementation for flash-memory storage systems

Published:01 July 2007Publication History
Skip Abstract Section

Abstract

With the significant growth of the markets for consumer electronics and various embedded systems, flash memory is now an economic solution for storage systems design. Because index structures require intensively fine-grained updates/modifications, block-oriented access over flash memory could introduce a significant number of redundant writes. This might not only severely degrade the overall performance, but also damage the reliability of flash memory. In this paper, we propose a very different approach, which can efficiently handle fine-grained updates/modifications caused by B-tree index access over flash memory. The implementation is done directly over the flash translation layer (FTL); hence, no modifications to existing application systems are needed. We demonstrate that when index structures are adopted over flash memory, the proposed methodology can significantly improve the system performance and, at the same time, reduce both the overhead of flash-memory management and the energy dissipation. The average response time of record insertions and deletions was also significantly reduced.

References

  1. Bayer, R. and McCreight, E. M. 1972. Organization and maintenance of large ordered indices. Acta Informatica 1, 173--189.Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Becker, B., Gschwind, S., Ohler, T., Seeger, B., and Widmayer, P. 1996. An asymptotically optimal multiversion B-tree. VLDB Journal 5, 4, 264--275. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Chang, L. P. and Kuo, T. W. 2001. A dynamic-voltage-adjustment mechanism in reducing the power consumption of flash memory for portable devices. In Conference on Consumer Electronic (ICCE). IEEE, LA.Google ScholarGoogle Scholar
  4. Chang, L. P. and Kuo, T. W. 2002. An adaptive striping architecture for flash memory storage systems of embedded systems. In Real-Time and Embedded Technology and Applications Symposium (RTAS). San Jose, CA. IEEE, Washington, D.C. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Chang, L. P., Kuo, T. W., and Lo, S.-W. 2004. Real-time garbage collection for flash-memory storage systems of real-time embedded systems. ACM Transactions on Embedded Computing Systems 3, 4. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Comer, D. 1979. The ubiquitous b-tree. ACM Computing Surveys 11, 2, 121--137. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Douglis, F., Caceres, R., F. Kaashoek, K., Li, B. M., and Tauber, J. A. 1994. Storage alternatives for mobile computers. In Symposium on Operating Systems Design and Implementation (OSDI). USENIX. 25--37. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Freeston, M. 1995. A general solution of the n-dimensional b-tree problem. In SIGMOD Conference. San Jose, CA. ACM, New York. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Ftl logger exchanging data with ftl systems.Google ScholarGoogle Scholar
  10. Garey, M. R. and Johnson, D. S. 1979. Computers and Intractability. Freeman, San Francisco, CA.Google ScholarGoogle Scholar
  11. Han-Joon, K. and Sang-goo, L. 1999. A new flash memory management for flash storage system. In Proceedings of the Computer Software and Applications Conference (COMPSAC). IEEE, Washington, D.C. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. http://www.linuxgazette.com/issue55/florido.html.Google ScholarGoogle Scholar
  13. http://www.samsung.com/products/semiconductor/flash/index.htm.Google ScholarGoogle Scholar
  14. Kawaguchi, A., Nishioka, S., and Motoda, H. 1995. A flash-memory based file system. In USENIX Technical Conference on Unix and Advanced Computing Systems. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Kim, H. J. and Lee, S. G. 1999. A new flash memory management for flash storage system. In Annual International Computer Software and Applications Conference. Phoenix, AZ. IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Kim, J., Kim, J. M., Noh, S. H., Min, S. L., and Cho, Y. 2002. A space-efficient flash translation layer for compact-flash systems. IEEE Transactions on Consumer Electronics 48, 2 (May). Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Kuo, T. W., Wey, J. H., and Lam, K. Y. 1999. Real-time data access control on b-tree index structures. In International Conference on Data Engineering (ICDE). Sydney, IEEE, Washington, D.C. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Lfs file manager software: Lfm.Google ScholarGoogle Scholar
  19. 1998. compact flashTM 1.4 specification.Google ScholarGoogle Scholar
  20. 1999. smartmediaTM specification.Google ScholarGoogle Scholar
  21. Park, C., Kang, J., Park, S. Y., and Kim, J. 2004. Energy-aware demand paging on nand flash-based embedded storages. In International Symposium on Low Power Electronics and Design (ISLPED). Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Park, C., Seo, J., Bae, S., Kim, H., Kim, S., and Kim, B. 2003. A low-cost memory architecture with nand xip for mobile embedded systems. In International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS). IEEE/ACM/IFIP, CA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Ramakrishnan and Gehrke. 2003. Database Management Systems. McGraw-Hill, New York. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Rosenblum, M. and Ousterhout, J. K. 1992. The design and implementation of a log-structured file system. ACM Transactions on Computer Systems 10, 1 (Feb.), 26--52. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Software concerns of implementing a resident flash disk.Google ScholarGoogle Scholar
  26. Understanding the flash translation layer(ftl) specification.Google ScholarGoogle Scholar
  27. Vazirani, V. V. 2001. Approximation Algorithm. Springer, New York. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Woodhouse, D. Jffs: The journaling flash file system.Google ScholarGoogle Scholar
  29. Wu, C. H., Kuo, T. W., and Yang, C. L. 2004. Energy-efficient flash-memory storage systems with interrupt-emulation mechanism. In International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS). IEEE/ACM/IFIP, Stockholm, Sweden. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Wu, C. H., Kuo, T. W., and Chang, L. P. 2006a. Efficient initialization and crash recovery for log-based file systems over flash memory. In Proceedings of the ACM Symposium on Applied Computing (SAC). Dijon, France. ACM, New York. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Wu, C. H., Kuo, T. W., and Yang, C. L. 2006b. A space-efficient caching mechanism for flash-memory address translation. In International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC). Gyeongju, Korea. IEEE, Washington, D.C. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Wu, M. and Zwaenepoel, W. 1994. envy: A non-volatile, main memory storage system. In Proceedings of the International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS). ACM, New York. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Yet another flash filing system.Google ScholarGoogle Scholar
  34. Yokota, H., Kanemasa, Y., and Miyazaki, J. 1999. Fat-btree: An update-conscious parallel directory structure. In International Conference on Data Engineering (ICDE). 448--457. IEEE, Washington, D.C. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. An efficient B-tree layer implementation for flash-memory storage systems

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader
        About Cookies On This Site

        We use cookies to ensure that we give you the best experience on our website.

        Learn more

        Got it!