鍍金池/ 問答/Linux  數(shù)據(jù)庫/ 哪本書中有關(guān)于 事務(wù) 一級,二級, 三級, 四級鎖協(xié)議的內(nèi)容?

哪本書中有關(guān)于 事務(wù) 一級,二級, 三級, 四級鎖協(xié)議的內(nèi)容?

哪本書中有關(guān)于 事務(wù) 一級,二級, 三級, 四級鎖協(xié)議的內(nèi)容

回答
編輯回答
熟稔

《MYSQL內(nèi)核:INNODB存儲引擎》和《高性能MySQL》都有相關(guān)內(nèi)容

這幾篇文章或許也能幫到你

[Mysql]——通過例子理解事務(wù)的4種隔離級別:
https://www.cnblogs.com/snsdz...

數(shù)據(jù)庫并發(fā)的五個問題以及四級封鎖協(xié)議與事務(wù)隔離的四個級別
http://blog.csdn.net/zhangzey...

2018年3月23日 14:10
編輯回答
朕略萌

事務(wù)的概念倒是很多書都有講,但是沒見過什么"X級鎖協(xié)議"。搜了一下,只有某些博客和某些題庫有這種說法。不要被這種說法迷惑了,找權(quán)威資料看是沒錯的。而最權(quán)威的就是論文了。
Granularity of Locks and Degrees of Consistency in a Shared Data Base
引用數(shù)619,可以看出是很權(quán)威的。
這篇論文前半講了鎖粒度,后半講了一致性程度(頂端頁碼379頁),然后給出了4個一致性級別的定義(380頁),最后針對不同等級的一致性給出了相應(yīng)的鎖協(xié)議(382頁)。

The lock protocols are:
Degree 3: transaction T observes degree 3 lock protocol if:
    (a) T sets a long exclusive lock on any data it dirties.
    (b) T sets a long share lock on any data it reads.
Degree 2: transaction T observes degree 2 lock protocol if:
    (a) T sets a long exclusive lock on any data it dirties.
    (b) T sets a (possibly short) share lock on any data it reads.
Degree I: transaction T observes degree 1 lock protocol if:
    (a) T sets a long exclusive lock on any data it dirties.
Degree 3: transaction T observes degree 0 lock protocol if:
    (a) T sets a (possibly short) exclusive lock on any data it
     dirties.

所以,這個"X級鎖協(xié)議"的說法,實際上是"針對X級一致性的鎖協(xié)議"。實際上,數(shù)據(jù)庫的ACID屬性,都是圍繞一致性(Consistency)的,原子性(Atomicity)和持久性(Durability)是為了保證數(shù)據(jù)總在某個一致的狀態(tài),而因為強一致性會導致很大的性能損失,所以做了妥協(xié),把一致性劃分為幾個等級(degree of consistency),然后演變成了隔離性(Isolation)。
實際使用中,大部分數(shù)據(jù)庫都是在可重復(fù)讀級別,所以其他級別的討論和資料都比較少。

書的話,當然是這本:
《事務(wù)處理:概念和技術(shù)》,就是上面那篇論文的作者Jim Gray大師寫的,可以說是奠定關(guān)系數(shù)據(jù)庫基礎(chǔ)的書??上鴥?nèi)已經(jīng)絕版,不過真想看的話也不是沒辦法。
封面

2018年5月15日 04:10
編輯回答
愚念

謝謝 這些資料已經(jīng)看過了 說實話 感覺不太權(quán)威, 畢竟好幾篇資料描述的大相徑庭 我似乎已經(jīng)找到了些資料 稍后有空會整理出筆記來 謝謝

2017年9月15日 18:31