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

?

基于IIPP和移動Agent的冗余數(shù)據(jù)一致性的研究與實(shí)現(xiàn)

2018-04-13 06:36李海榮方中純
現(xiàn)代電子技術(shù) 2018年8期

李海榮 方中純

摘 要: 冗余技術(shù)在提高數(shù)據(jù)可靠性和可用性方面發(fā)揮了重要作用,隨之而來的數(shù)據(jù)一致性問題成為研究熱點(diǎn)。提出一個基于IIPP和移動Agent的一致模型,在IIPP思想的指導(dǎo)下,應(yīng)用Agent具有移動特性和處理任務(wù)的特性來進(jìn)行事務(wù)的發(fā)送、轉(zhuǎn)換及分發(fā)等操作,從而實(shí)現(xiàn)數(shù)據(jù)的弱一致性。該模型在實(shí)際應(yīng)用中得到了很好的驗(yàn)證,提高了系統(tǒng)的智能性、高效性及自適應(yīng)性。

關(guān)鍵詞: IIPP; 移動Agent; 弱一致性; 分布式數(shù)據(jù)庫; 冗余技術(shù); 一致性模型

中圖分類號: TN911.2?34; TP392 文獻(xiàn)標(biāo)識碼: A 文章編號: 1004?373X(2018)08?0092?04

Abstract: Redundancy technology plays an important role in improving the data reliability and availability, and the subsequent data consistency problem becomes a hot research topic. A consistency model based on IIPP and mobile Agent is put forward. Under the guide of IIPP idea, operations such as transaction sending, transferring and distribution are conducted by means of the mobile feature and task processing feature of Agent to finally realize the weak consistency of data. The model was well verified in practical application, which improves the intelligence, efficiency and adaptability of the system.

Keywords: IIPP; mobile Agent; weak consistency; distributed database; redundancy technology; consistency model

為了保證和提高數(shù)據(jù)的可靠性(Reliability)和可用性(Availability),分布式數(shù)據(jù)庫經(jīng)常采用冗余存儲的方式,即數(shù)據(jù)產(chǎn)生多個副本,存儲于不同服務(wù)器和數(shù)據(jù)中心。冗余機(jī)制的引入實(shí)現(xiàn)了網(wǎng)絡(luò)帶寬消耗減少,數(shù)據(jù)訪問延遲減少的目的,但同時也產(chǎn)生了數(shù)據(jù)一致性問題。因此,如何高效、智能地解決一致性問題,從而保證系統(tǒng)的可用性與可靠性,已經(jīng)成為分布式數(shù)據(jù)庫的一個研究熱點(diǎn)。

一致性又分為強(qiáng)一致性和弱一致性[1]。強(qiáng)一致性是指同一數(shù)據(jù)的多個備份之間,要任何時刻都保持一致,適用于對數(shù)據(jù)實(shí)時性和準(zhǔn)確性要求較高的場合,如銀行賬號的余額更新等。弱一致性要求只要數(shù)據(jù)最終達(dá)到一致即可,也稱為最終一致性或優(yōu)化一致性。弱一致性具有網(wǎng)絡(luò)靈活性,并且節(jié)點(diǎn)間的同步協(xié)調(diào)要求低,是采用較為廣泛的一種一致性策略。

目前公認(rèn)的最為有效的一致性算法是由Leslie Lamport 于1990年提出的一種基于消息傳遞的一致性算法:Paxos[2]。另外,許多學(xué)者也提出了很多其他算法,較為常見的有:事務(wù)控制法、復(fù)制控制法和消息隊(duì)列法[3?4]等。

本文提出一種基于智能信息推拉技術(shù)(Intelligent Information Push &; Pull,IIPP)思想的數(shù)據(jù)弱一致性的更新模型DCIMA(Data Consistency based on IIPP and Mobile Agent),其利用移動Agent具有移動特性和處理任務(wù)的特性來解決分布式數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)一致性問題,使得系統(tǒng)具有智能性、高效性及自適應(yīng)性。

1 相關(guān)知識介紹

1.1 智能信息推拉技術(shù)

所謂拉取(Pull)指用戶根據(jù)自身需求,有目的地從信源中提取所需信息,如用戶進(jìn)行目錄查詢、數(shù)據(jù)庫查詢,或者系統(tǒng)自動進(jìn)行的定時信息搜索等。拉取的針對性好,個性服務(wù),但是及時性差,對用戶的要求較高。

