Skip to main content

B-Tree Locking

  • Reference work entry
  • First Online:
Encyclopedia of Database Systems
  • 40 Accesses

Synonyms

B-tree concurrency control; Crabbing; Key range locking; Key value locking; Latch coupling; Latching; Lock coupling; Row-level locking

Definition

B-tree locking controls concurrent searches and updates in B-trees. It separates transactions in order to protect the B-tree contents and it separates threads in order to protect the B-tree data structure. Nowadays, the latter is usually called latching rather than locking.

Historical Background

Bayer and Schkolnick [1] presented multiple locking (latching) protocols for B*-trees (all data records in the leaves, merely separator keys or “reference keys” in upper nodes) that combined high concurrency with deadlock avoidance. Their approach for insertion and deletion is based on deciding during a root-to-leaf traversal whether a node is “safe” from splitting (during an insertion) or merging (during a deletion), and on reserving appropriate locks (latches) for ancestors of unsafe nodes.

Lehman and Yao defined Blink-trees by relaxing...

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 4,499.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD 6,499.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Recommended Reading

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

    Article  MathSciNet  MATH  Google Scholar 

  2. Comer D. The ubiquitous B-tree. ACM Comput Surv. 1979;11(2):121–37.

    Article  MathSciNet  MATH  Google Scholar 

  3. Eliot J, Moss B. Open nested transactions: semantics and support. In: Proceedings of Workshop on Memory Performance Issues; 2006.

    Google Scholar 

  4. Graefe G. Hierarchical locking in B-tree indexes. In: The Conference for Database Systems for Business, Technology, and Web; 2007. p. 18–42.

    Google Scholar 

  5. Graefe G, Zwilling MJ. Transaction support for indexed views. In: Proceedings of ACM SIGMOD International Conference on Management of Data; 2004.

    Google Scholar 

  6. Gray J, Reuter A. Transaction processing: concepts and techniques. San Francisco: Morgan Kaufmann; 1993.

    MATH  Google Scholar 

  7. Jaluta I, Sippu S, Soisalon-Soininen E. Concurrency control and recovery for balanced B-link trees. VLDB J. 2005;14(2):257–77.

    Article  Google Scholar 

  8. Lehman PL, Yao SB. Efficient locking for concurrent operations on B-trees. ACM Trans Database Syst. 1981;6(4):650–70.

    Article  MATH  Google Scholar 

  9. Lomet DB. Key range locking strategies for improved concurrency. In: Proceedings of 19th International Conference on Very Large Data Bases; 1993. p. 655–64.

    Google Scholar 

  10. Mohan C. ARIES/KVL: a key-value locking method for concurrency control of multiaction transactions operating on B-tree indexes. In: Proceedings of 16th International Conference on Very Large Data Bases; 1990. p. 392–405.

    Google Scholar 

  11. Mohan C, Haderle DJ, Lindsay BG, Pirahesh H, Schwarz PM. ARIES: a transaction recovery method supporting fine-granularity locking and partial rollbacks using write-ahead logging. ACM Trans Database Syst. 1992;17(1):94–162.

    Article  Google Scholar 

  12. Ni Y, Menon V, Adl-Tabatabai A-R, Hosking AL, Hudson RL, Moss JEB, Saha B, Shpeisman T. Open nesting in software transactional memory. In: Proceedings of 12th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming; 2007. p. 68–78.

    Google Scholar 

  13. Srinivasan V, Carey M.J. Performance of B-tree concurrency algorithms. In: Proceedings of ACM SIGMOD International Conference on Management of Data; 1991. pp. 416–25.

    Google Scholar 

  14. Weikum G. Principles and realization strategies of multilevel transaction management. ACM Trans Database Syst. 1991;16(1):132–80.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Goetz Graefe .

Editor information

Editors and Affiliations

Section Editor information

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Science+Business Media, LLC, part of Springer Nature

About this entry

Check for updates. Verify currency and authenticity via CrossMark

Cite this entry

Graefe, G. (2018). B-Tree Locking. In: Liu, L., Özsu, M.T. (eds) Encyclopedia of Database Systems. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-8265-9_35

Download citation

Publish with us

Policies and ethics