999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

淺析并發事務的調度

2020-10-14 12:12:17徐愛蕓
青年生活 2020年19期

徐愛蕓

摘要:事務是并發控制的基本單位,多個事務的并發操作可能會破壞事務的ACID特性,為了保證事務的隔離性和一致性,DBMS必須對并發操作進行正確調度,多個事務并發執行時,對并發操作的調度是隨機的,只有可串行化調度才能保證并發執行的正確性。

關鍵詞:事務;并發執行;調度策略;可串行化調度

1 前言

調度(Schedule)是對若干事務的操作按照它們的執行時間安排的一個操作序列(順序),同一個事務中的操作在調度中的執行順序是固定不變的。

2 串行調度

若調度S中的多個事務依次執行,每個事務T中的操作都是連續執行的,這種調度是串行調度。將所有事務串行起來的調度策略一定是正確的調度策略。

現在有兩個事務,分別包含下列操作:

事務T1:讀B;A=B+1;寫回A;? ? ? ? 事務T2:讀A;B=A+1;寫回B;

假設:A,B的初值均為2。

則:若T1->T2,A=3? ?B=4;? ? ? ? ? 若T2->T1,A=4? ?B=3;

無論哪種串行調度,結果都是正確的。

串行執行由于每個時刻只有一個事務運行,其它事務必須等到這個事務結束以后方能運行,因此不能充分利用系統資源,發揮數據庫共享資源的特點。

3 并發調度

若多個事務按一定調度策略同時執行,這種交叉執行稱為并發執行。由于計算機系統對并發操作的調度是隨機的,而且不同的調度可能會產生不同的結果,事務的并發執行并不能保證事務的正確性。什么樣的并發操作調度是正確的?

3.1 可串行化(Serializable)調度

多個事務的并發執行是正確的,當且僅當其結果與按某一次序串行地執行它們時的結果相同,稱這種調度為可串行化的調度,可串行化調度是并行事務正確性的唯一準則。

①事務T1:Slock B;Y=B=2;Unlock B;Xlock A

②事務T2:Slock A; 等待

③事務T1:A=Y+1;寫回A(=3);Unlock A

④事務T2:X=A=3;Unlock A;Xlock B;B=X+1;寫回B(=4);Unlock B

最后執行的結果:A=3? B=4,與串行執行的結果相同,則這種并發調度是正確的。

3.2不可串行化調度

①事務T1:Slock B;Y=B=2

②事務T2:Slock A;X=A=2

③事務T1:Unlock B

④事務T2:Unlock A

⑤事務T1:Xlock A;A=Y+1;寫回A(=3)

⑥事務T2:Xlock B;B=X+1;寫回B(=3)

⑦事務T1:Unlock A

⑧事務T2:Unlock B

最后執行的結果:A=3? B=3,與串行執行的結果不相同,則這種并發調度是錯誤的。

3.3沖突可串行化調度

沖突操作是指分屬不同事務但對同一數據進行的讀寫操作和寫寫操作,即 Ri(X)和Wj(X); Wi(X)和Rj(X) ;Wi(x)和Wj(X)三種操作對。在保證一個調度中沖突操作次序不變的前提下,若通過交換不同事務的不沖突操作的次序,能夠得到一個串行調度,則該調度是沖突可串行化的調度。一個調度是沖突可串行化的,一定是可串行化的調度。

在一個調度中,改變不同事務的非沖突操作的順序不影響數據庫的狀態,不同事務的沖突操作和同一事務的兩個操作的順序不能改變。一個調度Sc在保證沖突操作的次序不變的情況下,通過交換兩個事務不沖突操作的次序得到另一個調度Sc,如果S是串行的,稱調度Sc為沖突可串行化的調度。不同事務的沖突操作和同一事務的兩個操作不能交換(Swap)。

如對兩個事務T1、T2的調度

S1=R1(A)W1(A)R2(A)W2(A)R1(B)W1(B)R2(B)W2(B)

①把W2(A)與R1(B)W1(B)交換,得到R1(A)W1(A)R2(A)R1(B)W2(A)W1(B)R2(B)W2(B)

