Friday, November 1, 2013

How to handle performance of parallel CRUD in single table?

Hi Bahar,


SQL Server Database Engine uses locks to ensure the integrity of transactions and maintain the consistency of databases when multiple users are accessing data at the same time, since different locks may not be compatible with another and have to wait others to release the lock on the required object, this will decrease the database engine performance. I suggest using versioning-based isolation level with your requirement, when a row versioning-based isolation level is enabled, the Database Engine maintains versions of each row that is modified. Applications can specify that a transaction use the row versions to view data as it existed at the start of the transaction or query instead of protecting all reads with locks. For more detail information, you can refer to the following link:


Lock Compatibility (Database Engine)

http://technet.microsoft.com/en-us/library/ms186396(v=sql.105).aspx


SQL Server Transaction Locking and Row Versioning Guide

http://technet.microsoft.com/en-us/library/jj856598.aspx


Best Regards,

Allen




We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time.

Thanks for helping make community forums a great place.


No comments:

Post a Comment