Indexing alternatives for multiversion locking

  • Paul M. Bober
  • Michael J. Carey
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 779)


In this paper, we present several options for extending single-version indexing schemes for use with multiversion two-phase locking. The proposed options are orthogonal to the underlying indexing structure (e.g., hashing or B+ trees). The options differ in where they place references to individual versions; this version selection information is placed either with the data or in the leaf entries of one or more indices. We also briefly summarize the results of a performance study showing that storing version selection information with the data is usually the best option because it keeps indices smaller, thus enabling a larger fraction of the indices to remain cached in the buffer pool.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Agrawal, D., A. Bernstein, P. Gupta and S. Sengupta, “Distributed Multiversion Optimistic Concurrency Control with Reduced Rollback,” Journal of Distributed Computing, Springer-Verlag, 2(1), January 1987.Google Scholar
  2. 2.
    Agrawal, D. and S. Sengupta, “Modular Synchronization in Multiversion Databases: Version Control and Concurrency Control,” Proc. 1989 SIGMOD Conference, 1989.Google Scholar
  3. 3.
    Bayer, R. and M. Schkolnick, “Concurrency of Operations on B-trees,” Acta Informatica, September 1977.Google Scholar
  4. 4.
    Bayer, R. and E. M. McCreight, “Organization and Maintenance of Large Ordered Indicies,” Acta Informatica, Volume 1, Number 3, 1972.Google Scholar
  5. 5.
    Bayer, et al., “Parallelism and Recovery in Database Systems,” ACM Trans. on Database Sys., 5(2), June 1980.Google Scholar
  6. 6.
    Bober, P. and M. Carey, “On Mixing Queries and Transactions via Multiversion Locking,” Proc. of the Eighth IEEE Data Engineering Conf., 1992.Google Scholar
  7. 7.
    Bober, P. and M. Carey, “Multiversion Query Locking,” Proc. of the Eighteenth International Conference on Very Large Databases, 1992.Google Scholar
  8. 8.
    Bober, P. and M. Carey, Indexing Alternatives for Multiversion Locking, Tech. Report #1184, University of Wisconsin — Madison, November 1993.Google Scholar
  9. 9.
    Carey, M. J., Modeling and Evaluation of Database Concurrency Control Algorithms, Ph.D. Thesis, Comp. Sci., U. of California, Berkeley, 1983.Google Scholar
  10. 10.
    Chan, A., S. Fox, W. Lin, A. Nori, and Ries, D., “The Implementation of an Integrated Concurrency Control and Recovery Scheme,” Proc. 1982 ACM SIGMOD Conf., 1982.Google Scholar
  11. 11.
    Chan, A., and R. Gray, “Implementing Distributed Read-Only Transactions,” IEEE Trans. on Software Eng., SE-11(2), Feb 1985.Google Scholar
  12. 12.
    DuBourdieu, D., “Implementation of Distributed Transactions,” Proc. 6th Berkeley Workshop on Distributed Data Management and Computer Networks, 1982.Google Scholar
  13. 13.
    Easton, M., “Key-Sequence Data Sets on Indelible Storage,” IBM Journal of Research and Development, May 1986.Google Scholar
  14. 14.
    Eswaran, K., J. Gray, R. Lorie, I. Traiger, “The Notions of Consistency and Predicate Locks in a Database System,” CACM 19(11), 1976.Google Scholar
  15. 15.
    Gray, J., “Notes on Database Operating Systems,” in Operating Systems: An Advanced Course, Springer-Verlag, 1979.Google Scholar
  16. 16.
    Joshi, Ashok, Personal Communication.Google Scholar
  17. 17.
    Kolovson, C. and M. Stonebraker, “Indexing Techniques for Multiversion Databases,” Proc. of the Fifth IEEE Int'l Conf. on Data Engineering, 1989.Google Scholar
  18. 18.
    Lai, M. and K. Wilkinson, “Distributed Transaction Management in Jasmin,” Proc. of 10th International Conference on Very Large Database Systems, 1984.Google Scholar
  19. 19.
    Lomet, D. and B. Salzberg, “Access Methods for Multiversion Data,” Proc. 1989 ACM SIGMOD Conf., 1989.Google Scholar
  20. 20.
    Lehman, P. and S. Yao, “Efficient Locking for Concurrent Operations on B-trees,” ACM Transactions on Database Systems, 6(4), December 1981.Google Scholar
  21. 21.
    Mohan, C., H. Pirahesh, and R. Lorie, “Efficient and Flexible Methods for Transient Versioning of Records to Avoid Locking by Read-Only Transactions,” Proc. 1992 ACM SIGMOD Conf., 1992.Google Scholar
  22. 22.
    Raghavan, A., and T.K. Rengarajan, “Database Availability for Transaction Processing,” Digital Technical Journal 3(1), Winter 1991.Google Scholar
  23. 23.
    Reed, D., “Implementing Atomic Actions on Decentralized Data,” ACM Transactions on Computer Systems, 1(1), February 1983.Google Scholar
  24. 24.
    Robinson, J., Design of Concurrency Controls for Transaction Processing Systems, Ph.D. Thesis, Comp. Sci. Tech. Rep. No. CMU-CS-82-114, 1982.Google Scholar
  25. 25.
    Silberschatz, A. “A Multi-Version Concurrency Control Scheme With No Rollbacks,” ACM-SIGACT-SIGOPS Symposium on Principles of Distributed Computing, August 1982.Google Scholar
  26. 26.
    Stearns, R. and D. Rosenkrantz, “Distributed Database Concurrency Control Using Before-Values,” Proc. of the 1981 ACM SIGMOD Conf., 1981.Google Scholar
  27. 27.
    Stonebraker, M., “The Design of the Postgres Storage System,” Proc. Thirteenth International Conference on Very Large Database Systems, 1987.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1994

Authors and Affiliations

  • Paul M. Bober
    • 1
  • Michael J. Carey
    • 1
  1. 1.Computer Sciences DepartmentUniversity of WisconsinMadisonUSA

Personalised recommendations