推送(Push)技術(shù)是根據(jù)用戶需要,有目的、按時地將用戶感興趣的信息主動發(fā)送到用戶的計(jì)算機(jī)中,如各種新聞、財(cái)經(jīng)、體育等信息。信息推送軟件由批處理模塊和實(shí)時智能模塊組成,分別負(fù)責(zé)找到用戶的瀏覽模式建立模式庫和根據(jù)模式庫為用戶自動推薦其可能感興趣的頁面或其他知識。其優(yōu)點(diǎn)是:對用戶要求低,普遍適用于大眾;及時性好,信源可及時地向用戶“推送”不斷更新的動態(tài)信息。

智能信息推拉技術(shù)[5]就是將信息推送與拉取模式結(jié)合,做到取長補(bǔ)短,優(yōu)勢互補(bǔ),同時融入人工智能、知識發(fā)現(xiàn)技術(shù)、互聯(lián)網(wǎng)以及數(shù)據(jù)庫技術(shù)。IIPP的產(chǎn)生,可以提高網(wǎng)絡(luò)及數(shù)據(jù)庫的智能水平,進(jìn)而提高用戶獲取信息的效率和能力,如圖1所示。

目前有許多改進(jìn)信息推拉的結(jié)合方式,如:先拉后推、先推后拉,推中有拉,拉中有推等及其優(yōu)化組合的推拉方式,提高互動通信的智能水平。

1.2 Agent

Agent是一個具有自適應(yīng)性和智能性的軟件實(shí)體,能代表用戶或其他程序,以主動服務(wù)的方式完成一項(xiàng)工作。其概念由Minsky在1986年出版的 《思維的社會》 一書中提出。Minsky認(rèn)為社會中的某些個體經(jīng)過協(xié)商之后可求得問題的解,這些個體就是Agent。從此,Agent的概念便被引入人工智能和計(jì)算機(jī)領(lǐng)域,并迅速成為研究熱點(diǎn)。

Agent至少應(yīng)具備以下幾方面的關(guān)鍵屬性[6]:

1) 自主性:Agent具有屬于其自身的計(jì)算資源和局部于自身行為控制的機(jī)制,能在無外界直接操縱的情況下,根據(jù)其內(nèi)部狀態(tài)和感知到的(外部)環(huán)境信息,決定和控制自身的行為。

2) 交互性:能與其他Agent進(jìn)行多種形式的交互,能有效地與其他Agent協(xié)同工作。

3) 反應(yīng)性:能感知所處的環(huán)境,并對相關(guān)事件做出適時反應(yīng)。

4) 主動性:能遵循承諾采取主動行動,表現(xiàn)出面向目標(biāo)的行為。

5) 推理和規(guī)劃能力:Agent具有學(xué)習(xí)知識和經(jīng)驗(yàn)及進(jìn)行相關(guān)的推理和智能計(jì)算的能力。

移動Agent(Mobile Agent)是可以在網(wǎng)絡(luò)上進(jìn)行移動的、自適應(yīng)和智能性的軟件實(shí)體。它和普通Agent相比,主要表現(xiàn)的特征就是能通過網(wǎng)絡(luò)把Agent移動到指定位置,即把軟件執(zhí)行的功能移動到指定位置。用移動Agent可以方便地協(xié)調(diào)遠(yuǎn)程的執(zhí)行實(shí)體,如:進(jìn)程、線程、服務(wù)、Agent等。本文利用移動Agent進(jìn)行事務(wù)的發(fā)送、轉(zhuǎn)換和分發(fā),從而使得系統(tǒng)的效率提高。本文使用的MAP(Mobile Agent Platform)是由IBM公司用純Java開發(fā)的Aglet。Aglet提供了簡單而全面的移動Agent編程模型、它為Agent提供了動態(tài)和有效的通信機(jī)制、還提供了一套詳細(xì)且易用的安全機(jī)制。Aglet同時傳送代碼和狀態(tài),以線程的形式產(chǎn)生于一臺計(jì)算機(jī)上,可隨時暫停正在執(zhí)行的工作,并允許把整個Aglet分派到另一臺計(jì)算機(jī)上,再重新啟動執(zhí)行任務(wù)。由于Aglet是線程,因此不會消耗太多的系統(tǒng)資源。

2 DCIMA模型

2.1 相關(guān)概念介紹

1) 實(shí)體

實(shí)體是指計(jì)算機(jī)中能夠運(yùn)行的程序組、進(jìn)程、線程、服務(wù)、Agent等。

2) 協(xié)調(diào)控制器

