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

淺析計(jì)算機(jī)系統(tǒng)中并發(fā)調(diào)度的可串行性

2011-01-01 00:00:00王吉
China’s foreign Trade·下半月 2011年2期

【摘 要】 計(jì)算機(jī)系統(tǒng)對并發(fā)事務(wù)中并發(fā)操作的調(diào)度是隨機(jī)的,而不同的調(diào)度可能會產(chǎn)生不同的結(jié)果。

【關(guān)鍵詞】 并發(fā)事務(wù) 并發(fā)控制 可串行性

Abstract : The paper of the serializability of the concurrent scheduling in the computer system.

加鎖與可串行化是并發(fā)控制中采取的兩個主要措施。兩段鎖協(xié)議是解決可串行化調(diào)度較好的方法之一,但滿足可串行化的調(diào)度可能會出現(xiàn)死鎖<%=。因此,如何構(gòu)造一個既滿足!.3 又不出現(xiàn)死鎖的調(diào)度,是并發(fā)控制中要研究的一個重要課題。作為模擬與分析并發(fā)、異步、分布式系統(tǒng)的一種形式化方法,已被許多文獻(xiàn)用于描述和分析數(shù)據(jù)庫系統(tǒng)中的并發(fā)控制問題。文獻(xiàn)<>=建立了并發(fā)事務(wù)的模型,并給出了系統(tǒng)狀態(tài)死鎖的充分必要條件但所建模型不遵守!.3。文獻(xiàn)<#=建立了用于檢測數(shù)據(jù)庫一致性模型,并利用不變量討論了可串行化調(diào)度問題,但沒有討論死鎖問題。文獻(xiàn)<?=通過建立并發(fā)事務(wù)的模型,探討了可串行化調(diào)度與死鎖檢測問題,但當(dāng)系統(tǒng)中涉及的事務(wù)與數(shù)據(jù)資源較多時,所構(gòu)造的模型過于復(fù)雜。該文給出的并發(fā)事務(wù)的擴(kuò)展有色模型,可使網(wǎng)結(jié)構(gòu)大為簡化,所建模型完全符合!.3。利用該模型的可達(dá)標(biāo)識圖,給出了判斷滿足兩段鎖協(xié)議的調(diào)度是否死鎖的充分必要條件,并由此構(gòu)造出并發(fā)事務(wù)的無死鎖的可串行化調(diào)度。

計(jì)算機(jī)系統(tǒng)對并發(fā)事務(wù)中并發(fā)操作的調(diào)度是隨機(jī)的,而不同的調(diào)度可能會產(chǎn)生不同的結(jié)果,那么哪個結(jié)果是正確的,哪個是不正確的呢?

如果一個事務(wù)運(yùn)行過程中沒有其他事務(wù)同時運(yùn)行,也就是說它沒有受到其他事務(wù)的干擾,那么就可以認(rèn)為該事務(wù)的運(yùn)行結(jié)果是正常的或者預(yù)想的。因此將所有事務(wù)串行起來的調(diào)度策略一定是正確的調(diào)度策略。雖然以不同的順序串行執(zhí)行事務(wù)可能會產(chǎn)生不同的結(jié)果,但由于不會將數(shù)據(jù)庫置于不一致狀態(tài),所以都是正確的。

定義 多個事務(wù)的并發(fā)執(zhí)行是正確的,當(dāng)且僅當(dāng)其結(jié)果與按某一次序串行地執(zhí)行它們時的結(jié)果相同,我們稱這種調(diào)度策略為可串行化(Serializable)的調(diào)度。

可串行性(Serializability)是并發(fā)事務(wù)正確性的準(zhǔn)則。按這個準(zhǔn)則規(guī)定,一個給定的并發(fā)調(diào)度,當(dāng)且僅當(dāng)它是可串行化的,才認(rèn)為是正確調(diào)度。

例如,現(xiàn)在有兩個事務(wù),分別包含下列操作:

事務(wù)T1:讀B;A=B+1;寫回A;

事務(wù)T2:讀A;B=A+1;寫回B;

假設(shè)A,B的初值均為2。按T1→T2次序執(zhí)行結(jié)果為A=3,B=4;按T2→T1次序執(zhí)行結(jié)果為B=3,A=4。

