国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于相關(guān)事務(wù)結(jié)果集的移動(dòng)數(shù)據(jù)庫三級(jí)復(fù)制同步機(jī)制

2009-04-23 10:03:58張?jiān)蒲?/span>
新媒體研究 2009年6期

袁 源 張?jiān)蒲?/p>

[摘要]重點(diǎn)研究目前商用移動(dòng)數(shù)據(jù)庫系統(tǒng)和一些移動(dòng)數(shù)據(jù)庫系統(tǒng)原型中采用的復(fù)制和同步技術(shù),并在此基礎(chǔ)上提出一種以相關(guān)事務(wù)結(jié)果集為同步粒度的同步機(jī)制,并對(duì)如何實(shí)現(xiàn)這種同步機(jī)制做了較為詳細(xì)的闡述。

[關(guān)鍵詞]移動(dòng)計(jì)算 移動(dòng)數(shù)據(jù)庫 數(shù)據(jù)復(fù)制 同步技術(shù) 同步粒度

中圖分類號(hào):TP3文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1671-7597(2009)0320039-01

一、引言

移動(dòng)數(shù)據(jù)庫系統(tǒng)是指支持移動(dòng)計(jì)算環(huán)境的分布式數(shù)據(jù)庫系統(tǒng)。與傳統(tǒng)分布式數(shù)據(jù)庫相比,移動(dòng)數(shù)據(jù)庫具有移動(dòng)性、位置相關(guān)性、頻繁的斷接性、所處網(wǎng)絡(luò)條件的多樣性、較差的系統(tǒng)安全性及可靠性、資源的有限性、網(wǎng)絡(luò)通訊的非對(duì)稱性等特點(diǎn)[1]。

二、數(shù)據(jù)一致性

如何保證各個(gè)移動(dòng)結(jié)點(diǎn)和服務(wù)器間的數(shù)據(jù)一致性是移動(dòng)數(shù)據(jù)庫中的關(guān)鍵問題。它的研究方向有兩個(gè)方面,一是數(shù)據(jù)的同步復(fù)制,另一個(gè)是移動(dòng)事務(wù)模型。

到目前為止,已經(jīng)出現(xiàn)了很多成熟的移動(dòng)復(fù)制算法,如:兩級(jí)復(fù)制算法、三級(jí)復(fù)制機(jī)制等。其中的三級(jí)復(fù)制機(jī)制,是最為典型的異步復(fù)制機(jī)制,也是本文下部分討論的重點(diǎn)。

三、移動(dòng)數(shù)據(jù)庫三級(jí)復(fù)制機(jī)制

三級(jí)復(fù)制體系結(jié)構(gòu)由服務(wù)器級(jí)復(fù)制、空中復(fù)制、客戶機(jī)緩存三級(jí)復(fù)制機(jī)制組成。服務(wù)器級(jí)復(fù)制為第一級(jí)復(fù)制,該復(fù)制采用傳統(tǒng)的復(fù)制技術(shù),以保證服務(wù)器之間的一致性;空中復(fù)制為第二級(jí)復(fù)制,服務(wù)器將經(jīng)常被訪問的熱點(diǎn)數(shù)據(jù)組織起來,通過MSS向所有的MH廣播,這實(shí)際上等同于在無線信道上做了一級(jí)數(shù)據(jù)復(fù)制;客戶機(jī)緩存為第三級(jí)復(fù)制,MH利用本身的處理及存儲(chǔ)能力緩存數(shù)據(jù)庫中的部分?jǐn)?shù)據(jù),以支持移動(dòng)用戶的斷接操作[3]。

三級(jí)復(fù)制體系結(jié)構(gòu)基本滿足了移動(dòng)數(shù)據(jù)庫系統(tǒng)的四個(gè)目標(biāo),同時(shí)提高了系統(tǒng)的可伸縮性。

四、基于相關(guān)事務(wù)結(jié)果集的三級(jí)復(fù)制同步機(jī)制

(一)同步機(jī)制思想

