摘 要:針對于無線傳感器網(wǎng)絡(luò)在監(jiān)控應(yīng)用方面的特點以及現(xiàn)有被動對象模型存在的不足,提出了基于事件驅(qū)動的主動數(shù)據(jù)庫模型。本文研究了無線傳感器網(wǎng)絡(luò)(WSN)的實時監(jiān)控、檢測方面的應(yīng)用,并且考慮到WSN最關(guān)心的節(jié)能問題,由此將無線傳感器網(wǎng)絡(luò)數(shù)據(jù)庫設(shè)計成一種基于事件驅(qū)動的主動數(shù)據(jù)庫。通過增加自定義的事件驅(qū)動的支持,從而增強(qiáng)了節(jié)點的智能性,大大減少了數(shù)據(jù)的傳輸進(jìn)而提高了節(jié)點的使用壽命。
關(guān)鍵詞:事件驅(qū)動;主動對象;事件;主動數(shù)據(jù)庫;無線傳感器網(wǎng)絡(luò)
中圖分類號:TP332
隨著無線傳感器網(wǎng)絡(luò)數(shù)據(jù)庫的發(fā)展,針對于WSN在實時監(jiān)測方面的應(yīng)用,傳統(tǒng)的數(shù)據(jù)庫已遠(yuǎn)遠(yuǎn)不能滿足現(xiàn)有的需求,因為它只是提供了數(shù)據(jù)的集中式被動訪問,而數(shù)據(jù)判斷以及數(shù)據(jù)分析的過程都只能在外部基站管理系統(tǒng)來統(tǒng)一控制。眾所周知,WSN的數(shù)據(jù)傳輸十分消耗能量。統(tǒng)計數(shù)據(jù)表明,發(fā)送1bit數(shù)據(jù)的能耗大約相當(dāng)于執(zhí)行200-2900指令的能耗。通常由電池供電的無線傳感器網(wǎng)絡(luò)節(jié)點能量是非常有限的,當(dāng)能量耗盡的時候也就是WSN節(jié)點使用壽命和作用價值的終止。因此,研究基于事件驅(qū)動的主動數(shù)據(jù)庫在節(jié)點實現(xiàn)數(shù)據(jù)處理具有很強(qiáng)的現(xiàn)實意義。
本文研究了基于事件驅(qū)動的主動數(shù)據(jù)庫在無線傳感器網(wǎng)絡(luò)的應(yīng)用。利用事件監(jiān)視器監(jiān)測外部環(huán)境,只有在所定義的事件發(fā)生的時候才向基站發(fā)送信息。與傳統(tǒng)的查詢式的數(shù)據(jù)庫處理相比,大大減少了冗余的數(shù)據(jù)傳輸,從而十分有效的減少了能量的消耗,提高了網(wǎng)絡(luò)資源的利用率。
1 主動數(shù)據(jù)庫簡介
主動數(shù)據(jù)庫與傳統(tǒng)數(shù)據(jù)庫相比是“被動的”。在數(shù)據(jù)的存儲與檢索等方面?zhèn)鹘y(tǒng)數(shù)據(jù)庫已經(jīng)能為各種用戶提供好的數(shù)據(jù)支持,但數(shù)據(jù)本身是被動的,即它只能被動的根據(jù)用戶給出的請求執(zhí)行相應(yīng)的數(shù)據(jù)庫操作,自己不會根據(jù)數(shù)據(jù)庫的狀態(tài)主動的提供服務(wù),因而是被動的。
在實際應(yīng)用領(lǐng)域其實存在著各種各樣的主動性需求,如主動地提出警告、主動檢索、主動實時地實現(xiàn)某些動態(tài)修改等。這些需求就要求數(shù)據(jù)庫不僅僅具有存儲數(shù)據(jù)的功能,還要能夠主動處理異常情況,當(dāng)某一特定事件發(fā)生的時候能主動的執(zhí)行相應(yīng)的操作。針對于這一需求的增加,主動數(shù)據(jù)庫這一技術(shù)應(yīng)運(yùn)而生。它是在傳統(tǒng)數(shù)據(jù)庫的基礎(chǔ)上,通過現(xiàn)代數(shù)據(jù)庫技術(shù)與人工智能技術(shù)相結(jié)合得到的產(chǎn)物,是目前數(shù)據(jù)庫技術(shù)中一個新的方向。它除了能夠完成傳統(tǒng)數(shù)據(jù)庫完成的服務(wù),還能夠提供各種主動服務(wù)的功能,大大滿足了人們不斷增長的需求。
一個主動數(shù)據(jù)庫系統(tǒng)(ADBS)是在傳統(tǒng)數(shù)據(jù)庫系統(tǒng)(DBS)的基礎(chǔ)上,增加了事件驅(qū)動的知識庫(EB)和事件監(jiān)測器(EM)。
其中DBS是一個傳統(tǒng)的數(shù)據(jù)庫系統(tǒng),用來存儲數(shù)據(jù)和對數(shù)據(jù)進(jìn)行維護(hù)管理和運(yùn)用。事件庫EB是一組由事件驅(qū)動的知識的集合,每一項知識表示在相應(yīng)的事件發(fā)生時,如何來主動的執(zhí)行其中包含的由用戶預(yù)先設(shè)定的動作。EM是一個隨時監(jiān)控EB中的事件是否已經(jīng)發(fā)生的監(jiān)測模塊,一旦監(jiān)測到某事件已經(jīng)發(fā)生時就主動地觸發(fā)系統(tǒng),按EB中指明的相應(yīng)知識執(zhí)行其中預(yù)先設(shè)定的動作。知識庫包括事件庫和規(guī)則庫。目前主要采用基于事件驅(qū)動的“事件-條件-動作”規(guī)則,即ECA規(guī)則模型。該規(guī)則模型中每個規(guī)則描述了某個事件在什么條件下執(zhí)行什么動作。主動數(shù)據(jù)庫系統(tǒng)對傳統(tǒng)的數(shù)據(jù)庫系統(tǒng)進(jìn)行了擴(kuò)展,增加了事件和觸發(fā)規(guī)則。當(dāng)事件監(jiān)視器監(jiān)視到所定義事件的發(fā)生時,根據(jù)規(guī)則的描述執(zhí)行相應(yīng)的動作,從而使得數(shù)據(jù)庫系統(tǒng)實現(xiàn)了主動處理事務(wù)的需求。
2 無線傳感器網(wǎng)絡(luò)的主動數(shù)據(jù)庫
針對于對無線傳感器在監(jiān)測方面的特點,結(jié)合一般的主動數(shù)據(jù)庫系統(tǒng),實現(xiàn)基于事件驅(qū)動的主動數(shù)據(jù)庫在無線傳感器的應(yīng)用。監(jiān)測性的傳感器網(wǎng)絡(luò)主要用于實時收集一些檢測數(shù)據(jù)。有些對我們來說是無用的、多余的數(shù)據(jù)也收集到基站。這些數(shù)據(jù)由一般節(jié)點到匯聚節(jié)點再到基站的傳輸過程中無疑浪費(fèi)了很多的資源和能量。這時候如果按照傳統(tǒng)的數(shù)據(jù)收集的方法勢必會產(chǎn)生大量的冗余數(shù)據(jù)。如果我們采用主動數(shù)據(jù)庫的數(shù)據(jù)處理方式來處理數(shù)據(jù),該系統(tǒng)只會在所檢測的定義事件發(fā)生時,才主動的向基站發(fā)送信息。采用這種主動的數(shù)據(jù)處理方式,不僅大大減少了數(shù)據(jù)量的傳輸,而且增加了效率。
無線傳感網(wǎng)絡(luò)的每一個節(jié)點上都存儲著自己所維護(hù)的數(shù)據(jù),存儲節(jié)點之間通過自組織的方式建立無線網(wǎng)絡(luò),這些節(jié)點上存儲的數(shù)據(jù)共同構(gòu)成了一個分布式的無線傳感器網(wǎng)絡(luò)數(shù)據(jù)庫。具備各種主動功能是主動數(shù)據(jù)庫的一個很突出的特點,它以主動規(guī)則的機(jī)制來實現(xiàn)各種主動性需求。要實現(xiàn)主動數(shù)據(jù)庫的特征,最簡單的實現(xiàn)方案是在現(xiàn)有的WSN傳統(tǒng)數(shù)據(jù)庫系統(tǒng)基礎(chǔ)上增加知識庫和事件監(jiān)測器。
在原有WSN數(shù)據(jù)庫管理系統(tǒng)的基礎(chǔ)上進(jìn)行改造,為此只需在原有數(shù)據(jù)庫管理系統(tǒng)之外增加一個優(yōu)先級高的獨立進(jìn)程來實現(xiàn)事件監(jiān)視器,以保證它總能經(jīng)常地被運(yùn)行,起到主動監(jiān)視各種事件發(fā)生的作用。
傳統(tǒng)數(shù)據(jù)庫包含系統(tǒng)必需的所有表數(shù)據(jù)為主動數(shù)據(jù)庫提供了數(shù)據(jù)基礎(chǔ)。知識庫包括事件庫和規(guī)則庫,其中事件庫中主要包含基本事件和復(fù)合事件。其中,復(fù)合事件可以根據(jù)基本事件的不同組合構(gòu)成。例如監(jiān)測數(shù)據(jù)變化、數(shù)據(jù)越界和報警信息等級躍遷等基本處理信息都可以是事件。知識庫中的事件和規(guī)則可以根據(jù)需求的不同進(jìn)行更新。數(shù)據(jù)庫系統(tǒng)中用戶可以根據(jù)事件組合規(guī)則自定義成復(fù)雜的事件,也可以根據(jù)相應(yīng)的事件制定相應(yīng)的規(guī)則。事件監(jiān)測器如果檢測到有事件發(fā)生則根據(jù)ECA規(guī)則庫中的規(guī)則來自動執(zhí)行相應(yīng)動作,根據(jù)其定義的規(guī)則,在數(shù)據(jù)庫管理系統(tǒng)中加入其對應(yīng)的SQL代碼實現(xiàn)執(zhí)行動作。這樣,實現(xiàn)主動數(shù)據(jù)庫系統(tǒng)能提高系統(tǒng)運(yùn)行效率,不需對原有的WSN實時數(shù)據(jù)庫系統(tǒng)進(jìn)行很大的改動,也不影響WSN系統(tǒng)其他應(yīng)用功能。
在系統(tǒng)運(yùn)行過程中,每隔一個特定的時間間隔,讀取各種傳感器(例如,消防監(jiān)測報警系統(tǒng),系統(tǒng)中主要包括濕度傳感器、溫度傳感器、光傳感器等)的狀態(tài)值,主動數(shù)據(jù)庫實現(xiàn)系統(tǒng)傳感器監(jiān)測狀態(tài)的更新,其內(nèi)部的事件監(jiān)測器不斷監(jiān)測事件庫中定義的事件是否發(fā)生,一旦監(jiān)視到某個事件(如數(shù)據(jù)越界、數(shù)據(jù)報警)發(fā)生,主動地觸發(fā)規(guī)則庫中的規(guī)則,按照規(guī)則中預(yù)設(shè)定的動作處理事件并向基站發(fā)送報警信息。從而實現(xiàn)主動處理數(shù)據(jù)的功能。
3 結(jié)束語
主動數(shù)據(jù)庫已經(jīng)成為數(shù)據(jù)庫技術(shù)的一個熱點研究領(lǐng)域,雖然主動數(shù)據(jù)庫還有一些急需解決的技術(shù)問題,但在無線傳感器網(wǎng)絡(luò)中,事件驅(qū)動的數(shù)據(jù)處理是一個重要的研究領(lǐng)域。為了確保數(shù)據(jù)從節(jié)點以低能量消耗、低延時的方式傳輸?shù)絽R聚節(jié)點,需選取重要的數(shù)據(jù),需要在系統(tǒng)中的監(jiān)測器和事件優(yōu)先級方面進(jìn)行合理的設(shè)計,這樣能更好的讓主動數(shù)據(jù)庫在WSN系統(tǒng)中得到應(yīng)用。
參考文獻(xiàn):
[1]梁俊斌,鄧雨榮,郭麗娟.無線傳感器網(wǎng)絡(luò)中事件驅(qū)動數(shù)據(jù)收集研究進(jìn)展[J].計算機(jī)應(yīng)用研究,2012.
[2]朱蘇興,宋志.主動數(shù)據(jù)庫系統(tǒng)及其事件監(jiān)測器的實現(xiàn)[M].福建電腦,2007(05).
[3]朱冰,梅宏,楊芙清.基于事件驅(qū)動的主動對象模型[J].軟件學(xué)報,1996.
[4]李相樞,王瑤.無線傳感器網(wǎng)絡(luò)中的數(shù)據(jù)庫技術(shù)[J].重慶大學(xué)學(xué)報,2005.
[5]張以維,寧洪.無線傳感器網(wǎng)絡(luò)數(shù)據(jù)庫的研究[J].計算機(jī)工程與科學(xué),2006.
[6]方磊,黃韜,舒堅.事件驅(qū)動型無線傳感器網(wǎng)絡(luò)能量監(jiān)測機(jī)制研究[J].傳感器與微系統(tǒng),2008.
[7]滑楠,史浩山.QISM一種基于中間件和服務(wù)的無線傳感器網(wǎng)絡(luò)主動QoS體系[J].傳感技術(shù)學(xué)報,2007.
[8]畢利.主動數(shù)據(jù)庫的模型及實現(xiàn)途徑[J].計算機(jī)工程,2000.
作者簡介:李敏(1990.10-),女,湖北枝江人,碩士研究生,研究方向:網(wǎng)絡(luò)數(shù)據(jù)庫。
作者單位:長江大學(xué) 計算機(jī)科學(xué)學(xué)院,湖北荊州 434023