Skip to main content
Log in

Expected behaviour of B+-trees under random insertions

  • Published:
Acta Informatica Aims and scope Submit manuscript

Summary

Fringe analysis is used to study the behaviour of B+-trees (B-trees where all the records are stored in the leaves) under random insertions. We obtain bounds for the expected memory utilization and the expected number of accesses to secondary memory per insertion of trees built using the usual insertion algorithm, the B* overflow handling technique, and other techniques derived from the latter. Several other performance measures are also derived, such as bounds for the number of index nodes, the expected height, the expected number of splits per insertion, and the probabilities of 0, 1 and 2 or more splits per insertion. Special emphasis is placed on 2–3 trees. A technique for concurrency in B+-trees is also analyzed.

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. Abramowitz, M., Stegun, I.: Handbook of Mathematical Functions. New York: Dover 1972

    Google Scholar 

  2. Arnow, D., y Tenenbaum, A.: An Empirical Comparison of B-Trees, Compact B-Trees and Multiway Trees. ACM SIGMOD 14, 33–46 (1984)

    Google Scholar 

  3. Baeza-Yates, R., Poblete, P.: Reduction of the Transition Matrix of a Fringe Analysis and Its Application to the Analysis of 2–3 Trees. 5th International Conference in Computer Science, Santiago, Chile 1985, pp. 56–82

  4. Bayer, R.: Binary B-Trees for Virtual Memory. Proceedings of the 1971 ACM SIGFIDET Workshop, San Diego 1971, pp. 219–235

  5. Bayer, R., McCreight, E.: Organization and Maintenance of Large Ordered Indexes. Acta Inf. 1, 173–189 (1972)

    Google Scholar 

  6. Bayer, R., Unterauer, K.: Prefix B-Trees. ACM Trans. Database Syst. 2, 11–26 (1977)

    Google Scholar 

  7. Brown, M.: Some Observations on Random 2–3 Trees. Inf. Process. Lett. 9, 57–59 (1979)

    Google Scholar 

  8. Clausing, A.: Kantorovich-Type Inequalities. The Am. Math. Monthly 89, 314–330 (1982)

    Google Scholar 

  9. Comer, D.: The Ubiquitous B-Tree. Comput. Surv. 11, 121–137 (1979)

    Google Scholar 

  10. Culik, K., Ottmann, T., Wood, D.: Dense Multiway Trees. ACM Trans. Database Syst. 6, 486–512 (1982)

    Google Scholar 

  11. Eisenbarth, B., Ziviani, N., Gonnet, G.H., Mehlhorn K., Wood, D.: The Theory of Fringe Analysis and Its Application to 2–3 Trees and B-Trees. Inf. Control 55, 125–174 (1982)

    Google Scholar 

  12. Geddes, K.O., Gonnet, G.H., Char, B.W.: MAPLE User's Manual, 2nd Ed. Report CS-82-40, Department of Computer Science, University of Waterloo, Waterloo, Canada, 1982

    Google Scholar 

  13. Gupta, G., Srinivasan, B.: Approximate Storage Utilization of B-Trees. Inf. Proc. Lett. 22, 243–246 (1986)

    Google Scholar 

  14. Jensen, L.W.V.: Sur les Fonctions Convexes et les Inegalites Entre les Valeurs Moyannes. Acta Math. 30, 175–193 (1906)

    Google Scholar 

  15. Knuth, D.E.: The Art of Computer Programming, Vol. 1: Fundamental Algorithms, 2nd ed. Reading, Mass.: Addison-Wesley 1973

    Google Scholar 

  16. Knuth, D.E.: The Art of Computer Programming, Vol. 3: Sorting and Searching, 1st ed. Reading, Mass.: Addison-Wesley 1973

    Google Scholar 

  17. Kuspert, K.: Storage Utilization in B*-Trees with a Generalized Overflow Technique. Acta Inf. 19, 35–56 (1983)

    Google Scholar 

  18. Leung, C.: Approximate storage utilisation of B-Trees: A simple derivation and generalizations. Inf. Proc. Lett. 19, 199–201 (1984)

    Google Scholar 

  19. McCreight, E.: Pagination of B*-Trees with Variable-Length Records. Commun. ACM 20, 670–674 (1977)

    Google Scholar 

  20. Nakamura, T., Mizoguchi, T.: An Analysis of Storage Utilization Factor in Block Split Data Structuring Scheme. Proceedings VLDB, Berlin, 4, 489–495 (1978)

    Google Scholar 

  21. Quitzow, K., y Klopprogge, M.: Space Utilization and Access Path Length in B-Trees. Inf. Syst. 5, 7–16 (1980)

    Google Scholar 

  22. Wright, W.: Some Average Performance Measures for the B-Tree. Acta Inf. 21, 541–557 (1985)

    Google Scholar 

  23. Yao, A.: On Random 2–3 Trees. Acta Inf. 9, 159–170 (1978)

    Google Scholar 

  24. Ziviani, N., Olivié, H., y Gonnet, G.: The Analysis of an Improved Symmetric Binary B-Tree Algorithm. Comput. J. 28, 417–425 (1985)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Baeza-Yates, R.A. Expected behaviour of B+-trees under random insertions. Acta Informatica 26, 439–471 (1989). https://doi.org/10.1007/BF00289146

Download citation

  • Received:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF00289146

Keywords

Navigation