Skip to main content
Top
Published in: International Journal of Parallel Programming 1/2016

01-02-2016

Efficient Buffer Management for Tree Indexes on Solid State Drives

Authors: Chengcheng Yang, Peiquan Jin, Lihua Yue, Puyuan Yang

Published in: International Journal of Parallel Programming | Issue 1/2016

Log in

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

Recently, with the widely use of flash memory based solid state drives (SSDs), a lot of studies have been conducted on SSD-based data management, such as index structures, query processing, and buffer management schemes. This paper focuses on buffer schemes for SSD-based database systems. However, differing from previous studies, we concentrate on buffer schemes for tree indexes on SSDs. This work is motivated by the observation that access patterns on index pages are much different from those on data pages. Generally, in a typical tree index, e.g., B+-tree, the root and internal nodes have higher read frequencies than leaf nodes have. However, traditional SSD-oriented buffering methods do not consider this special feature of indexes, and thus is not efficient when used as index buffer management schemes. In this paper, we present a new buffering scheme for tree indexes on SSDs that is named Clean-First and Dirty-Redundant-Write (CFDRW) scheme. The contributions of CFDRW are manifold. First, it assigns priorities to index pages to reflect the differences of access patterns of the nodes in a tree index. Second, it uses priority and recency to detect the hotness of index pages and proposes a new replacement algorithm based on priority and recency of the buffered index pages. Third, it exploits the internal parallelism of SSDs and proposes to write out buffer pages in a coarse granularity, i.e., to write out several pages using one physical I/O operation. We compare our proposal on two commodity SSDs with many previous methods including LRU, LIRS, and six flash-memory-based buffering schemes, by using synthetic and real workloads. The results show that our proposal outperforms the competitors under all workloads and SSDs in terms of various metrics including hit ratio, read count, write count, and elapsed time.

