時(shí)間:2022-12-09 16:30:02 | 來(lái)源:信息時(shí)代
時(shí)間:2022-12-09 16:30:02 來(lái)源:信息時(shí)代
主動(dòng)數(shù)據(jù)庫(kù)應(yīng)用 : 主動(dòng)數(shù)據(jù)庫(kù)在許多領(lǐng)域,例如管理信息系統(tǒng)、辦公自動(dòng)化系統(tǒng)、決策支持系統(tǒng)、協(xié)同工作、網(wǎng)絡(luò)管理、過(guò)程控制、空中交通管制、野戰(zhàn)數(shù)字化系統(tǒng)等有著廣泛的應(yīng)用,這些應(yīng)用都需要主動(dòng)數(shù)據(jù)庫(kù)系統(tǒng)中主動(dòng)功能的支持。
在主動(dòng)數(shù)據(jù)庫(kù)應(yīng)用中,應(yīng)用程序的部分語(yǔ)義可以轉(zhuǎn)換為主動(dòng)規(guī)則,并交給主動(dòng)數(shù)據(jù)庫(kù)集中管理。這給主動(dòng)數(shù)據(jù)庫(kù)的應(yīng)用和開(kāi)發(fā)提供了如下便利:
(1)事件的主動(dòng)響應(yīng)行為??梢员苊獗粍?dòng)數(shù)據(jù)庫(kù)應(yīng)用中那種昂貴的輪詢機(jī)制。
(2)數(shù)據(jù)庫(kù)能夠保持一種獨(dú)特的一致行為。可以強(qiáng)制所有應(yīng)用程序都不能違反通過(guò)主動(dòng)規(guī)則建立的數(shù)據(jù)管理策略,使數(shù)據(jù)庫(kù)獨(dú)立于應(yīng)用程序。
(3)應(yīng)用程序的模塊化程度和靈活性得以提高。實(shí)際應(yīng)用中隨需求變化的語(yǔ)義,可以顯式地表示為規(guī)則。不需要修改應(yīng)用程序,僅修改這些規(guī)則,就可以滿足新的要求。
(4)使用主動(dòng)數(shù)據(jù)庫(kù)系統(tǒng)可以改善應(yīng)用建模過(guò)程。因?yàn)樵趯?shí)際應(yīng)用中很多方面可以自然直觀地轉(zhuǎn)換為規(guī)則,這在某種程度上可以促進(jìn)主動(dòng)應(yīng)用的設(shè)計(jì)過(guò)程。
按照主動(dòng)規(guī)則服務(wù)對(duì)象的不同,可以將主動(dòng)數(shù)據(jù)庫(kù)的應(yīng)用歸為兩類:
(1)面向數(shù)據(jù)庫(kù)本身的應(yīng)用:面向數(shù)據(jù)庫(kù)本身的應(yīng)用有時(shí)也分為內(nèi)部應(yīng)用和擴(kuò)展應(yīng)用。內(nèi)部應(yīng)用主要采用主動(dòng)規(guī)則實(shí)現(xiàn)一些傳統(tǒng)數(shù)據(jù)庫(kù)系統(tǒng)所支持的功能; 而擴(kuò)展應(yīng)用針對(duì)的是一些新穎的或者是非標(biāo)準(zhǔn)的數(shù)據(jù)庫(kù)任務(wù)??梢杂弥鲃?dòng)規(guī)則來(lái)實(shí)現(xiàn)的數(shù)據(jù)庫(kù)功能有: ①維護(hù)完整性約束。完整性約束規(guī)則可以在數(shù)據(jù)庫(kù)操作可能違反約束的時(shí)候觸發(fā),規(guī)則條件檢查完整性約束是否有效,規(guī)則動(dòng)作則可以終止相關(guān)事務(wù)阻止違反約束的操作,或者是修復(fù)不一致的數(shù)據(jù)庫(kù)狀態(tài)。②維護(hù)導(dǎo)出數(shù)據(jù)和物化視圖。ECA規(guī)則可以用來(lái)保持導(dǎo)出數(shù)據(jù)和物化視圖與原始數(shù)據(jù)庫(kù)之間的一致性。規(guī)則可以監(jiān)視數(shù)據(jù)庫(kù)的變化,當(dāng)數(shù)據(jù)庫(kù)發(fā)生更新時(shí),規(guī)則動(dòng)作可以重新計(jì)算導(dǎo)出的數(shù)據(jù)或者是物化的視圖。③支持?jǐn)?shù)據(jù)集成。在分布式系統(tǒng)中,視圖可以用來(lái)集成分布式的、異構(gòu)的、多個(gè)數(shù)據(jù)源的數(shù)據(jù)。分布式系統(tǒng)組件之間的更改通知可以通過(guò)規(guī)則傳遞。這方面的例子有數(shù)據(jù)倉(cāng)庫(kù)。④版本管理和復(fù)制管理。ECA規(guī)則可以用來(lái)保持關(guān)系模式不同版本之間的一致性,將一個(gè)版本中的更改傳遞給另一個(gè)版本。⑤數(shù)據(jù)訪問(wèn)授權(quán)管理。規(guī)則事件可以檢測(cè)受權(quán)限控制的數(shù)據(jù)庫(kù)操作,規(guī)則條件可以檢查操作用戶是否有執(zhí)行該操作的權(quán)限,而規(guī)則動(dòng)作可以在無(wú)權(quán)訪問(wèn)的情況下終止事務(wù),并在另一個(gè)獨(dú)立的事務(wù)中記錄未授權(quán)的訪問(wèn)。⑥其他需要被動(dòng)數(shù)據(jù)庫(kù)管理系統(tǒng)內(nèi)部專門的子系統(tǒng)才能完成的功能,如統(tǒng)計(jì)數(shù)據(jù)信息、查詢優(yōu)化等。
(2)面向特定領(lǐng)域或問(wèn)題的外部應(yīng)用:在特定領(lǐng)域,采用主動(dòng)規(guī)則可以獲得自動(dòng)反應(yīng)行為。在這種情況下,主動(dòng)規(guī)則的實(shí)施通常與數(shù)據(jù)庫(kù)內(nèi)部出現(xiàn)的情形,或者是監(jiān)控設(shè)備記錄的數(shù)據(jù)庫(kù)的外部情況相結(jié)合。所涉及的問(wèn)題和領(lǐng)域有: 金融投資管理、醫(yī)療保險(xiǎn)管理、自動(dòng)制造、交通管理、網(wǎng)絡(luò)管理、信息系統(tǒng)管理、設(shè)備監(jiān)控、故障報(bào)警等等。主動(dòng)規(guī)則提供的主動(dòng)服務(wù)主要包括: ①情形監(jiān)控。對(duì)特定事件或條件所標(biāo)志的情形進(jìn)行監(jiān)視,探測(cè)事件的發(fā)生,評(píng)估條件的變化,一旦特殊的情形出現(xiàn)就執(zhí)行相應(yīng)的動(dòng)作或處理。②異常報(bào)警。應(yīng)用程序在預(yù)先確定的狀態(tài)和條件下運(yùn)行,一旦發(fā)生例外就自動(dòng)通知應(yīng)用程序或用戶。③支持實(shí)時(shí)處理。實(shí)現(xiàn)各種與時(shí)間有關(guān)的事件和條件的監(jiān)控,例如自動(dòng)控制、協(xié)作導(dǎo)航、定時(shí)限制與實(shí)時(shí)調(diào)度等。④支持協(xié)同工作。在工程型和時(shí)間關(guān)鍵型等許多應(yīng)用領(lǐng)域,往往是多個(gè)應(yīng)用彼此通信、協(xié)同工作,共同完成任務(wù),其中的通信與協(xié)同可以借助主動(dòng)規(guī)則的機(jī)制來(lái)實(shí)現(xiàn)。在這方面比較典型的應(yīng)用是工作流管理。主動(dòng)規(guī)則可以用來(lái)提供靈活的工作流建模機(jī)制,為工作流的制定提供清晰的操作語(yǔ)義。通過(guò)主動(dòng)規(guī)則執(zhí)行任務(wù)調(diào)度及任務(wù)間數(shù)據(jù)的自動(dòng)傳遞。
為了支持主動(dòng)性功能,在SQL3標(biāo)準(zhǔn)中也增加了觸發(fā)器功能,從而在數(shù)據(jù)庫(kù)標(biāo)準(zhǔn)上實(shí)現(xiàn)了對(duì)主動(dòng)數(shù)據(jù)庫(kù)的支持。SQL3中的觸發(fā)器是按照主動(dòng)規(guī)則的模式“事件-條件-動(dòng)作”定義的。觸發(fā)的事件為對(duì)數(shù)據(jù)的更新操作,條件為任意的SQL謂詞,動(dòng)作為SQL語(yǔ)句序列。觸發(fā)器中規(guī)定了事件發(fā)生時(shí)觸發(fā)規(guī)則的時(shí)間,還規(guī)定了觸發(fā)事件的“粒度”是面向元組還是面向集合。在規(guī)則的條件評(píng)估和動(dòng)作執(zhí)行時(shí)允許引用所說(shuō)明表中的元組值,可以引用更新前或更新后的值。觸發(fā)器中還允許說(shuō)明觸發(fā)器的優(yōu)先級(jí),即一個(gè)事件若引發(fā)多個(gè)觸發(fā)器,通過(guò)指定優(yōu)先級(jí)使多個(gè)被觸發(fā)的規(guī)則按照一定順序執(zhí)行。
主動(dòng)數(shù)據(jù)庫(kù)的內(nèi)部應(yīng)用和擴(kuò)展應(yīng)用還可以用來(lái)提供多種數(shù)據(jù)庫(kù)服務(wù),為實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)庫(kù)、合作數(shù)據(jù)庫(kù)、動(dòng)態(tài)數(shù)據(jù)庫(kù)和演繹數(shù)據(jù)庫(kù)等提供方便。其中比較特殊的一種是主動(dòng)實(shí)時(shí)數(shù)據(jù)庫(kù)系統(tǒng)。實(shí)時(shí)數(shù)據(jù)庫(kù)中存在與事務(wù)有關(guān)的各種事件,除了對(duì)象事件、事務(wù)事件外,還有大量的實(shí)時(shí)事件,以及與事件相關(guān)的各種條件。在不同的事件和條件下,需要觸發(fā)不同的活動(dòng)。主動(dòng)數(shù)據(jù)庫(kù)的主動(dòng)能力為實(shí)時(shí)數(shù)據(jù)庫(kù)的建模和實(shí)現(xiàn)提供了有力支持。
許多應(yīng)用要求集成實(shí)時(shí)數(shù)據(jù)庫(kù)和主動(dòng)數(shù)據(jù)庫(kù)的功能特性,如各類協(xié)作導(dǎo)航系統(tǒng)、網(wǎng)絡(luò)服務(wù)系統(tǒng)、自動(dòng)控制系統(tǒng)等。其他類似事件驅(qū)動(dòng)、情形監(jiān)控,而且有實(shí)時(shí)調(diào)度與定時(shí)控制要求的應(yīng)用,只有將實(shí)時(shí)數(shù)據(jù)庫(kù)與主動(dòng)數(shù)據(jù)庫(kù)相結(jié)合才能大顯身手。
客戶&案例
營(yíng)銷資訊
關(guān)于我們
客戶&案例
營(yíng)銷資訊
關(guān)于我們
微信公眾號(hào)
版權(quán)所有? 億企邦 1997-2022 保留一切法律許可權(quán)利。