The theory of database concurrency control
The theory of database concurrency control
Concurrent operations on B*-trees with overtaking
Journal of Computer and System Sciences
Concurrency control and recovery in database systems
Concurrency control and recovery in database systems
Operation specific locking in B-trees
PODS '87 Proceedings of the sixth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Concurrency control in database structures with relaxed balance
PODS '87 Proceedings of the sixth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Concurrent use of B-trees with variable-length entries
ACM SIGMOD Record
Concurrency control of nested transactions accessing B-trees
PODS '89 Proceedings of the eighth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Performance of B-tree concurrency control algorithms
SIGMOD '91 Proceedings of the 1991 ACM SIGMOD international conference on Management of data
ACM Transactions on Database Systems (TODS)
MLR: a recovery method for multi-level systems
SIGMOD '92 Proceedings of the 1992 ACM SIGMOD international conference on Management of data
Access method concurrency with recovery
SIGMOD '92 Proceedings of the 1992 ACM SIGMOD international conference on Management of data
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
Concurrency control and recovery methods for B+-tree indexes: ARIES/KVL and ARIES/IM
Performance of concurrency control mechanisms in centralized database systems
Concurrency and recovery in generalized search trees
SIGMOD '97 Proceedings of the 1997 ACM SIGMOD international conference on Management of data
SAC '95 Proceedings of the 1995 ACM symposium on Applied computing
Efficient locking for concurrent operations on B-trees
ACM Transactions on Database Systems (TODS)
A symmetric concurrent B-tree algorithm
ACM '86 Proceedings of 1986 ACM Fall joint computer conference
Transaction Processing: Concepts and Techniques
Transaction Processing: Concepts and Techniques
Performance of B+ tree concurrency control algorithms
The VLDB Journal — The International Journal on Very Large Data Bases
An Index Implementation Supporting Fast Recovery for the POSTGRES Storage System
Proceedings of the Eighth International Conference on Data Engineering
VLDB '90 Proceedings of the 16th International Conference on Very Large Data Bases
New Concurrency Control Algorithms for Accessing and Compacting B-Trees
VLDB '94 Proceedings of the 20th International Conference on Very Large Data Bases
Index Concurrency Control in Firm Real-Time Database Systems
VLDB '95 Proceedings of the 21th International Conference on Very Large Data Bases
View Serializable Updates of Concurrent Index Structures
DBPL '01 Revised Papers from the 8th International Workshop on Database Programming Languages
Concurrency and recovery for index trees
The VLDB Journal — The International Journal on Very Large Data Bases
B-tree concurrency control and recovery in page-server database systems
ACM Transactions on Database Systems (TODS)
Tlink-tree: main memory index structure with concurrency control and recovery
ACST'07 Proceedings of the third conference on IASTED International Conference: Advances in Computer Science and Technology
CLAM: concurrent location management for moving objects
Proceedings of the 15th annual ACM international symposium on Advances in geographic information systems
EDBT '08 Proceedings of the 11th international conference on Extending database technology: Advances in database technology
Concurrency control and recovery for multiversion database structures
Proceedings of the 2nd PhD workshop on Information and knowledge management
Transactions on the multiversion B+-tree
Proceedings of the 12th International Conference on Extending Database Technology: Advances in Database Technology
Concurrent updating transactions on versioned data
IDEAS '09 Proceedings of the 2009 International Database Engineering & Applications Symposium
A survey of B-tree locking techniques
ACM Transactions on Database Systems (TODS)
Index vs. navigation in XPath evaluation
XSym'06 Proceedings of the 4th international conference on Database and XML Technologies
Foundations and Trends in Databases
Reduced split/merge propagation in a modified B-link tree design
Journal of Computational Methods in Sciences and Engineering
ACM Transactions on Database Systems (TODS)
Hi-index | 0.00 |
In this paper we present new concurrent and recoverable B-link-tree algorithms. Unlike previous algorithms, ours maintain the balance of the B-link tree at all times, so that a logarithmic time bound for a search or an update operation is guaranteed under arbitrary sequences of record insertions and deletions. A database transaction can contain any number of operations of the form “fetch the first (or next) matching record”, “insert a record”, or “delete a record”, where database records are identified by their primary keys. Repeatable-read-level isolation for transactions is guaranteed by key-range locking. The algorithms apply the write-ahead logging (WAL) protocol and the steal and no-force buffering policies for index and data pages. Record inserts and deletes on leaf pages of a B-link tree are logged using physiological redo-undo log records. Each structure modification such as a page split or merge is made an atomic action by keeping the pages involved in the modification latched for the (short) duration of the modification and the logging of that modification; at most two B-link-tree pages are kept X-latched at a time. Each structure modification brings the B-link tree into a structurally consistent and balanced state whenever the tree was structurally consistent and balanced initially. Each structure modification is logged using a single physiological redo-only log record. Thus, a structure modification will never be undone even if the transaction that gave rise to it eventually aborts. In restart recovery, the redo pass of our ARIES-based recovery protocol will always produce a structurally consistent and balanced B-link tree, on which the database updates by backward-rolling transactions can always be undone logically, when a physical (page-oriented) undo is no longer possible.