skip to main content
research-article

B+-tree index optimization by exploiting internal parallelism of flash-based solid state drives

Published:01 December 2011Publication History
Skip Abstract Section

Abstract

Previous research addressed the potential problems of the hard-disk oriented design of DBMSs of flashSSDs. In this paper, we focus on exploiting potential benefits of flashSSDs. First, we examine the internal parallelism issues of flashSSDs by conducting benchmarks to various flashSSDs. Then, we suggest algorithm-design principles in order to best benefit from the internal parallelism. We present a new I/O request concept, called psync I/O that can exploit the internal parallelism of flashSSDs in a single process. Based on these ideas, we introduce B+-tree optimization methods in order to utilize internal parallelism. By integrating the results of these methods, we present a B+-tree variant, PIO B-tree. We confirmed that each optimization method substantially enhances the index performance. Consequently, PIO B-tree enhanced B+-tree's insert performance by a factor of up to 16.3, while improving point-search performance by a factor of 1.2. The range search of PIO B-tree was up to 5 times faster than that of the B+-tree. Moreover, PIO B-tree outperformed other flash-aware indexes in various synthetic workloads. We also confirmed that PIO B-tree outperforms B+-tree in index traces collected inside the Postgresql DBMS with TPC-C benchmark.

References

  1. N. Agrawal, V. Prabhakaran, T. Wobber, J. D. Davis, M. S. Manasse, and R. Panigrahy. Design tradeoffs for SSD performance. In USENIX, pages 57--70, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. F. Chen, D. A. Koufaty, and X. Zhang. Understanding intrinsic characteristics and system implications of flash memory based solid state drives. In SIGMETRICS, pages 181--192, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. F. Chen, R. Lee, and X. Zhang. Essential roles of exploiting internal parallelism of flash memory based solid state drives in high-speed data processing. In HPCA, pages 266--277, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Corsair. F120. http://www.corsair.com/solid-statedrives/force-series/cssd-F120gb2-brkt.html.Google ScholarGoogle Scholar
  5. Fusion-io. Iodrive. http://community.fusionio.com/media/p/853.aspx.Google ScholarGoogle Scholar
  6. G. Graefe. The five-minute rule 20 years later: and how flash memory changes the rules. ACM Queue, 6(4):40--52, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. R. A. Hankins, T. A. Diep, M. Annavaram, B. Hirano, H. Eri, H. Nueckel and J. P. Shen. Scaling and characterizing database workloads: bridging the gap between research and practice. In MICRO, pages 151--164, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Y. Hu, H. Jiang, D. Feng, L. Tian, H. Luo and S. P. Zhang. Performance impact and interplay of SSD parallelism through advanced commands, allocation strategy and data granularity. In ICS, pages 96--107, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Intel. intel x25-e. http://download.intel.com/design/ash/nand/extreme/319984.pdf.Google ScholarGoogle Scholar
  10. Intel. intel x25-m. http://download.intel.com/design/ash/nand/mainstream/Specification322296.pdf.Google ScholarGoogle Scholar
  11. J. H. Kim, D. Jung, J. S. Kim and J. Huh. A methodology for extracting performance parameters in solid state disks (SSDs). In MASCOTS, pages 1--10, 2009.Google ScholarGoogle Scholar
  12. Y.-R. Kim, K.-Y. Whang, and I.-Y. Song. Page-differential logging: an efficient and DBMS-independent approach for storing data into flash memory. In SIGMOD, pages 363--374, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. S.-W. Lee and B. Moon. Design of flash-based DBMS: an in-page logging approach. In SIGMOD, pages 55--66, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. S.-W. Lee, B. Moon, and C. Park. Advances in flash memory SSD technology for enterprise database applications. In SIGMOD, pages 863--870, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. P. L. Lehman, S. B. Yao. Efficient locking for concurrent operations on b-trees. ACM TODS, 6(4):650--670, 1981. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Y. Li, B. He, J. Yang, Q. Luo, and K. Yi. Tree indexing on solid state drives. PVLDB, 3(1):1195--1206, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Micron. RealSSD P300. http://www.micron.com/getdocument/?documentId=5557.Google ScholarGoogle Scholar
  18. C. Mohan, D. J. Haderle, B. G. Lindsay, H. Pirahesh and P. M. Schwarz. ARIES: a transaction recovery method supporting fine-granularity locking and partial rollbacks using write-ahead logging. ACM TODS, 17(1):94--162, 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. G.-J. Na, S.-W. Lee, and B. Moon. Dynamic in-page logging for flash-aware b-tree index. In CIKM, pages 1485--1488, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Ocz. Vertex2. http://www.ocztechnology.com/res/manuals/OCZ_Agility2_Product_sheet_3.pdf.Google ScholarGoogle Scholar
  21. S. Y. Park, E. Seo, J. Y. Shin, S. Maeng and J. Lee. Exploiting internal parallelism of flash-based SSDs. Computer Architecture Letters, 9(1):9--12, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Transaction Processing Performance Council. TPC benchmark C, standard specification version 5.Google ScholarGoogle Scholar
  23. C.-H. Wu, T.-W. Kuo, and L.-P. Chang. An efficient b-tree layer implementation for flash-memory storage systems. ACM Trans. Embedded Comput. Syst., 6(3), 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. B+-tree index optimization by exploiting internal parallelism of flash-based solid state drives

      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

      • Published in

        cover image Proceedings of the VLDB Endowment
        Proceedings of the VLDB Endowment  Volume 5, Issue 4
        December 2011
        120 pages

        Publisher

        VLDB Endowment

        Publication History

        • Published: 1 December 2011
        Published in pvldb Volume 5, Issue 4

        Qualifiers

        • research-article

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader