Efficient and flexible methods for transient versioning of records to avoid locking by read-only transactions
- 1 June 1992
- journal article
- Published by Association for Computing Machinery (ACM) in ACM SIGMOD Record
- Vol. 21 (2) , 124-133
- https://doi.org/10.1145/141484.130306
Abstract
We present efficient and flexible methods which permit read-only transactions that do not mind reading a possibly slightly old, but still consistent, version of the data base to execute without acquiring locks. This approach avoids the undesirable interferences between such queries and the typically shorter update transactions that cause unnecessary and costly delays. Indexed access by such queries is also supported, unlike by the earlier methods. Old versions of records are maintained only in a transient fashion. Our methods are characterized by their flexibility (number of versions maintained and the timing of version switches, supporting partial rollbacks, and different recovery and buffering methods) and their efficiency (logging, garbage collection, version selection, and incremental, record-level versioning). Distributed data base environments are also supported, including commit protocols with the read-only optimization. We also describe efficient methods for garbage collecting unneeded older versions.Keywords
This publication has 10 references indexed in Scilit:
- ARIES/IM: an efficient and high concurrency index management method using write-ahead loggingPublished by Association for Computing Machinery (ACM) ,1992
- ARIESACM Transactions on Database Systems, 1992
- Parallelism in relational data base systemsPublished by Association for Computing Machinery (ACM) ,1990
- Modular synchronization in multiversion databases: version control and concurrency controlPublished by Association for Computing Machinery (ACM) ,1989
- Distributed Version Management for Read-Only ActionsIEEE Transactions on Software Engineering, 1987
- Transaction management in the R* distributed database management systemACM Transactions on Database Systems, 1986
- The implementation of an integrated concurrency control and recovery schemePublished by Association for Computing Machinery (ACM) ,1982
- The Recovery Manager of the System R Database ManagerACM Computing Surveys, 1981
- Distributed database concurrency controls using before-valuesPublished by Association for Computing Machinery (ACM) ,1981
- Parallelism and recovery in database systemsACM Transactions on Database Systems, 1980