協(xié)調(diào)控制器即協(xié)調(diào)/分發(fā)服務(wù)器,能夠?qū)φ麄€系統(tǒng)進(jìn)行協(xié)調(diào)和事務(wù)的分發(fā),用于管理、協(xié)調(diào)節(jié)點(diǎn)間的工作實(shí)體,是整個模型的核心。

3) 出版表信息

當(dāng)一個數(shù)據(jù)庫中的一個(或多個)表與其他數(shù)據(jù)庫中的一個(或多個)建立起對等更新關(guān)系時,稱這個(這些)表已經(jīng)出版了。

4) 目錄

在模型中,把出版表的信息(包括所屬的數(shù)據(jù)庫名、表名等)稱為目錄,也可以看作是表的集合。

本文提出的模型DCIMA采用的是“局部式”方法來分配目錄。即把每個數(shù)據(jù)節(jié)點(diǎn)的出版表信息全部放在協(xié)調(diào)控制器上的全局目錄或系統(tǒng)目錄(Global Directory,GD)中,但是這并不表示在每個數(shù)據(jù)節(jié)點(diǎn)上執(zhí)行應(yīng)用時都要查詢GD,因?yàn)槊總€數(shù)據(jù)節(jié)點(diǎn)都存放有一個局部目錄(Local Directory,LD)(包含了本數(shù)據(jù)節(jié)點(diǎn)的出版表的信息)。這樣的設(shè)計(jì)使得應(yīng)用在執(zhí)行時只需查詢本地的LD即可,從而提高系統(tǒng)的執(zhí)行效率和可用性。

2.2 DCIMA模型的體系結(jié)構(gòu)

模型DCIMA的體系結(jié)構(gòu)如圖2所示。

圖2所示的模型DCIMA是一個三元組,其中:

PPR(Push?Pull Rules)是推拉規(guī)則,系統(tǒng)根據(jù)推拉規(guī)則對數(shù)據(jù)庫更新事務(wù)進(jìn)行推送和拉取。推拉規(guī)則包括三種:周期性推拉事務(wù)、當(dāng)用戶訪問時拉取事務(wù)及基于配置規(guī)則進(jìn)行推拉事務(wù);

PPEE(Push?Pull Executing Entities)是推拉執(zhí)行實(shí)體,對保存于數(shù)據(jù)庫節(jié)點(diǎn)的弱一致更新事務(wù)進(jìn)行推送和拉取的執(zhí)行程序集;

DAU(Database Access User)是數(shù)據(jù)庫訪問用戶,如:數(shù)據(jù)庫管理員、業(yè)務(wù)操作員等。

從上面的弱一致更新模型DCIMA可以看出,更新分布式冗余數(shù)據(jù)有三種途徑:事務(wù)推送、事務(wù)拉取和推拉結(jié)合。所有更新事務(wù)都通過協(xié)調(diào)控制器處理并轉(zhuǎn)發(fā)。事務(wù)傳送的時機(jī)包括如下4種情況:

1) 數(shù)據(jù)節(jié)點(diǎn)用低優(yōu)先級執(zhí)行實(shí)體周期性推送事務(wù)到協(xié)調(diào)控制器,協(xié)調(diào)控制器接收到事務(wù)并做必要的異構(gòu)轉(zhuǎn)換,然后分發(fā)到對應(yīng)數(shù)據(jù)庫節(jié)點(diǎn)。

2) 備份節(jié)點(diǎn)周期性從源節(jié)點(diǎn)拉取事務(wù),這種方法是通過協(xié)調(diào)控制器轉(zhuǎn)發(fā)拉取事務(wù)命令,數(shù)據(jù)節(jié)點(diǎn)收到有數(shù)據(jù)庫節(jié)點(diǎn)拉取事務(wù)時,就把沒有發(fā)送出去的更新事務(wù)提交給協(xié)調(diào)控制器,協(xié)調(diào)控制器再用情況1)中的方式處理。

3) 當(dāng)用戶訪問到備份節(jié)點(diǎn)時,觸發(fā)拉取事務(wù)功能,拉取事務(wù)的過程與情況2)相同。

4) 根據(jù)推拉規(guī)則進(jìn)行推送和拉取更新事務(wù),推拉流程同上。

2.3 事務(wù)的操作

本文利用移動Agent具有移動特性和處理任務(wù)的特性來解決分布式數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)一致性問題。 其中,事務(wù)的發(fā)送、轉(zhuǎn)換及分發(fā)等操作由部署在協(xié)調(diào)控制器和數(shù)據(jù)節(jié)點(diǎn)上的多個Agent完成。表1描述了主要Agent及其作用。