數(shù)據(jù)庫是一個共享資源,可以提供多個用戶使用。這些用戶程序可以一個一個地串行執(zhí)行,每個時刻只有一個用戶程序運(yùn)行,執(zhí)行對數(shù)據(jù)庫的存取,其他用戶程序必須等到這個用戶程序結(jié)束以后方能對數(shù)據(jù)庫存取。但是如果一個用戶程序涉及大量數(shù)據(jù)的輸入/輸出交換,則數(shù)據(jù)庫系統(tǒng)的大部分時間處于閑置狀態(tài)。因此,為了充分利用數(shù)據(jù)庫資源,發(fā)揮數(shù)據(jù)庫共享資源的特點(diǎn),應(yīng)該允許多個用戶并行地存取數(shù)據(jù)庫。但這樣就會產(chǎn)生多個用戶程序并發(fā)存取同一數(shù)據(jù)的情況,若對并發(fā)操作不加控制就可能會存取和存儲不正確的數(shù)據(jù),破壞數(shù)據(jù)庫的一致性,所以數(shù)據(jù)庫管理系統(tǒng)必須提供并發(fā)控制機(jī)制。

一致性要求事務(wù)執(zhí)行完成后,將數(shù)據(jù)庫從一個一致狀態(tài)轉(zhuǎn)變到另一個一致狀態(tài)。它是一種以一致性規(guī)則為基礎(chǔ)的邏輯屬性,例如在轉(zhuǎn)賬的操作中,各賬戶金額必須平衡,這一條規(guī)則對于程序員而言是一個強(qiáng)制的規(guī)定,由此可見,一致性與原子性是密切相關(guān)的。

如果沒有鎖定且多個用戶同時訪問一個數(shù)據(jù)庫,則當(dāng)他們的事務(wù)同時使用相同的數(shù)據(jù)時可能會發(fā)生問題,導(dǎo)致數(shù)據(jù)庫中的數(shù)據(jù)的不一致性。一個最常見的并發(fā)操作的例子是火車/飛機(jī)訂票系統(tǒng)中的訂票操作。例如,在該系統(tǒng)中的一個活動序列:

(1)甲售票員讀出某航班的機(jī)票張數(shù)余額A,設(shè)A=16;

(2)乙售票員讀出同一航班的機(jī)票張數(shù)余額A,也是16;

(3)甲售票員賣出一張機(jī)票,修改機(jī)票張數(shù)余額A=A-1=15,把A寫回?cái)?shù)據(jù)庫;

(4)乙售票員也賣出一張機(jī)票,修改機(jī)票張數(shù)余額A=A-1=15,把A寫回?cái)?shù)據(jù)庫。

結(jié)果明明賣出兩張機(jī)票,數(shù)據(jù)庫中機(jī)票余額只減少1。

這種情況稱為數(shù)據(jù)庫的不一致性。這種不一致性是由甲、乙兩個售票員并發(fā)操作引起的。在并發(fā)操作情況下,對甲、乙兩個事務(wù)操作序列的調(diào)度是隨機(jī)的。若按上面的調(diào)度序列行,甲事務(wù)的修改就被丟失。這是由于第4步中乙事務(wù)修改A并寫回覆蓋了甲事務(wù)的修改。

當(dāng)兩個或多個事務(wù)選擇同一數(shù)據(jù),并且基于最初選定的值更新該數(shù)據(jù)時,會發(fā)生丟失更新問題。每個事務(wù)都不知道其它事務(wù)的存在。最后的更新將重寫由其它事務(wù)所做的更新,這將導(dǎo)致數(shù)據(jù)丟失。上面預(yù)定飛機(jī)票的例子就屬于這種并發(fā)問題。事務(wù)1與事務(wù)2先后讀入同一數(shù)據(jù)A=16,事務(wù)1執(zhí)行A-1,并將結(jié)果A=15寫回,事務(wù)2執(zhí)行A-1,并將結(jié)果A=15寫回。事務(wù)2提交的結(jié)果覆蓋了事務(wù)1對數(shù)據(jù)庫的修改,從而使事務(wù)1對數(shù)據(jù)庫的修改丟失了。

封鎖粒度與系統(tǒng)的并發(fā)度和并發(fā)控制的開銷密切相關(guān)。封鎖的粒度越大,系統(tǒng)中能夠被封鎖的對象就越小,并發(fā)度也就越小,但同時系統(tǒng)開銷也越小;相反,封鎖的粒度越小,并發(fā)度越高,但系統(tǒng)開銷也就越大。

