趙云霞
摘要:隨著數據庫技術的發(fā)展,數據庫技術與其他學科的內容相結合,是新一代數據庫技術的一個顯著特征,主動數據庫由于其相對傳統(tǒng)數據庫具有能主動提供服務的優(yōu)勢而得到了迅猛發(fā)展。本文從主動數據庫的產生、構成、實現、研究進展及其應用五個方面對其進行了闡述。
關鍵詞:傳統(tǒng)數據庫;主動數據庫
1 引言
數據庫系統(tǒng)已從第一代的網狀、層狀數據庫系統(tǒng),第二代的關系數據庫系統(tǒng),發(fā)展到第三代以面向對象模型為主要特征的數據庫系統(tǒng)。數據庫技術與網絡通信技術、人工智能技術、面向對象程序設計技術、并行計算機技術等互相滲透,互相結合,成為當前數據庫技術發(fā)展的主要特征。
主動數據庫自20世紀80年代初被提出后,因為能較好地滿足計算機集成制造、網絡管理、辦公自動化等眾多應用領域的特殊需要,受到了廣泛的關注,已成為數據庫領域的一個研究熱點。
2 主動數據庫的產生
傳統(tǒng)的數據庫所作出的一切響應都是針對用戶所作出的指令而進行的,數據庫本身不會根據自身狀態(tài)主動進行操作。在實際應用領域中,如管理系統(tǒng)、辦公自動化系統(tǒng)等,用戶希望數據庫在緊急的情況下能根據當前狀態(tài)主動做出反應,進行相關操作,使得用戶能及時了解數據庫的情況并作出合適的操作。但是傳統(tǒng)的數據庫對此無能為力,無法主動向用戶提供信息。
因此,在傳統(tǒng)數據庫的基礎上,計算機工作者結合人工智能技術和面向對象技術提出了主動數據庫。主動數據庫不僅能提供一切傳統(tǒng)數據庫所能提供的服務,而且能主動對用戶提供服務。
3 主動數據庫的構成
主動數據庫系統(tǒng)(ADBS)由三部分構成,一個是傳統(tǒng)數據庫系統(tǒng)(DBS),一個是事件驅動的知識庫(EB),另外一個是相應的事件監(jiān)視器(EM)。即:ADBS=DBS+EB+EM。其中,EB是一組由事件驅動的知識的集合,每一項知識表示在相應的事件發(fā)生時,如何來主動地執(zhí)行其中包含的由用戶預先設定的動作。EM是一個隨時監(jiān)視EB中的事件是否已經發(fā)生的監(jiān)視模塊,一旦監(jiān)視到某事件已經發(fā)生時就主動地觸發(fā)系統(tǒng),按EB中指明的相應知識執(zhí)行其中預先設定的動作。EB中知識表示形式的不同, 將獲得各種不同的主動行為,在目前常采用事件驅動的“條件——動作”規(guī)則表示這種知識。每條“條件——動作”規(guī)則指明什么條件下執(zhí)行什么動作。
4 主動數據庫管理系統(tǒng)的實現
傳統(tǒng)的主動數據庫管理系統(tǒng)一般采用“事件——條件——動作”模式,獨立地進行DBMS全部功能的設計實現;或在原有的DBMS的基礎上添加主動機制,使原來的DBMS具有主動性,能夠主動地實現動態(tài)修改和主動適應的功能。目前大多數ADBMS都采用“事件驅動”、“規(guī)則匹配”的機制來實現,如哈弗大學的CPLEX,IBM公司的SIARBURST。
傳統(tǒng)的ADBMS在實際應用中存在開發(fā)難度大、周期長、無法利用已有的歷史數據的不足之處。如果直接利用已有的數據而又能使傳統(tǒng)的數據庫系統(tǒng)具有主動性就能夠解決上面的問題,既可以節(jié)約資金又可以與現有數據庫系統(tǒng)兼容。這個問題的解決辦法是最近的研究重點,比較典型的方法主要有以下幾種:
4.1 基于組件的主動數據庫
基于組件的ADBMS實現方法直接利用已有的DBMS完成數據組織、共享資源等方面的功能,在數據連接層加入一個中間層組件監(jiān)視系統(tǒng)發(fā)生的變化,并將這些變化實時地傳給系統(tǒng)的事件監(jiān)視器,當事件監(jiān)視器發(fā)現有系統(tǒng)定義的事件發(fā)生時自動進行條件匹配,如果匹配成功,則觸發(fā)相應的動作執(zhí)行。
4.2 基于圖的主動數據庫規(guī)則模型的E-RG
此模型基于規(guī)則執(zhí)行的時間關系,引入“依次關系”、“同步關系”與“并發(fā)關系”,將多個C-A規(guī)則按時間語義關系組成規(guī)則圖(Rule Graph)RG,相同的規(guī)則集可對應不同的RG,分別聯系于不同的事件,從而形成一種E-RG主動規(guī)則。E-RG主動規(guī)則的語義可表示為;事件E的發(fā)生觸發(fā)規(guī)則圖RG的執(zhí)行,RG的執(zhí)行滿足RG所含的時序關系,執(zhí)行的耦合方式包括“立即”、“推遲”、“分離”。
4.3 基于動態(tài)模糊邏輯的主動數據庫
基于動態(tài)模糊邏輯的主動數據庫系統(tǒng)引入了動態(tài)模糊數據的概念,它由一個DF數據庫(DFDBS)外加一個DF事件驅動規(guī)則庫(DFEB)及其相應的DF事件監(jiān)視器(DFEM)組成。即:DFADBS=DFDBS+DFEB+DFEM
4.4 分布式主動數據庫
分布式主動數據庫(DADB)的出現是應用的具體需求和分布式數據庫與主動數據庫互相融合、共同發(fā)展的結果。
5 主動數據庫的研究進展
實習主動數據庫的關鍵技術在于它的條件檢測技術,能否有效地對事件進行自動監(jiān)督,使得各種事件一旦發(fā)生就很快被發(fā)覺,從而觸發(fā)執(zhí)行相應的規(guī)則。此外,如何擴充傳統(tǒng)的數據庫系統(tǒng),使之能描述、存儲、管理ECA規(guī)則,適應于主動數據庫;如何構造執(zhí)行模型,也就是說ECA規(guī)則的處理和執(zhí)行方式;如何進行事務調度,使之不僅能滿足開發(fā)環(huán)境下的可串行話要求,而且滿足對事務時間方面的要求;如何在傳統(tǒng)數據庫管理系統(tǒng)的基礎上擴充事務管理部件和對象管理部件以支持執(zhí)行模型和知識模型并增加事件偵測、條件檢測和規(guī)則管理等部件從而形成主動數據庫的體系結構;如何提高系統(tǒng)的整體效率等都是主動數據庫需要集中研究解決的問題。
“主動數據庫”它的一個很突出的思想是要讓數據庫系統(tǒng)具有各種主動進行服務的功能,并以一種統(tǒng)一而方便的機制來實現各種主動性需求,即要求把這些主動性功能用一種統(tǒng)一的方法與原有的數據庫功能集成在一個數據庫系統(tǒng)中。目前為止,這種機制主要是通過將一些規(guī)則嵌入數據庫系統(tǒng)的辦法來實現,目前人們研究工作主要集中在主動數據庫的實現模式和方法上。
6 主動數據庫的應用
雖然還處于研究的初級階段,但主動數據庫在計算機集成制造、網絡管理、辦公自動化等眾多應用領域都有著廣泛的應用。例如,在一些商品化的數據庫管理系統(tǒng)中,如Oracle和Sybase等數據庫系統(tǒng),在某種意義上都引入了主動處理的功能。另外,主動性概念正在被引入各種與數據庫關系密切的領域中,因為人們發(fā)現這種主動性機制可方便地用來實現實時數據庫、合作數據庫、動態(tài)數據庫和演繹數據庫等。另外,在電網監(jiān)控等工業(yè)應用方面,主動數據庫也有廣泛應用。
主動數據庫已成為數據庫技術中一個活躍的研究領域,近年來的研究已取得很大的成果,雖然還有許多概念尚不成熟,技術問題還有待進一步研究解決,但它有著廣泛的研究應用前景。