Microsoft SQL Server 2012 Bible
by Adam Jorgensen, Jorge Segarra, Patrick LeBlanc, Jose Chinchilla, Aaron Nelson
Transaction-Log Architecture
The ACID properties of a transaction are enforced in SQL Server through the Write-Ahead Logging (WAL) protocol. The WAL protocol ensures the Durability of a transaction by ensuring that all modifications are first written to the transaction log before they are written to the data file. Once a transaction has been hardened to the transaction log, it can be re-created (or rolled back) in the event of a server crash.
Transaction-Log Sequence
Every data-modification operation goes through the same sequence, in which it writes first to the transaction log and then to the data file
Database Beginning State
Before the transaction begins, the database is in a consistent state. All indexes are complete and point to the correct row. The data meets all the enforced rules for data integrity.
Some data pages are likely already cached in the buffer pool. Additional data pages or index pages are copied into memory as needed. Following are the steps of a transaction.
So the first step in a transaction is: The database is in a consistent state.
Data-Modification Command
The transaction is initiated by a submitted batch, as shown in Figure 47.10.
Figure 47.10 The SQL DML commands are performed in memory as part of a transaction.
The second step in a transaction is: The code issues a begin transaction command. Even when the DML command is a standalone command without ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access