因此,如果在一個系統(tǒng)中同時存在不同大小的封鎖單元供不同的事務(wù)選擇使用是比較理想的。而選擇封鎖粒度時必須同時考慮封鎖機(jī)構(gòu)和并發(fā)度兩個因素,對系統(tǒng)開銷與并發(fā)度進(jìn)行權(quán)衡,以求得最優(yōu)的效果。一般說來,需要處理大量元組的用戶事務(wù)可以以關(guān)系為封鎖單元;需要處理多個關(guān)系的大量元組的用戶事務(wù)可以以數(shù)據(jù)庫為封鎖單位;而對于一個處理少量元組的用戶事務(wù),可以以元組為封鎖單位以提高并發(fā)度。

封鎖的目的是為了保證能夠正確地調(diào)度并發(fā)操作。為此,在運(yùn)用X鎖和S鎖這兩種基本封鎖,對一定粒度的數(shù)據(jù)對象加鎖時,還需要約定一些規(guī)則,例如,應(yīng)何時申請X鎖或S鎖、持鎖時間、何時釋放等。我們稱這些規(guī)則為封鎖協(xié)議(locking protocol)。對封鎖方式規(guī)定不同的規(guī)則,就形成了各種不同的封鎖協(xié)議,它們分別在不同的程度上為并發(fā)操作的正確調(diào)度提供一定的保證。本節(jié)介紹保證數(shù)據(jù)一致性的三級封鎖協(xié)議和保證并行調(diào)度可串行性的兩段鎖協(xié)議,下一節(jié)將介紹避免死鎖的封鎖協(xié)議。

并發(fā)操作的不正確調(diào)度可能會帶來四種數(shù)據(jù)不一致性:丟失或覆蓋更新、臟讀、不可重復(fù)讀和幻想讀。三級封鎖協(xié)議分別在不同程度上解決了這一問題。

參考文獻(xiàn):

[1]《數(shù)據(jù)庫系統(tǒng)概論》(第三版)(第三篇 系統(tǒng)篇 第八章 并發(fā)控制) 作者:薩師煊 王珊.

[2]高等教育出版社 2000年2月第三版.

(作者單位:大慶職業(yè)學(xué)院計(jì)算機(jī)系)

主站蜘蛛池模板: 中文字幕在线视频免费| 亚洲无码熟妇人妻AV在线| 国模极品一区二区三区| 国产成人一区在线播放| 国产乱人伦AV在线A| 久久黄色一级视频| 美女内射视频WWW网站午夜| 福利在线免费视频| 精品无码日韩国产不卡av| 国产av一码二码三码无码 | 亚洲丝袜第一页| 日韩二区三区| 麻豆AV网站免费进入| 色综合色国产热无码一| 日韩精品一区二区三区swag| 一级不卡毛片| 精品视频在线观看你懂的一区| 国产小视频a在线观看| 久久a毛片| 亚洲精品无码在线播放网站| 亚洲人成网7777777国产| 亚洲第一成年人网站| 日韩AV无码免费一二三区| 午夜福利免费视频| 亚洲三级视频在线观看| 亚洲AV无码精品无码久久蜜桃| 中文无码影院| 97精品久久久大香线焦| h网站在线播放| 国产爽歪歪免费视频在线观看 | 亚洲IV视频免费在线光看| 国产成人亚洲欧美激情| 国产美女自慰在线观看| 亚洲视频免费在线| 久草视频中文| 国内丰满少妇猛烈精品播| 欧美精品1区| 激情综合网激情综合| 免费女人18毛片a级毛片视频| 亚洲最大福利网站| 97视频精品全国免费观看| 亚洲一区精品视频在线| 日本精品影院| 国产在线无码av完整版在线观看| 伊人色综合久久天天| 日韩精品无码免费专网站| 凹凸国产分类在线观看| 2021精品国产自在现线看| 波多野结衣久久高清免费| 中文字幕66页| 日本成人一区| av午夜福利一片免费看| 国产精品护士| 国产永久免费视频m3u8| 中文字幕亚洲专区第19页| 国产精品午夜福利麻豆| 大香伊人久久| 亚洲精品高清视频| 精品少妇人妻无码久久| 欧美一级在线播放| 亚洲日本精品一区二区| 国产美女91视频| 亚洲人成在线精品| 欧美精品另类| 找国产毛片看| 日韩在线播放欧美字幕| 亚洲国产系列| 亚洲AV人人澡人人双人| 国产一区成人| 亚洲水蜜桃久久综合网站| 69综合网| 午夜视频免费试看| 欧美一级99在线观看国产| 一本久道久久综合多人| 免费看a级毛片| av午夜福利一片免费看| 米奇精品一区二区三区| 熟妇丰满人妻av无码区| 婷婷综合色| 亚洲天堂精品视频| 国产精品极品美女自在线看免费一区二区| 欧美亚洲激情|