Expected behaviour of B+-trees under random insertions

SummaryFringe 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.

[1]  Donald E. Knuth,et al.  The art of computer programming: V.1.: Fundamental algorithms , 1997 .

[2]  Kurt Mehlhorn,et al.  The Theory of Fringe Analysis and Its Application to 2-3 Trees and B-Trees , 1982, Inf. Control..

[3]  Klaus Küspert Storage utilization in B*-trees with a generalized overflow technique , 2004, Acta Informatica.

[4]  B. Srinivasan,et al.  Approximate Storage Utilization of B-Trees , 1986, Inf. Process. Lett..

[5]  Konrad H. Quitzow,et al.  Space utilization and access path length in B-trees , 1980, Inf. Syst..

[6]  Gaston H. Gonnet,et al.  The Analysis of an Inproved Symmetric Binary B-Tree Algorithm , 1985, Comput. J..

[7]  Achim Clausing Kantorovich-Type Inequalities , 1982 .

[8]  Douglas Comer,et al.  Ubiquitous B-Tree , 1979, CSUR.

[9]  Irene A. Stegun,et al.  Handbook of Mathematical Functions. , 1966 .

[10]  Clement H. C. Leung Approximate Storage Utilisation of B-Trees: A Simple Derivation and Generalisations , 1984, Inf. Process. Lett..

[11]  J. Jensen Sur les fonctions convexes et les inégalités entre les valeurs moyennes , 1906 .

[12]  Tetsuo Mizoguchi,et al.  An Analysis of Storage Utilization Factor in Block Split Data Structuring Scheme , 1978, VLDB.

[13]  Andrew Chi-Chih Yao,et al.  On random 2–3 trees , 1978, Acta Informatica.

[14]  Donald E. Knuth,et al.  The Art of Computer Programming, Vol. 3: Sorting and Searching , 1974 .

[15]  Rudolf Bayer,et al.  Binary B-trees for virtual memory , 1971, SIGFIDET '71.

[16]  Donald Ervin Knuth,et al.  The Art of Computer Programming , 1968 .

[17]  Rudolf Bayer,et al.  Organization and maintenance of large ordered indexes , 1972, Acta Informatica.

[18]  Aaron M. Tenenbaum,et al.  An empirical comparison of B-trees, compact B-trees and multiway trees , 1984, SIGMOD '84.

[19]  Rudolf Bayer,et al.  Prefix B-trees , 1977, TODS.

[20]  William E. Wright,et al.  Some average performance measures for the B-tree , 1985, Acta Informatica.

[21]  Mark R. Brown Some Observations on Random 2-3 Trees , 1979, Inf. Process. Lett..

[22]  Edward M. McCreight,et al.  Pagination of B*-trees with variable-length records , 1977, CACM.

[23]  Derick Wood,et al.  Dense multiway trees , 1981, TODS.