首先分析同步機(jī)制的劃分粒度,它分為元組、事務(wù)、SQL語句或者所有的同步數(shù)據(jù)[4]。不同同步粒度的劃分在系統(tǒng)實(shí)現(xiàn)的難度、系統(tǒng)開銷、全局提交率等方面各有不同,目前的三級(jí)復(fù)制體系大都采用以一個(gè)移動(dòng)事務(wù)的結(jié)果集為同步粒度,它既保證了移動(dòng)事務(wù)的原子性,又保證了移動(dòng)事務(wù)沖突檢測(cè)中的獨(dú)立性。但是,這種同步機(jī)制所帶來的系統(tǒng)開銷也是很大的,極大地加重了系統(tǒng)的負(fù)荷[5]。

為了改進(jìn)上述問題,本文提出一種以相關(guān)事務(wù)結(jié)果集作為同步傳輸粒度的同步傳輸機(jī)制,它不同于以往的以單個(gè)事務(wù)結(jié)果集作為同步粒度,通過對(duì)移動(dòng)事務(wù)的讀集和寫集進(jìn)行邏輯運(yùn)算,判斷出具有相關(guān)性的事務(wù),進(jìn)而在數(shù)據(jù)同步過程中將這些事務(wù)的結(jié)果集進(jìn)行合并,避免了保存大量中間結(jié)果,減輕了同步服務(wù)器的負(fù)荷,也減少了無線傳輸過程中的數(shù)據(jù)量。同時(shí),也保證了事務(wù)的原子性,比較容易實(shí)現(xiàn)數(shù)據(jù)一致性的收斂。

(二)實(shí)現(xiàn)過程

首先用ReadSet(T)表示事務(wù)的讀集;WriteSet(T)表示事務(wù)的寫集,ResultSet(MT)表示事務(wù)的結(jié)果集。然后定義如下概念:

相關(guān)事務(wù):如果兩個(gè)事務(wù)T1和T2具有以下特征,我們說它們是相關(guān)的:

1.WriteSet(T1)WriteSet(T2) !=

2.WriteSet(T1)ReadSet(T2)!=

當(dāng)移動(dòng)用戶在移動(dòng)結(jié)點(diǎn)的本地?cái)?shù)據(jù)副本上執(zhí)行事務(wù)時(shí), EDBMS需要判斷正在執(zhí)行的事務(wù)是否和其他事務(wù)相關(guān),如果是相關(guān)的,則將此事務(wù)和與之相關(guān)的事務(wù)的結(jié)果集做上同一個(gè)標(biāo)記,這個(gè)標(biāo)記用于在同步時(shí)快速過濾出需要上載的數(shù)據(jù),并且根據(jù)這個(gè)標(biāo)記將上載的數(shù)據(jù)按照相關(guān)事務(wù)的結(jié)果集劃分成不同的同步單元。

如果相關(guān)的事務(wù)的結(jié)果集有交集,則對(duì)交集的部分做合并操作,這樣就避免了保存大量中間結(jié)果的問題。

下面,我們以具體的例子說明移動(dòng)事務(wù)相關(guān)的過程:

(1)相關(guān)1:寫寫相關(guān)

如果兩個(gè)事務(wù)的寫集的交集不為空,則這兩個(gè)事務(wù)是寫寫相關(guān)的。這種情況很常見,在一個(gè)應(yīng)用中,經(jīng)常會(huì)有包含相同SQL操作的事務(wù)重復(fù)執(zhí)行,典型的是在一個(gè)銷售系統(tǒng)中。

如下有兩個(gè)事務(wù)MT1,MT2所示,假設(shè)事務(wù)讀寫的表的初始內(nèi)容如表-1所示:

MT1

Update Table1 Set items=Items-10 Where name=“book”;

Update Table1 Set items=Items-10 Where name=“CD”;

MT2

Update Table1 Set items=Items-20 Where name=“book”;

Update Table1 Set items=Items-45 Where name=“CD”;