從物理分布上來講,數(shù)據(jù)庫節(jié)點(diǎn)上的Agent分布在需要進(jìn)行冗余一致的數(shù)據(jù)庫應(yīng)用服務(wù)器上,對協(xié)調(diào)控制器上的Agent來講,它既可以分布在一個單獨(dú)進(jìn)行協(xié)調(diào)分發(fā)的服務(wù)器上,也可以與數(shù)據(jù)庫節(jié)點(diǎn)上的Agent一起放在一個數(shù)據(jù)庫節(jié)點(diǎn)的數(shù)據(jù)庫應(yīng)用服務(wù)器上。

首先需要在數(shù)據(jù)庫節(jié)點(diǎn)和協(xié)調(diào)控制器上部署系統(tǒng)的協(xié)調(diào)目錄。數(shù)據(jù)庫節(jié)點(diǎn)上的目錄只是包含本節(jié)點(diǎn)的相關(guān)信息;協(xié)調(diào)控制器上的目錄是全局的,包含所有數(shù)據(jù)庫節(jié)點(diǎn)的目錄。在協(xié)調(diào)系統(tǒng)啟動之前,數(shù)據(jù)庫節(jié)點(diǎn)上是沒有運(yùn)行協(xié)調(diào)Agent的。然后,從協(xié)調(diào)控制器上啟動協(xié)調(diào)系統(tǒng),在協(xié)調(diào)系統(tǒng)初始化的時候,協(xié)調(diào)系統(tǒng)會為數(shù)據(jù)庫節(jié)點(diǎn)建立日志閱讀Agent、用戶Agent、網(wǎng)絡(luò)狀態(tài)檢測Agent和事務(wù)發(fā)送Agent,并把這些Agent移動到所有數(shù)據(jù)庫節(jié)點(diǎn)上去執(zhí)行。同時,協(xié)調(diào)控制器給自己也建立社群管理Agent、用戶Agent、網(wǎng)絡(luò)狀態(tài)檢測Agent、事務(wù)轉(zhuǎn)換Agent和事務(wù)分發(fā)Agent,并在協(xié)調(diào)控制器上執(zhí)行。這些Agent構(gòu)成一個和諧的Agent社群,它們在社群管理Agent的協(xié)調(diào)下,互相制約、互相配合共同為完成冗余數(shù)據(jù)一致性目標(biāo)而工作。

表1中,UTT(Update Transaction Table)表示更新事務(wù)表,在數(shù)據(jù)庫節(jié)點(diǎn)和協(xié)調(diào)控制器上都有部署,分別用于保存冗余表的更新事務(wù)和數(shù)據(jù)庫更新事務(wù)。

3 DCIMA的應(yīng)用案例

DCIMA模型在內(nèi)蒙古包頭市教育局考試管理系統(tǒng)得到了實(shí)際應(yīng)用,效果良好。包頭市教育局管理其下9個考區(qū),每個考區(qū)都有自己的數(shù)據(jù)庫,用來存儲本考區(qū)的信息。9個考區(qū)和市教育局服務(wù)器形成的網(wǎng)絡(luò)拓?fù)淙鐖D3所示。本文以基于表2中的規(guī)則進(jìn)行數(shù)據(jù)的弱一致更新進(jìn)行說明。

在表2中,“推拉標(biāo)志”的含義是:1表示信息推送;2表示信息拉??;3表示信息推拉結(jié)合?!坝|發(fā)方式”的含義是:1表示周期觸發(fā);2表示定時觸發(fā);3表示實(shí)時觸發(fā)。例如:表2中的第37條規(guī)則表示該規(guī)則是2016年4月20日上午11點(diǎn)25分9秒建立,規(guī)則表明在2016年4月20日下午18點(diǎn)30分要觸發(fā)信息推送執(zhí)行實(shí)體進(jìn)行數(shù)據(jù)弱一致,RR0089,RR0090,RR0091和RR0092是4條出版關(guān)系,即:有4個信息表需要以信息推送的方式進(jìn)行數(shù)據(jù)一致。

4 結(jié) 語

