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.
Similar content being viewed by others
References
Abramowitz, M., Stegun, I.: Handbook of Mathematical Functions. New York: Dover 1972
Arnow, D., y Tenenbaum, A.: An Empirical Comparison of B-Trees, Compact B-Trees and Multiway Trees. ACM SIGMOD 14, 33–46 (1984)
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
Bayer, R.: Binary B-Trees for Virtual Memory. Proceedings of the 1971 ACM SIGFIDET Workshop, San Diego 1971, pp. 219–235
Bayer, R., McCreight, E.: Organization and Maintenance of Large Ordered Indexes. Acta Inf. 1, 173–189 (1972)
Bayer, R., Unterauer, K.: Prefix B-Trees. ACM Trans. Database Syst. 2, 11–26 (1977)
Brown, M.: Some Observations on Random 2–3 Trees. Inf. Process. Lett. 9, 57–59 (1979)
Clausing, A.: Kantorovich-Type Inequalities. The Am. Math. Monthly 89, 314–330 (1982)
Comer, D.: The Ubiquitous B-Tree. Comput. Surv. 11, 121–137 (1979)
Culik, K., Ottmann, T., Wood, D.: Dense Multiway Trees. ACM Trans. Database Syst. 6, 486–512 (1982)
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)
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
Gupta, G., Srinivasan, B.: Approximate Storage Utilization of B-Trees. Inf. Proc. Lett. 22, 243–246 (1986)
Jensen, L.W.V.: Sur les Fonctions Convexes et les Inegalites Entre les Valeurs Moyannes. Acta Math. 30, 175–193 (1906)
Knuth, D.E.: The Art of Computer Programming, Vol. 1: Fundamental Algorithms, 2nd ed. Reading, Mass.: Addison-Wesley 1973
Knuth, D.E.: The Art of Computer Programming, Vol. 3: Sorting and Searching, 1st ed. Reading, Mass.: Addison-Wesley 1973
Kuspert, K.: Storage Utilization in B*-Trees with a Generalized Overflow Technique. Acta Inf. 19, 35–56 (1983)
Leung, C.: Approximate storage utilisation of B-Trees: A simple derivation and generalizations. Inf. Proc. Lett. 19, 199–201 (1984)
McCreight, E.: Pagination of B*-Trees with Variable-Length Records. Commun. ACM 20, 670–674 (1977)
Nakamura, T., Mizoguchi, T.: An Analysis of Storage Utilization Factor in Block Split Data Structuring Scheme. Proceedings VLDB, Berlin, 4, 489–495 (1978)
Quitzow, K., y Klopprogge, M.: Space Utilization and Access Path Length in B-Trees. Inf. Syst. 5, 7–16 (1980)
Wright, W.: Some Average Performance Measures for the B-Tree. Acta Inf. 21, 541–557 (1985)
Yao, A.: On Random 2–3 Trees. Acta Inf. 9, 159–170 (1978)
Ziviani, N., Olivié, H., y Gonnet, G.: The Analysis of an Improved Symmetric Binary B-Tree Algorithm. Comput. J. 28, 417–425 (1985)
Author information
Authors and Affiliations
Rights 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
Received:
Issue Date:
DOI: https://doi.org/10.1007/BF00289146