②再把R2(A)與R1(B)交換,得到R1(A)W1(A)R1(B)R2(A)W1(B)W2(A)R2(B)W2(B)

③最后把R2(A)與W1(B)交換,得到R1(A)W1(A)R1(B)W1(B)R2(A)W2(A)R2(B)W2(B)

是一個串行調度T1、T2,故S1是沖突可串行化調度。

沖突可串行化調度一定是可串行化調度,但可串行化調度不一定是沖突可串行化調度,

例如:S1=W1(B)W1(A)W2(B)W2(A)W3(A)是串行調度,而調度S2=W1(B)W2(B)W2(A)W1(A)W3(A)不滿足沖突可串行化,但調度S2與S1的執行結果相同,A的值都等于W3(A),B的值都等于W2(B)。因此S2是可串行化調度,但不是沖突可串行化調度。

4 結束語

為保證數據庫的一致性,只有可串行化調度才允許運行,而兩段鎖協議是保證并發調度可串行化的協議,使用兩段鎖協議產生的是可串行化調度。若并發執行的所有事務均遵守兩段鎖協議,則對這些事務的任何并發調度策略都是可串行化的。事務遵守兩段鎖協議是可串行化調度的充分條件,而不是必要條件。

參考文獻:

[1]宋金玉,陳萍,陳剛.數據庫原理與應用(第2版)清華大學出版社,2011.6.

[2]何玉潔 數據庫系統教程(第2版)人民郵電出版社,2015.12.

主站蜘蛛池模板: 亚洲国产精品一区二区高清无码久久| 美女被操91视频| 免费在线视频a| 99re视频在线| 丁香婷婷久久| 老司机午夜精品网站在线观看| 亚洲av无码专区久久蜜芽| igao国产精品| 99re在线视频观看| 国产福利在线免费观看| 国产一区二区福利| av天堂最新版在线| 国产女人在线视频| 国产精欧美一区二区三区| 国产网站免费观看| 午夜精品久久久久久久99热下载| 精品一区二区三区波多野结衣 | 精品视频第一页| 国内精品久久九九国产精品| 久久国产高清视频| 亚洲永久色| 欧美午夜视频在线| 伊人五月丁香综合AⅤ| 中文字幕2区| 一区二区理伦视频| 欧美亚洲一区二区三区在线| 亚洲中文字幕在线精品一区| 在线a视频免费观看| 亚洲视频黄| 无码网站免费观看| 欧美成人午夜在线全部免费| 国产迷奸在线看| 成人伊人色一区二区三区| 国产一区二区三区免费观看| 国产福利微拍精品一区二区| 国产精品国产主播在线观看| 欧美一级特黄aaaaaa在线看片| 日日碰狠狠添天天爽| 理论片一区| 久久 午夜福利 张柏芝| 日韩高清在线观看不卡一区二区| 国产精品无码久久久久AV| 第九色区aⅴ天堂久久香| 熟妇人妻无乱码中文字幕真矢织江 | 国产成人8x视频一区二区| 91人妻在线视频| 亚洲成人黄色在线观看| 99re热精品视频中文字幕不卡| 中文字幕 91| 久久综合婷婷| 99在线视频网站| 免费国产一级 片内射老| 国产爽妇精品| 国产精品欧美亚洲韩国日本不卡| a免费毛片在线播放| 日本欧美视频在线观看| 精品国产美女福到在线不卡f| 久久6免费视频| 国产永久在线视频| 国产精品原创不卡在线| 女人av社区男人的天堂| 国产午夜一级毛片| 久综合日韩| 国产中文一区a级毛片视频 | 欧美日韩另类国产| 就去色综合| 91福利国产成人精品导航| 91视频区| 国产视频a| 天天综合网色| 精品国产中文一级毛片在线看| 亚洲AV无码久久天堂| 一区二区影院| 中文字幕无码电影| 欧美丝袜高跟鞋一区二区| 成人午夜视频在线| 免费观看亚洲人成网站| 亚洲美女一区| 国产三区二区| 热九九精品| 蜜桃视频一区| 伊人91在线|