The input/output complexity of sorting and related problems
Communications of the ACM
Acta Informatica
Utilization of B-trees with inserts, deletes and modifies
PODS '89 Proceedings of the eighth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
ARIES/IM: an efficient and high concurrency index management method using write-ahead logging
SIGMOD '92 Proceedings of the 1992 ACM SIGMOD international conference on Management of data
B-trees with inserts and deletes: why free-at-empty is better than merge-at-half
PODS '89 Selected papers of the eighth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Implementing deletion in B+-trees
ACM SIGMOD Record
ACM Computing Surveys (CSUR)
Transaction Processing: Concepts and Techniques
Transaction Processing: Concepts and Techniques
Balanced Search Trees Made Simple
WADS '93 Proceedings of the Third Workshop on Algorithms and Data Structures
Proceedings of the 5th GI-Conference on Theoretical Computer Science
ATEC '99 Proceedings of the annual conference on USENIX Annual Technical Conference
A dichromatic framework for balanced trees
SFCS '78 Proceedings of the 19th Annual Symposium on Foundations of Computer Science
WADS '09 Proceedings of the 11th International Symposium on Algorithms and Data Structures
Deletion without Rebalancing in Multiway Search Trees
ISAAC '09 Proceedings of the 20th International Symposium on Algorithms and Computation
Binary B-trees for virtual memory
SIGFIDET '71 Proceedings of the 1971 ACM SIGFIDET (now SIGMOD) Workshop on Data Description, Access and Control
Deletion without rebalancing in balanced binary trees
SODA '10 Proceedings of the twenty-first annual ACM-SIAM symposium on Discrete Algorithms
Hi-index | 0.00 |
Some database systems that use a form of B-tree for 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, independent 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. Our results suggest that rebalancing on deletion not only is unnecessary but may be harmful.