Home » Microsoft » 70-458 » Which isolation level should you use?
You use Microsoft SQL Server 2012 to write code for a transaction that contains several statements. There is high contention between reader and writers on several tables used by your transaction. You need to minimize the use of the tempdb space. You also need to prevent reading queries from blocking writing queries. Wich isolation level should you use?
A. SERIALIZABLE
B. SNAPSHOT
C. READ COMMITTED SNAPSHOT
D. REPEATABLE READ
Correct Answer: C
Explanation/Reference:
Explanation:
When READ_COMMITTED_SNAPSHOT OFF is in effect, the Database Engine uses shared locks to enforce the default isolation level.
If you set the READ_COMMITTED_SNAPSHOT database option to ON, the database engine uses row versioning and snapshot isolation as the default, instead of using locks to protect the data.
When the SNAPSHOT isolation level is enabled, each time a row is updated, the SQL Server Database Engine stores a copy of the original row in tempdb, and adds a transaction sequence number to the row.
References:
http://msdn.microsoft.com/en-us/library/tcbchxcb(v=vs.110).aspx