【摘要】隨著移動通信技術和移動計算機的快速發(fā)展,移動計算和移動數(shù)據(jù)庫越來越受到人們重視。本文分析了移動數(shù)據(jù)庫相關技術,并且討論了給予Modile Agent移動數(shù)據(jù)庫模型的關鍵技術。
【關鍵詞】移動計算;移動數(shù)據(jù)庫;移動代理
【中圖號】TP393.0【文獻標示碼】A【文章編號】1005-1074(2009)03-0054-01
目前,隨著移動通信技術的迅速發(fā)展和投入使用,加上移動計算機的大量普及,使得許多計算節(jié)點已經可以在自由移動的過程中與網(wǎng)絡建立連接,使上述這些假設條件不再成立。于是,“移動計算”和“移動數(shù)據(jù)庫”的概念就這樣產生了,并正在成為一個新興的熱點研究領域。本文分析了移動數(shù)據(jù)庫以及Mobile Agent的概念及其技術,后又根據(jù)Mobile Agent特點應用到移動數(shù)據(jù)庫中。
1移動數(shù)據(jù)庫概述
移動計算:移動設備的大量普及和無線通信技術的迅速發(fā)展是移動計算出現(xiàn)和成為主流技術的前提和基礎。近年來無線通信技術的發(fā)展,也是推動移動計算技術走向實際應用的重要力量。移動計算環(huán)境就是移動設備通過無線或固定網(wǎng)絡與固定或其他移動設備連接的計算環(huán)境,移動計算是分布計算在移動計算環(huán)境上的擴展。移動通信與聯(lián)網(wǎng)技術的進步是移動計算環(huán)境得以產生和發(fā)展的基礎。目前,正在或已經投入使用的移動通信技術有:模擬蜂窩通信系統(tǒng),數(shù)字蜂窩通信系統(tǒng),無線局域網(wǎng),紅外技術和衛(wèi)星網(wǎng)絡。與基于固定網(wǎng)絡的傳統(tǒng)分布計算環(huán)境相比,移動計算環(huán)境具有以下幾個主要特點,即移動性、頻繁斷接性、網(wǎng)絡條件多樣性、網(wǎng)絡通信的非對稱性、移動計算機的電源能力有限、可靠性較低和規(guī)模需較大。
2Mobile Agent相關技術
眾多學者關于Agent定義有很多說法,但是普遍認為是具有目標、知識和一定的思維能力,能作用和受作用于外部環(huán)境,可以維持某種狀態(tài)即保存與自身行為有關的各種數(shù)據(jù)信息,并能夠與其它相互協(xié)作的物理或邏輯實體。應具備的基本特性包括:自治性、社會能力、反應能力、自發(fā)行為等等。按照上面分析,則Mobile Agent是一個獨立運行的計算機程序,它可自主地在異構的網(wǎng)絡上按照一定的規(guī)程移動,尋找合適的計算資源、信息資源或軟件資源,利用與這些資源處于同一主機或網(wǎng)絡的優(yōu)勢,就近處理或使用這些資源,代表用戶完成特定的任務。Mobile Agent是代碼、數(shù)據(jù)以及執(zhí)行語境的軟件包,可以在執(zhí)行過程中,有目的地、自主地在網(wǎng)絡中移動,利用與分布資源的局部交互而完成分布任務的軟件實體。
顯然,應用天然就是一種分布式應用。在概念上,一個基于的應用由一組構成正如一個面向對象的應用由一組對象構成,每一個根據(jù)自身的目標和環(huán)境的狀況移動到擁有計算所需資源的節(jié)點上進行計算。
3Mobile Agent在移動數(shù)據(jù)庫中的應用
基于Mobile Agent的移動數(shù)據(jù)庫系統(tǒng)沒有一個全局的事務管理器。應用程序通過來訪問數(shù)據(jù)庫,但Mobile Agent也不與數(shù)據(jù)庫系統(tǒng)直接進行交互。每個數(shù)據(jù)庫系統(tǒng)配有一個數(shù)據(jù)庫Agent,這種數(shù)據(jù)庫Agent屬于靜止。它主要用作對數(shù)據(jù)庫的訪問,負責維護數(shù)據(jù)庫系統(tǒng)的一致性,并在發(fā)生故障時進行恢復處理。在每個數(shù)據(jù)庫Agent內部提供一組預定義的原語數(shù)據(jù)庫方法,應用程序通過移動Mobile Agent到提供數(shù)據(jù)服務的服務器端,通過Agent之間的通訊機制與服務器端的數(shù)據(jù)庫Agent進行交換,并把事務提交給數(shù)據(jù)庫。數(shù)據(jù)庫Agent根據(jù)提交的事務完成對數(shù)據(jù)庫的訪問,并且把訪問結果返回給Mobile Agent。Mobile Agent帶著訪問結果或不成功信息通過網(wǎng)絡回送給提出請求的客戶機。由此可見,基于的移動數(shù)據(jù)庫模型應具有以下特點,基于Agent的系統(tǒng)是分布并且是異步的,不需要一個全局事務管理器,因而整個計算環(huán)境是開放和可擴展的;數(shù)據(jù)庫Agent提供的接口是一組原語方法,而不是簡單的讀寫操作;不僅Mobile Agent與數(shù)據(jù)庫Agent相互通信和協(xié)作,而且與其它Mobile Agent要進行通訊和協(xié)作,因此Mobile Agent不能象一個隔離事務那樣執(zhí)行;每個Agent(包括Mobile Agent和數(shù)據(jù)庫Agent)都是在自己的本地數(shù)據(jù)上下文環(huán)境中運行的;Agent必須是一個具有魯棒性的可恢復的對象。在出現(xiàn)故障時,不在移動數(shù)據(jù)庫系統(tǒng)中,多個Agent可以并發(fā)地訪問共享資源,這種共享訪問要求基于Agent的系統(tǒng)必須提供并發(fā)控制機制。Agent的并發(fā)控制必須維護兩種正確性,結構正確性和數(shù)據(jù)正確性。結構正確性是指根據(jù)Agent的控制流程規(guī)范來維持Agent的結構屬性數(shù)據(jù)正確性則是維護共享資源的一致性,通常由一些完整約束來描述。在基于在基于的系統(tǒng)中,一致性的維護包括兩個方面:維護每個數(shù)據(jù)庫系統(tǒng)的一致性,這是傳統(tǒng)的數(shù)據(jù)庫系統(tǒng)也提供的功能;維護每個Agent本地數(shù)據(jù)的一致性,這是因為Agent內部的方法可以并發(fā)執(zhí)行,而且其他Agent也可能來訪問本地數(shù)據(jù)。
其中,每個數(shù)據(jù)庫系統(tǒng)的一致性主要由數(shù)據(jù)庫Agent來維護。它由數(shù)據(jù)庫Agent內部的某些原語操作方法來保證而客戶機上復制數(shù)據(jù)庫的一致性由該客戶機上創(chuàng)建的Mobile Agent應用來維護。每個Agent本地數(shù)據(jù)的一致性由Agent內部的某些方法來保證。其實,每個Agent都可以看作是一個對象,它所攜帶的本地數(shù)據(jù)可以看作是它的屬性而它的內部方法則是用來保證通訊、提交事務,并發(fā)控制和安全驗證的手段。
移動通信與聯(lián)網(wǎng)技術的進步是移動計算環(huán)境得以產生和發(fā)展的基礎。近年來,移動通信與聯(lián)網(wǎng)技術已得到迅速的發(fā)展,并得到了廣泛的應用。本文首先對移動計算、移動計算環(huán)境下的數(shù)據(jù)庫進行了研究和學習,針對其特性和的特點,將Mobile Agent應用在移動數(shù)據(jù)庫中,以滿足移動數(shù)據(jù)的計算特點。