Dont have a licence yet? Then find out more about our products and how to get one now:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Literature
4.
go back to reference Agrawal, N., Prabhakaran, V., Wobber, T., Davis, J.D., Manasse, M.S., Panigrahy, R.: Design Tradeoffs for SSD Performance. In: USENIX Annual Technical Conference, pp. 57–70 (2008) Agrawal, N., Prabhakaran, V., Wobber, T., Davis, J.D., Manasse, M.S., Panigrahy, R.: Design Tradeoffs for SSD Performance. In: USENIX Annual Technical Conference, pp. 57–70 (2008)
5.
go back to reference Graefe, G.: Write-optimized b-trees. In: Proceedings of the Thirtieth international conference on Very large data bases, vol. 30, pp. 672–683. VLDB Endowment (2004) Graefe, G.: Write-optimized b-trees. In: Proceedings of the Thirtieth international conference on Very large data bases, vol. 30, pp. 672–683. VLDB Endowment (2004)
6.
go back to reference Jiang, S., Zhang, X.: LIRS: an efficient low inter-reference recency set replacement policy to improve buffer cache performance. ACM SIGMETRICS Perform. Eval. Rev. 30(1), 31–42 (2002)CrossRef Jiang, S., Zhang, X.: LIRS: an efficient low inter-reference recency set replacement policy to improve buffer cache performance. ACM SIGMETRICS Perform. Eval. Rev. 30(1), 31–42 (2002)CrossRef
7.
go back to reference Jin, P., Ou, Y., Härder, T., Li, Z.: AD-LRU: an efficient buffer replacement algorithm for flash-based databases. Data Knowl. Eng. 72, 83–102 (2012)CrossRef Jin, P., Ou, Y., Härder, T., Li, Z.: AD-LRU: an efficient buffer replacement algorithm for flash-based databases. Data Knowl. Eng. 72, 83–102 (2012)CrossRef
8.
go back to reference Jung, H., Shim, H., Park, S., Kang, S., Cha, J.: LRU-WSR: integration of LRU and writes sequence reordering for flash memory. IEEE Trans. Consum. Electron. 54(3), 1215–1223 (2008)CrossRef Jung, H., Shim, H., Park, S., Kang, S., Cha, J.: LRU-WSR: integration of LRU and writes sequence reordering for flash memory. IEEE Trans. Consum. Electron. 54(3), 1215–1223 (2008)CrossRef
9.
go back to reference Jung, H., Yoon, K., Shim, H., Park, S., Kang, S., Cha, J.: LIRS-WSR: Integration of LIRS and writes sequence reordering for flash memory. In: Computational Science and Its Applications-ICCSA 2007, pp. 224–237. Springer, Berlin (2007) Jung, H., Yoon, K., Shim, H., Park, S., Kang, S., Cha, J.: LIRS-WSR: Integration of LIRS and writes sequence reordering for flash memory. In: Computational Science and Its Applications-ICCSA 2007, pp. 224–237. Springer, Berlin (2007)
10.
go back to reference Lee, H.S., Lee, D.H.: An efficient index buffer management scheme for implementing a B-tree on NAND flash memory. Data Knowl. Eng. 69(9), 901–916 (2010)CrossRef Lee, H.S., Lee, D.H.: An efficient index buffer management scheme for implementing a B-tree on NAND flash memory. Data Knowl. Eng. 69(9), 901–916 (2010)CrossRef
11.
go back to reference Li, Z., Jin, P., Su, X., Cui, K., Yue, L.: CCF-LRU: a new buffer replacement algorithm for flash memory. IEEE Trans. Consum. Electron. 55(3), 1351–1359 (2009)CrossRef Li, Z., Jin, P., Su, X., Cui, K., Yue, L.: CCF-LRU: a new buffer replacement algorithm for flash memory. IEEE Trans. Consum. Electron. 55(3), 1351–1359 (2009)CrossRef
12.
go back to reference Lv, Y., Cui, B., He, B., Chen, X.: Operation-aware buffer management in flash-based systems. In: Proceedings of the 2011 ACM SIGMOD International Conference on Management of data, pp. 13–24. ACM, New York (2011) Lv, Y., Cui, B., He, B., Chen, X.: Operation-aware buffer management in flash-based systems. In: Proceedings of the 2011 ACM SIGMOD International Conference on Management of data, pp. 13–24. ACM, New York (2011)
13.
go back to reference Nath, S., Kansal, A.: FlashDB: dynamic self-tuning database for NAND flash. In: Proceedings of the 6th International Conference on Information Processing in Sensor Networks. pp. 410–419. ACM, New York (2007) Nath, S., Kansal, A.: FlashDB: dynamic self-tuning database for NAND flash. In: Proceedings of the 6th International Conference on Information Processing in Sensor Networks. pp. 410–419. ACM, New York (2007)
14.
go back to reference On, S.T., Hu, H., Li, Y., Xu, J.: Lazy-update b+-tree for flash devices. In: Proceeding of MDM, pp. 323–328 (2009) On, S.T., Hu, H., Li, Y., Xu, J.: Lazy-update b+-tree for flash devices. In: Proceeding of MDM, pp. 323–328 (2009)
15.
go back to reference Ou, Y., Härder, T.: Clean first or dirty first? A cost-aware self-adaptive buffer replacement policy. In: Proceedings of the Fourteenth International Database Engineering and Applications Symposium, pp. 7–14. ACM, New York (2010) Ou, Y., Härder, T.: Clean first or dirty first? A cost-aware self-adaptive buffer replacement policy. In: Proceedings of the Fourteenth International Database Engineering and Applications Symposium, pp. 7–14. ACM, New York (2010)
16.
go back to reference Ou, Y., Härder, T., Jin, P.: CFDC: a flash-aware replacement policy for database buffer management. In: Proceedings of the Fifth International Workshop on Data Management on New Hardware, pp. 15–20. ACM, New York (2009) Ou, Y., Härder, T., Jin, P.: CFDC: a flash-aware replacement policy for database buffer management. In: Proceedings of the Fifth International Workshop on Data Management on New Hardware, pp. 15–20. ACM, New York (2009)
17.
go back to reference Park, S.Y., Jung, D., Kang, J.U., Kim, J.S., Lee, J.: CFLRU: a replacement algorithm for flash memory. In: Proceedings of the 2006 International Conference on Compilers, Architecture and Synthesis for Embedded Systems, pp. 234–241. ACM, New York (2006) Park, S.Y., Jung, D., Kang, J.U., Kim, J.S., Lee, J.: CFLRU: a replacement algorithm for flash memory. In: Proceedings of the 2006 International Conference on Compilers, Architecture and Synthesis for Embedded Systems, pp. 234–241. ACM, New York (2006)
18.
go back to reference Roh, H., Kim, W.C., Kim, S., Park, S.: A B-tree index extension to enhance response time and the life cycle of flash memory. Inf. Sci. 179(18), 3136–3161 (2009)MathSciNetCrossRef Roh, H., Kim, W.C., Kim, S., Park, S.: A B-tree index extension to enhance response time and the life cycle of flash memory. Inf. Sci. 179(18), 3136–3161 (2009)MathSciNetCrossRef
19.
go back to reference Roh, H., Park, S., Kim, S., Shin, M., Lee, S.W.: B+-tree index optimization by exploiting internal parallelism of flash-based solid state drives. Proc. VLDB Endow. 5(4), 286–297 (2011)CrossRef Roh, H., Park, S., Kim, S., Shin, M., Lee, S.W.: B+-tree index optimization by exploiting internal parallelism of flash-based solid state drives. Proc. VLDB Endow. 5(4), 286–297 (2011)CrossRef
20.
go back to reference Wu, C.H., Chang, L.P., Kuo, T.W.: An efficient R-tree implementation over flash-memory storage systems. In: Proceedings of the 11th ACM International Symposium on Advances in Geographic Information Systems, pp. 17–24. ACM, New York (2003) Wu, C.H., Chang, L.P., Kuo, T.W.: An efficient R-tree implementation over flash-memory storage systems. In: Proceedings of the 11th ACM International Symposium on Advances in Geographic Information Systems, pp. 17–24. ACM, New York (2003)
21.
go back to reference Wu, C.H., Kuo, T.W., Chang, L.P.: An efficient B-tree layer implementation for flash-memory storage systems. ACM Trans. Embed. Comput. Syst. (TECS) 6(3), 19 (2007)CrossRef Wu, C.H., Kuo, T.W., Chang, L.P.: An efficient B-tree layer implementation for flash-memory storage systems. ACM Trans. Embed. Comput. Syst. (TECS) 6(3), 19 (2007)CrossRef
Metadata
Title
Efficient Buffer Management for Tree Indexes on Solid State Drives
Authors
Chengcheng Yang
Peiquan Jin
Lihua Yue
Puyuan Yang
Publication date
01-02-2016
Publisher
Springer US
Published in
International Journal of Parallel Programming / Issue 1/2016
Print ISSN: 0885-7458
Electronic ISSN: 1573-7640
DOI
https://doi.org/10.1007/s10766-014-0340-7

Other articles of this Issue 1/2016

International Journal of Parallel Programming 1/2016 Go to the issue

Premium Partner