Skip to main content
Log in

Performance of B+ tree concurrency control algorithms

  • Published:
The VLDB Journal Aims and scope Submit manuscript

Abstract

A number of algorithms have been proposed to access B+-trees concurrently, but they are not well understood. In this article, we study the performance of various B+-tree concurrency control algorithms using a detailed simulation model of B+-tree operations in a centralized DBMS. Our study covers a wide range of data contention situations and resource conditions. In addition, based on the performance of the set of B+-tree concurrency control algorithms, which includes one new algorithm, we make projections regarding the performance of other algorithms in the literature. Our results indicate that algorithms with updaters that lock-couple using exclusive locks perform poorly as compared to those that permit more optimistic index descents. In particular, the B-link algorithms are seen to provide the most concurrency and the best overall performance. Finally, we demonstrate the need for a highly concurrent long-term lock holding strategy to obtain the full benefits of a highly concurrent algorithm for index operations.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
EUR 32.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or Ebook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Agrawal, R., Carey, M., and Livny, M., Concurrency control performance modeling: Alternatives and implications.ACM Transactions on Database Systems 12(4):609–664, 1987.

    Google Scholar 

  • Bayer, R. and McCreight, E. Organization and maintainance of large ordered indices.Acta Informatica, 1(3):173–189, 1972.

    Google Scholar 

  • Bayer, R. and Schkolnick, M. Concurrency of operations on B-trees.Acta Informatica, 9(1):1–21, 1977.

    Google Scholar 

  • Biliris, A. A model for the evaluation of coneurrency control algorithms on B-trees,Computer Science Technical Report, No. 85-015, Boston University, 1985.

  • Biliris, A. Operation specific locking in B-trees.Proceedings of the Sixth ACM Symposium on Principles of Database Systems, San Diego, California, 1987.

  • Carey, M. and Thompson, C. An efficient implementation of search trees on [lg N +1] processors.IEEE Transactions on Computer Systems, C-33(11):1038–1041, 1984.

    Google Scholar 

  • Chan, A., Fox, S., Lin, W., Nori, A., and Ries, D. The implementation of an integrated concurrency control and recovery scheme.Proceedings of the ACM SIGMOD Conference, Orlando, Florida, 1982.

  • Comer, D. The ubiquitous B-tree.ACM Computing Surveys, 11(4):121–137, 1979.

    Google Scholar 

  • Franaszek, P. and Robinson, J. Limitations of concurrency in transaction processing.ACM Transactions on Database Systems, 10(1):1–28, 1985.

    Google Scholar 

  • Goodman, N. and Shasha, D. Semantically-based concurrency control for search structures.Proceedings of the Fourth ACM Symposium on Principles of Database Systems, Portland, Oregon, 1985.

  • Gray, J., Notes on database operating systems. In:Operating Systems: An Advanced Course New York: Springer-Verlag, 1979.

    Google Scholar 

  • Guibas, L. and Sedgewick, R. A dichromatic framework for balanced trees.Proceedings of the Nineteenth Annual Symposium on Foundations of Computer Science, New York, 1978.

  • Johnson, T. and Shasha, D. Utilization of B-trees with inserts, deletes and searches.Proceedings of the Eighth ACM Symposium on Principles of Database Systems, Philadelphia, Pennsylvania, 1989.

  • Johnson, T. and Shasha, D. A framework for the performance analysis of concurrent B-tree algorithms.Proceedings of the Ninth ACM Symposium on Principles of Database Systems, Nashville, Tennessee, 1990.

  • Johnson, T. The performance of concurrent data structure algorithms. Ph.D. Thesis, New York University, May 1990.

  • Kersten, M. and Tebra, H. Application of an optimistic concurrency control method.Software-Practice and Experience, 14(2):153–168, 1984.

    Google Scholar 

  • Kung, H. and Lehman, P. A concurrent database manipulation problem: Binary search trees.ACM Transactions on Database Systems, 5(3):339–353, 1980.

    Google Scholar 

  • Kwong, Y. and Wood, D. A new method for concurrency in B-trees.IEEE Transactions on Software Engineering, 8(3):211–223, 1982.

    Google Scholar 

  • Lanin, V. and Shasha, D. A symmetric concurrent B-tree algorithm.Proceedings of the Fall Joint Computer Conference, Dallas, Texas, 1986.

  • Lausen, G. Integrated concurrency control in shared B-trees.Computing, 33(1):13–26, 1984.

    Google Scholar 

  • Lehman, P. and Yao, S. Efficient locking for concurrent operations on B-trees.ACM Transactions on Database Systems, 6(4):650–670, 1981.

    Google Scholar 

  • Livny, M.,DeNet User's Guide, Version 1.5 Computer Sciences Department, University of Wisconsin, Madison, Wisconsin 1990.

    Google Scholar 

  • Lomet, D. and Salzberg, B. Access method concurrency with recovery.Proceedings of the ACM SIGMOD Conference, San Diego, California, 1992.

  • Miller, R. and Snyder, L. Multiple access to B-trees.Proceedings of the Conference on Information Science and Systems, Johns Hopkins University, Baltimore, Maryland, 1978.

  • Mohan, C. ARIES/KVL: A key-value locking method for concurrency control of multiaction transactions operating on B-tree indexes.Proceedings of the Sixteenth International Conference on Very Large Data Bases, Brisbane, Australia, 1990.

  • Mohan, C. and Levine, F. ARIES/IM: An efficient and high concurrency index management method using write-ahead logging. IBM Research Report, RJ6846. IBM Almaden Research Center, August 1989.

  • Mohan, C. and Levine, F. ARIES/IM: An efficient and high concurrency index management method using write-ahead logging.Proceedings of the ACM SIGMOD Conference, San Diego, California, 1992.

  • Mond, Y. and Raz, Y. Concurrency control in B+-trees databases using preparatory operations.Proceedings of the Eleventh International Conference on Very Large Data Bases, Stockholm, Sweden, 1985.

  • Sagiv, Y. Concurrent operations on B*-trees with overtaking.Proceedings of the Fourth ACM Symposium on Principles of Database Systems, Portland, Oregon, 1985.

  • Samadi, B., B-trees in a System With Multiple Users.Information Processing Letters, 5(4):107–112, 1976.

    Google Scholar 

  • Shasha, D. Concurrent algorithms for search structures. Ph.D. Thesis, Aiken Computation Laboratory, Harvard University, 1984.

  • Shasha, D. What good are concurrent search structure algorithms for databases anyway?Database Engineering 8(4):84–90, 1985.

    Google Scholar 

  • Srinivasan, V. On-line processing in large-scale transaction systems. Ph.D. Thesis, Computer Science Department, University of Wisconsin-Madison, 1992.

  • Srinivasan, V. and Carey, M. Performance of B-tree concurrency control algorithms.Proceedings of the ACM SIGMOD Conference, Denver, Colorado, 1991.

  • Srinivasan, V. and Carey, M. Compensation-based on-line query processing.Proceedings of the ACM SIGMOD Conference, San Diego, California, 1992.

  • Tay, Y. A mean value performance model for locking in databases. Ph.D. Thesis, Computer Science Department, Harvard University, 1984.

  • Yao, A. On random 2–3 trees.Acta Informatica, 9(2):159–170, 1978.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Srinivasan, V., Carey, M.J. Performance of B+ tree concurrency control algorithms. VLDB Journal 2, 361–406 (1993). https://doi.org/10.1007/BF01263046

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF01263046

Key Words

Navigation