Expert SQL Server Transactions and Locking

Concurrency Internals for SQL Server Practitioners

  • Dmitri Korotkevitch

Table of contents

  1. Front Matter
    Pages i-xix
  2. Dmitri Korotkevitch
    Pages 1-24
  3. Dmitri Korotkevitch
    Pages 25-46
  4. Dmitri Korotkevitch
    Pages 47-72
  5. Dmitri Korotkevitch
    Pages 73-107
  6. Dmitri Korotkevitch
    Pages 109-136
  7. Dmitri Korotkevitch
    Pages 137-157
  8. Dmitri Korotkevitch
    Pages 159-173
  9. Dmitri Korotkevitch
    Pages 175-189
  10. Dmitri Korotkevitch
    Pages 191-201
  11. Dmitri Korotkevitch
    Pages 203-211
  12. Dmitri Korotkevitch
    Pages 213-223
  13. Dmitri Korotkevitch
    Pages 225-267
  14. Dmitri Korotkevitch
    Pages 269-294
  15. Dmitri Korotkevitch
    Pages 295-311
  16. Back Matter
    Pages 313-320

About this book


Master SQL Server’s Concurrency Model so you can implement high-throughput systems that deliver transactional consistency to your application customers. This book explains how to troubleshoot and address blocking problems and deadlocks, and write code and design database schemas to minimize concurrency issues in the systems you develop.

SQL Server’s Concurrency Model is one of the least understood parts of the SQL Server Database Engine. Almost every SQL Server system experiences hard-to-explain concurrency and blocking issues, and it can be extremely confusing to solve those issues without a base of knowledge in the internals of the Engine. While confusing from the outside, the SQL Server Concurrency Model is based on several well-defined principles that are covered in this book.

Understanding the internals surrounding SQL Server’s Concurrency Model helps you build high-throughput systems in multi-user environments. This book guides you through the Concurrency Model and elaborates how SQL Server supports transactional consistency in the databases. The book covers all versions of SQL Server, including Microsoft Azure SQL Database, and it includes coverage of new technologies such as In-Memory OLTP and Columnstore Indexes.

What You'll Learn:
  • Know how transaction isolation levels affect locking behavior and concurrency
  • Troubleshoot and address blocking issues and deadlocks
  • Provide required data consistency while minimizing concurrency issues
  • Design efficient transaction strategies that lead to scalable code
  • Reduce concurrency problems through good schema design
  • Understand concurrency models for In-Memory OLTP and Columnstore Indexes
  • Reduce blocking during index maintenance, batch data load, and similar tasks


Locks Deadlocks Concurrency Transaction Isolation Isolation Levels Atomicity Blocking Lock Escalation Columnstore Indexes In-memory OLTP Troubleshooting Performance Optimistic Concurrency Pessimistic Concurrency Lock Partitioning Transaction Stratagies

Authors and affiliations

  • Dmitri Korotkevitch
    • 1
  1. 1.Land O LakesUSA

Bibliographic information