在分布式數(shù)據(jù)庫系統(tǒng)廣泛使用的今天,如何實(shí)現(xiàn)數(shù)據(jù)的一致性是提升整個數(shù)據(jù)庫系統(tǒng)性能的重要研究課題。本文提出一種基于IIPP、應(yīng)用Mobile Agent實(shí)現(xiàn)一致性的模型DCIMA。模型應(yīng)用IIPP,使得系統(tǒng)能夠智能地、自主地把用戶需要的信息推送到用戶端,也能主動從遠(yuǎn)程獲取用戶感興趣的信息。如果機(jī)器學(xué)習(xí)算法比較好,就能有更完善的推拉規(guī)則,從而進(jìn)一步改善系統(tǒng)的性能。該模型的優(yōu)點(diǎn)有:更新效率高,因?yàn)锳gent攜帶事務(wù)走后,系統(tǒng)可以做其他任務(wù),得到Agent回應(yīng)后通知系統(tǒng)進(jìn)一步處理;透明性好,模型屏蔽了數(shù)據(jù)庫之間的異構(gòu)性,因此對數(shù)據(jù)庫用戶而言是透明的; 智能性與自適應(yīng)性強(qiáng)。規(guī)則可以來源于數(shù)據(jù)庫管理員更新、網(wǎng)絡(luò)感知以及數(shù)據(jù)庫訪問事務(wù),所以能根據(jù)數(shù)據(jù)庫管理員和計(jì)算環(huán)境動態(tài)的更新,從而提高系統(tǒng)的智能性和自適應(yīng)性。

希望本文能對從事分布式數(shù)據(jù)庫研究的科研工作者提供參考。

注:本文通訊作者為方中純。

參考文獻(xiàn)

[1] 邵佩英.分布式數(shù)據(jù)庫系統(tǒng)及其應(yīng)用[M].2版.北京:科學(xué)出版社,2005.

SHAO Peiying. Distributed database system and its application [M]. 2nd ed. Beijing: Science Press, 2005.

[2] LAMPORT L. The part?time parliament [J]. ACM transactions on computer systems, 1998, 16(2): 133?169.

[3] 車烏江.分布式數(shù)據(jù)庫的數(shù)據(jù)加鎖與一致性研究[D].湘潭:湖南科技大學(xué),2011.

CHE Wujiang. Research on data locking and consistency of distributed database [D]. Xiangtan: Hunan University of Science and Technology, 2011.

[4] 宋長宏,劉宇棟,朱劼,等.基于消息的主從式數(shù)據(jù)一致性更新策略[J].計(jì)算機(jī)工程,2004,30(1):92?94.

SONG Changhong, LIU Yudong, ZHU Jie, et al. Updating strategy of master?salve data consistency based on message [J]. Computer engineering, 2004, 30(1): 92?94.

[5] 百度百科.智能信息推拉技術(shù)[EB/OL].[2012?08?30].https://baike.baidu.com.

Baidu Encyclopedia. Intelligent information push and pull technology [EB/OL]. [2012?08?30]. https://baike.baidu.com.

[6] LIU Sanya, WANG Hongwei. Agent architecture for agent?based supply chain integration &; coordination [J]. ACM SIGSOFT software engineering notes, 2003, 28(4): 5.

[7] MAHBOUBI H, SHARIFI F, AGHDAM A G, et al. Distributed coordination of multi?agent systems for coverage problem in presence of obstacles [C]// Proceedings of American Control Conference. Montreal: IEEE, 2012: 5252?5257.

[8] CAO Yongcan, YU Wenwu, REN Wei, et al. An overview of recent progress in the study of distributed multi?agent coordination [J]. IEEE transactions on industrial informatics, 2012, 9(1): 427?438.

[9] MORIMOTO Y, ARIFIN M S, SIDDIQUE M A. Agent?based anonymous skyline set computation in cloud databases [J]. International journal of computational science and engineering, 2012, 7(1): 73?81.

[10] VASHISHT P, SHARMA A, KUMAR R. Strategies for replica consistency in data grid?a comprehensive survey [J]. Concurrency and computation: practice &; experience, 2017, 29(4): 1?30.

潞西市| 广丰县| 象州县| 中阳县| 新绛县| 青河县| 五峰| 兴文县| 惠州市| 本溪市| 修文县| 汝南县| 赤城县| 台山市| 香河县| 铅山县| 涪陵区| 深州市| 南平市| 邓州市| 焦作市| 新化县| 中卫市| 邢台县| 喀喇| 九龙城区| 曲阳县| 黎城县| 康马县| 凤凰县| 宁武县| 隆子县| 招远市| 山阴县| 博罗县| 北票市| 赫章县| 福清市| 信阳市| 渝北区| 营山县|