Deletion without rebalancing in multiway search trees

Siddhartha Sen, Robert E. Tarjan
2014 ACM Transactions on Database Systems  
Many database systems that use a B + tree as the underlying data structure do not do rebalancing on deletion. This means that a bad sequence of deletions can create a very unbalanced tree. Yet such databases perform well in practice. Avoidance of rebalancing on deletion has been justified empirically and by average-case analysis, but to our knowledge no worst-case analysis has been done. We do such an analysis. We show that the tree height remains logarithmic in the number of insertions,
more » ... dent of the number of deletions. Furthermore the amortized time for an insertion or deletion, excluding the search time, is O(1), and nodes are modified by insertions and deletions with a frequency that is exponentially small in their height. The latter results do not hold for standard B + trees. By adding periodic rebuilding of the tree, we obtain a data structure that is theoretically superior to standard B + trees in many ways. We conclude that rebalancing on deletion can be considered harmful.
doi:10.1145/2540068 fatcat:mrmcpox42bdvzaficjcbq3gyly