嵌入式移動(dòng)數(shù)據(jù)庫(kù)與Agent技術(shù)原理及設(shè)計(jì)
(4)移動(dòng)事務(wù)處理本文引用地址:http://www.ex-cimer.com/article/152028.htm
事務(wù)處理是數(shù)據(jù)庫(kù)管理系統(tǒng)的一個(gè)基本功能,主要用于維護(hù)數(shù)據(jù)的一致性,支持多用戶的并發(fā)訪問(wèn),使用戶可以可靠地查詢和更新數(shù)據(jù)庫(kù)。一般來(lái)說(shuō),用戶對(duì)數(shù)據(jù)庫(kù)系統(tǒng)的訪問(wèn)都是通過(guò)事務(wù)來(lái)完成的。在傳統(tǒng)的數(shù)據(jù)庫(kù)系統(tǒng)中,一個(gè)事務(wù)由一系列讀寫(xiě)操作組成。事務(wù)處理必須滿足四個(gè)準(zhǔn)則,即原子性、一致性、隔離性和永久性(簡(jiǎn)稱ACID)。移動(dòng)計(jì)算環(huán)境的特點(diǎn),使傳統(tǒng)數(shù)據(jù)庫(kù)系統(tǒng)中的事務(wù)處理技術(shù)不能滿足移動(dòng)事務(wù)處理的要求。
通常,將移動(dòng)客戶機(jī)發(fā)出的事務(wù)叫移動(dòng)事務(wù),它屬于分布事務(wù)。移動(dòng)事務(wù)處理具有以下特點(diǎn):
①移動(dòng)性。這不僅指移動(dòng)事務(wù)執(zhí)行期間,發(fā)出事務(wù)的移動(dòng)客戶機(jī)是移動(dòng)的,而且事務(wù)本身也在相應(yīng)地移動(dòng)。
②長(zhǎng)事務(wù)。由于無(wú)線網(wǎng)絡(luò)通信的低帶寬、高延遲以及移動(dòng)客戶機(jī)的頻繁斷接性,都可能使移動(dòng)事務(wù)成為長(zhǎng)事務(wù)。
③易錯(cuò)性。由于移動(dòng)客戶機(jī)不如固定結(jié)點(diǎn)可靠,而且無(wú)線網(wǎng)絡(luò)通信也不如固定網(wǎng)絡(luò)穩(wěn)定,因此,與一般事務(wù)相比,移動(dòng)事務(wù)更容易出錯(cuò)。
④異構(gòu)性。由于客戶機(jī)的移動(dòng)性,移動(dòng)事務(wù)可能要訪問(wèn)分布的異構(gòu)數(shù)據(jù)庫(kù)系統(tǒng)。
總之,移動(dòng)事務(wù)不同于傳統(tǒng)事務(wù),傳統(tǒng)的ACID模型已不能很好地描述移動(dòng)事務(wù),需要為移動(dòng)事務(wù)尋找更好的模型。維護(hù)數(shù)據(jù)的一致性和解決過(guò)區(qū)切換(handoff)問(wèn)題是移動(dòng)事務(wù)管理的重要任務(wù)。
Agent的研究起源于人工智能領(lǐng)域。Agent是指模擬人類行為與關(guān)系,具有一定智能并能夠自主運(yùn)行和提供相應(yīng)服務(wù)的程序。移動(dòng)Agent是一個(gè)能夠在異構(gòu)網(wǎng)絡(luò)中自主地從一臺(tái)主機(jī)遷移動(dòng)另外一臺(tái)主機(jī),并可與其它Agent或資源交互的程序。實(shí)際上它是Agent技術(shù)與分布式技術(shù)的混血兒。移動(dòng)Agent具有自主性、移動(dòng)性、協(xié)作性、安全性、智能性等特性。
傳統(tǒng)的分布式計(jì)算基于Client/Server體系結(jié)構(gòu),其帶寬耗費(fèi)嚴(yán)重,網(wǎng)絡(luò)負(fù)載不均衡,容錯(cuò)能力較差。移動(dòng)Agent作為全新分布式計(jì)算工具,通過(guò)將自身代碼、狀態(tài)傳送到遠(yuǎn)程主機(jī),并在遠(yuǎn)程主機(jī)執(zhí)行的方式克服了Client/Server方案的不足之處,因而成為分布式計(jì)算的主要發(fā)展方向之一。
與Client/Server方案相比,移動(dòng)Agent具有以下幾大優(yōu)勢(shì):移動(dòng)Agent通過(guò)移動(dòng)到服務(wù)器端工作并把最終數(shù)據(jù)傳回客戶機(jī),可以節(jié)省網(wǎng)絡(luò)帶寬;移動(dòng)Agent減少了費(fèi)時(shí)的網(wǎng)絡(luò)傳輸,并且在規(guī)模較大的數(shù)據(jù)庫(kù)操作中Agent能實(shí)現(xiàn)本地操作,可以節(jié)省時(shí)間;移動(dòng)Agent移動(dòng)到服務(wù)器端直接傳回最終結(jié)果,避免了中間數(shù)據(jù)的傳輸延遲;一旦移動(dòng)Agent從客戶端傳輸?shù)搅硪慌_(tái)主機(jī)上,這臺(tái)機(jī)器就可以和網(wǎng)絡(luò)斷開(kāi)連接直到想回收Agent或再次傳送Agent,即整個(gè)系統(tǒng)可工作在異步方式;移動(dòng)Agent可以輕易地從一個(gè)平臺(tái)移動(dòng)到另一個(gè)平臺(tái),它們帶著自身代碼移動(dòng)到目的機(jī)器上無(wú)須預(yù)先安裝就能運(yùn)行,可以很方便地實(shí)現(xiàn)負(fù)載平衡;移動(dòng)Agent可以感知環(huán)境的變化并作出反應(yīng),多個(gè)移動(dòng)Agent可以動(dòng)態(tài)地調(diào)整分布以維護(hù)最優(yōu)配置。
基于移動(dòng)Agent嵌入式移動(dòng)數(shù)據(jù)庫(kù)改革了傳統(tǒng)的遠(yuǎn)程查詢數(shù)據(jù)庫(kù)的SQL查詢方法,把查詢?nèi)蝿?wù)存儲(chǔ)到一個(gè)可通過(guò)網(wǎng)絡(luò)進(jìn)行移動(dòng)的Agent上,Agent將移動(dòng)到服務(wù)器上,執(zhí)行查詢并在座結(jié)論,然后返回到用戶并打印結(jié)果。在這個(gè)過(guò)程中,我們把查詢?nèi)蝿?wù)分解為單個(gè)的查詢方法,而這些指令在網(wǎng)絡(luò)上的合適地點(diǎn)會(huì)被喚醒并執(zhí)行。通過(guò)將移動(dòng)Agent技術(shù)引入嵌入式移動(dòng)數(shù)據(jù)庫(kù)中,有助于實(shí)現(xiàn)嵌入式移動(dòng)數(shù)據(jù)庫(kù)查詢優(yōu)化。
結(jié)語(yǔ)
移動(dòng)計(jì)算的研究覆蓋了許多領(lǐng)域,如移動(dòng)硬件設(shè)備、移動(dòng)通訊、移動(dòng)聯(lián)網(wǎng)技術(shù)、無(wú)線WWW訪問(wèn)、移動(dòng)數(shù)據(jù)庫(kù)技術(shù)、無(wú)線客戶/服務(wù)器應(yīng)用等。隨著互聯(lián)網(wǎng)和無(wú)線通訊技術(shù)的發(fā)展,移動(dòng)數(shù)據(jù)庫(kù)的需求正在不斷增加,其技術(shù)正在成為國(guó)際數(shù)據(jù)庫(kù)界的一個(gè)研究方向。由于移動(dòng)數(shù)據(jù)庫(kù)自身的移動(dòng)性、斷接性、帶寬的有限性、網(wǎng)絡(luò)通信的非對(duì)稱性以及電源電量的有限性等特性,決定了移動(dòng)計(jì)算環(huán)境不同于傳統(tǒng)的分布計(jì)算。Agent技術(shù)是計(jì)算機(jī)領(lǐng)域的一個(gè)研究熱點(diǎn),是一個(gè)能獨(dú)立運(yùn)行的智能體?,F(xiàn)在,將移動(dòng)Agent技術(shù)應(yīng)用于分布式系統(tǒng)和網(wǎng)絡(luò)管理等方面取得了很好的效果??傊?,隨著人們對(duì)信息需求的不斷增加,無(wú)線網(wǎng)絡(luò)和通信技術(shù)的不斷進(jìn)步,移動(dòng)數(shù)據(jù)庫(kù)領(lǐng)域的研究大有希望,必將為人類帶來(lái)巨大的商業(yè)和社會(huì)價(jià)值。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論