在MT1提交事務(wù)后,系統(tǒng)對(duì)數(shù)據(jù)庫進(jìn)行操作后便將MT1修改的元組做上MT1的事務(wù)標(biāo)記。在MT2執(zhí)行過程中,發(fā)現(xiàn)將要修改的元組標(biāo)有其他事務(wù)的標(biāo)記,則認(rèn)為本事務(wù)是和已經(jīng)標(biāo)記的事務(wù)是相關(guān)的。將MT1和MT2兩個(gè)事務(wù)相關(guān)后,相關(guān)事務(wù)的結(jié)果集相當(dāng)于在移動(dòng)設(shè)備的本地?cái)?shù)據(jù)副本上執(zhí)行了如下一個(gè)單獨(dú)的事務(wù):

UMT1

Update Table1 Set items=Items-30 Where name=“book”;

Update Table1 Set items=Items-60 Where name=“CD”;

以上描述的是一種較為特殊的產(chǎn)生寫寫相關(guān)的事務(wù)的場(chǎng)景。更為一般的情況是兩個(gè)事務(wù)寫集的交集只是其中某個(gè)事務(wù)寫集的一個(gè)真子集,也即兩個(gè)事務(wù)滿足下列條件:

WriteSet(MT1) WirteSet(MT2)!=

并且滿足下面的一個(gè)或者兩個(gè)條件:

WirteSet(MT1) WirteSet(MT2)WirteSet(MT1)

WirteSet(MT1) WriteSet(MT2)WirteSet(MT2)

(2)相關(guān)2:寫讀相關(guān)

寫讀相關(guān)的情景在應(yīng)用中也經(jīng)常出現(xiàn),當(dāng)一個(gè)移動(dòng)事務(wù)在本地?cái)?shù)據(jù)副本上提交后,其對(duì)數(shù)據(jù)的修改可能會(huì)被其他事務(wù)讀取,并用于這些事務(wù)的執(zhí)行過程中。在寫讀相關(guān)事務(wù)中,因?yàn)楹筇峤坏氖聞?wù)的結(jié)果依賴于前一個(gè)事務(wù)的寫集中的某些數(shù)據(jù)項(xiàng),因此認(rèn)為這兩個(gè)事務(wù)是相關(guān)的。

以上我們討論的都只涉及到兩個(gè)事務(wù)之間的相關(guān),但卻很容易可以擴(kuò)展到多個(gè)事務(wù)之間。

四、結(jié)束語

本文重點(diǎn)研究了目前流行的復(fù)制移動(dòng)數(shù)據(jù)庫系統(tǒng)中的復(fù)制和同步技術(shù)。在詳細(xì)分析已有同步技術(shù)的基礎(chǔ)上,提出了一種以相關(guān)事務(wù)的結(jié)果集為同步粒度的結(jié)果集傳遞合并的同步機(jī)制,并對(duì)如何實(shí)現(xiàn)這種同步機(jī)制的方法做了較為詳細(xì)的闡述。

參考文獻(xiàn):

[1]劉鐵銘、張有為、張媛媛,嵌入式移動(dòng)數(shù)據(jù)庫應(yīng)用研究[J].微計(jì)算機(jī)信息,2006,1-2:P88-90.

[2]王珊、丁治明,移動(dòng)計(jì)算環(huán)境中的移動(dòng)數(shù)據(jù)庫,微電腦世界,2001.8:p25-27.

[3]丁治明,移動(dòng)數(shù)據(jù)庫關(guān)鍵技術(shù)研究,中國科學(xué)院研究生院博士學(xué)位論文,2002.05.

[4]何新貴、唐常杰、李霖、劉云生,特種數(shù)據(jù)庫技術(shù),北京:科學(xué)出版社,2000.

台山市| 益阳市| 鲁甸县| 乌兰察布市| 巩义市| 尖扎县| 潮安县| 抚宁县| 梁山县| 甘南县| 安陆市| 长白| 彭泽县| 怀化市| 马尔康县| 克拉玛依市| 桃源县| 河南省| 淳安县| 太仆寺旗| 和林格尔县| 鄂托克前旗| 宜春市| 凤城市| 东乡族自治县| 林周县| 长岭县| 香格里拉县| 乐安县| 南开区| 陆丰市| 兴安盟| 布拖县| 凤冈县| 屯留县| 商水县| 宜宾市| 永善县| 阳朔县| 五莲县| 神农架林区|