悲觀並行控制
外觀
在關聯式資料庫管理系統里,悲觀並行控制(又名「悲觀鎖」,Pessimistic Concurrency Control,縮寫「PCC」)是一種並行控制的方法。它可以阻止一個交易以影響其他用戶的方式來修改資料。如果一個交易執行的操作讀某行資料應用了鎖,那只有當這個交易把鎖釋放,其他交易才能夠執行與該鎖衝突的操作。
悲觀並行控制主要用於資料爭用激烈的環境,以及發生並發衝突時使用鎖保護資料的成本要低於回復交易的成本的環境中。
優點與不足
[編輯]悲觀並行控制實際上是「先取鎖再訪問」的保守策略,為資料處理的安全提供了保證。但是在效率方面,處理加鎖的機制會讓資料庫產生額外的開銷,還有增加產生死鎖的機會;另外,在只讀型交易處理中由於不會產生衝突,也沒必要使用鎖,這樣做只能增加系統負載;還有會降低了並行性,一個交易如果鎖定了某行資料,其他交易就必須等待該交易處理完才可以處理那行資料。