多數(shù)據(jù)庫系統(tǒng)互聯(lián)機(jī)制的設(shè)計(jì)與實(shí)現(xiàn)(一)_第1頁
多數(shù)據(jù)庫系統(tǒng)互聯(lián)機(jī)制的設(shè)計(jì)與實(shí)現(xiàn)(一)_第2頁
多數(shù)據(jù)庫系統(tǒng)互聯(lián)機(jī)制的設(shè)計(jì)與實(shí)現(xiàn)(一)_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

多數(shù)據(jù)庫系統(tǒng)互聯(lián)機(jī)制的設(shè)計(jì)與實(shí)現(xiàn)〔一〕摘要:隨著企業(yè)規(guī)模的不斷擴(kuò)大,各部門所需信息既相互交錯,又相對獨(dú)立。這就要求各部門所用的數(shù)據(jù)庫既能高度自治地工作,又能進(jìn)行信息共享。本文主要介紹多dm3數(shù)據(jù)庫系統(tǒng)間的信息共享機(jī)制。不同dm3數(shù)據(jù)庫系統(tǒng)間的信息共享通過協(xié)調(diào)器實(shí)現(xiàn)。所有這些被協(xié)調(diào)器連接在一起的數(shù)據(jù)庫系統(tǒng)組成了一個聯(lián)邦數(shù)據(jù)庫。這樣既能較好地滿足企業(yè)的需要,也能在保證效率的前提下,提高數(shù)據(jù)的可用性。關(guān)鍵詞:dbms復(fù)制聯(lián)邦數(shù)據(jù)庫1.引言隨著經(jīng)濟(jì)的開展,企業(yè)的規(guī)模越來越大,其積累的信息也越來越多。存在著各部門所處理的信息多數(shù)只對本部門有效,僅有少數(shù)信息需給其它某些部門共享的問題。這種信息的分布性和獨(dú)立性要求對所處理的數(shù)據(jù)進(jìn)行分類,使各部門既能獨(dú)立地處理本部門大多數(shù)數(shù)據(jù),也使部門間能協(xié)調(diào)處理跨部門的事務(wù)。在這種情況下,對整個企業(yè)建立一個完全的緊密耦合的分布式數(shù)據(jù)庫是很困難的,也是沒必要的,特別是大型企業(yè),這樣的數(shù)據(jù)庫的效率往往是很低的。為解決這個問題,我們采用以下策略:每個部門使用一套緊密耦合的數(shù)據(jù)庫系統(tǒng),而在存在跨部門事務(wù)處理的數(shù)據(jù)庫系統(tǒng)間用一個協(xié)調(diào)器聯(lián)起來。這樣就組成了一個橫跨整個企業(yè),各部門高度自治的聯(lián)邦數(shù)據(jù)庫系統(tǒng)。dm2是由華中理工大學(xué)數(shù)據(jù)庫多媒體技術(shù)研究所研制的數(shù)據(jù)庫管理系統(tǒng)。它采用客戶/效勞器模型,客戶機(jī)與效勞器,效勞器與效勞器均通過網(wǎng)絡(luò)互連,通過消息相互通訊,組成一個緊密耦合的分布式數(shù)據(jù)庫系統(tǒng)。它的工作流程如下:客戶機(jī)登錄到一臺效勞器上,這臺效勞器便成為它的代理效勞器;它接收來自客戶機(jī)的消息,然后根據(jù)全局?jǐn)?shù)據(jù)字典決定是自己獨(dú)立完成該操作,還是與其它效勞器協(xié)作處理這條消息,處理完成之后,再由代理效勞器將處理結(jié)果返回給客戶機(jī)。而數(shù)據(jù)字典,作為記錄數(shù)據(jù)庫所有元數(shù)據(jù)的系統(tǒng)表,它向以上過程中提供各類有用的信息,引導(dǎo)它們向正確的方向運(yùn)行,起著“指南針〞的作用。它分為局部數(shù)據(jù)字典和全局?jǐn)?shù)據(jù)字典。其中,局部數(shù)據(jù)字典用于記錄一個效勞器站點(diǎn)中數(shù)據(jù)庫的控制信息,如表的模式,視圖的模式及各個數(shù)據(jù)區(qū)的的文件名等信息。全局?jǐn)?shù)據(jù)字典用于記錄分布式數(shù)據(jù)庫系統(tǒng)中各個效勞器站點(diǎn)上有關(guān)全局?jǐn)?shù)據(jù)的控制信息,如效勞器站點(diǎn)信息,各效勞器站點(diǎn)的全局表名及表內(nèi)碼記錄,各效勞器站點(diǎn)上的全局?jǐn)?shù)據(jù)視圖名及視圖內(nèi)碼記錄,用戶名及口令記錄,用戶權(quán)限記錄等信息。各個局部數(shù)據(jù)字典可以各不相同,但為了保證在各個效勞器上所看到的全局?jǐn)?shù)據(jù)庫是一致的,因此,全局?jǐn)?shù)據(jù)字典必須一致。我們所關(guān)心的是全局?jǐn)?shù)據(jù)字典中的基表控制塊tv_ctrl_block,它的內(nèi)容主要包括:全局基表總數(shù),每個全局基表名和其對應(yīng)的表內(nèi)碼,該基表所在的效勞器站點(diǎn)的編號等信息。它的功能是將各個效勞器站點(diǎn)號與存儲在其上的表名及表內(nèi)碼聯(lián)系起來。這樣,代理效勞器從客戶消息中找到被處理的表名,然后通過查詢基表控制塊tv_ctrl_block,就能知道該表存在哪個效勞器上,以便將相關(guān)消息發(fā)給該效勞器。由于dm2上各個效勞器站點(diǎn)的全局字典完全相同,任何全局表的信息都會記入全局字典。假設(shè)用它來構(gòu)建一個企業(yè)的數(shù)據(jù)庫系統(tǒng),那么大量只對企業(yè)某部門有用的信息將會充滿在各部門所有效勞器的全局字典中,增加了冗余。而且,當(dāng)對全局表進(jìn)行ddl操作時,為了確保全局字典的一致性,須對所有效勞器的全局字典進(jìn)行加鎖。dm2對全局字典的封鎖方式是采用令牌環(huán)方式,即令牌繞虛環(huán)〔非實(shí)環(huán)〕傳輸,某個效勞器想對全局字典進(jìn)行操作,必須等令牌到達(dá)該效勞器才可以執(zhí)行。每個部門建立的全局表絕大多數(shù)只對本部門有用,當(dāng)對這些表進(jìn)行ddl操作時,卻要對所有效勞器的全局字典進(jìn)行封鎖,通過令牌來實(shí)現(xiàn)對全局字典的互斥訪問。假設(shè),兩個部門都要分別對本部門的內(nèi)部表進(jìn)行ddl操作,這應(yīng)該是可以并行處理的操作,現(xiàn)在卻只能串行執(zhí)行。而且,當(dāng)效勞器數(shù)目龐大時,每個效勞器等待令牌的時間將會很長。這嚴(yán)重?fù)p害了數(shù)據(jù)庫的效率。為彌補(bǔ)以上缺乏,在dm2的改良版本dm3中增加了協(xié)調(diào)器,用以聯(lián)接各個獨(dú)立的dm3數(shù)據(jù)庫子系統(tǒng),并協(xié)調(diào)各子系統(tǒng)間的各種關(guān)系,使各子系統(tǒng)既能高度自治地工作,又能進(jìn)行有效的信息共享。2.體系結(jié)構(gòu)本系統(tǒng)可看作多個數(shù)據(jù)庫子系統(tǒng)被協(xié)調(diào)器聯(lián)起來的,高度自治的一個聯(lián)邦數(shù)據(jù)庫系統(tǒng)。其中,每個子系統(tǒng)獨(dú)立處理本系統(tǒng)內(nèi)部的事務(wù),而子系統(tǒng)間的信息共享由復(fù)制技術(shù)提供,副本間的一致性由協(xié)調(diào)器協(xié)調(diào)處理,處理所需的信息在初始化時寫入?yún)f(xié)調(diào)器的組間數(shù)據(jù)字典中。當(dāng)對某子系統(tǒng)中的一份數(shù)據(jù)副本進(jìn)行修改時,該子系統(tǒng)會將修改通知協(xié)調(diào)器,由協(xié)調(diào)器對該數(shù)據(jù)的其它副本進(jìn)行修改,從而保證了所有副本的一致性。由以上可知,子系統(tǒng)彼此并不直接接觸,而是各自都與協(xié)調(diào)器直接相聯(lián),由協(xié)調(diào)器統(tǒng)一管理子系統(tǒng)間的通信。這樣,當(dāng)子系統(tǒng)對副本進(jìn)行修改時,不必關(guān)心相應(yīng)的子系統(tǒng)處于何種狀態(tài),也不必等待回應(yīng)消息,以及異常處理,所有這些都由協(xié)調(diào)器進(jìn)行管理。因此,既提高了系統(tǒng)運(yùn)行的效率,也保證了子系統(tǒng)的獨(dú)立性。其體系結(jié)構(gòu)如下列圖所示。協(xié)調(diào)器主要有三大功能,首先,它對協(xié)調(diào)器和效勞器進(jìn)行初始化,并將有關(guān)信息存入組間字典;其次,它管理不同子系統(tǒng)間的通信,維護(hù)副本的一致性;最后,它在子系統(tǒng)出現(xiàn)崩潰時,進(jìn)行異常管理及恢復(fù)工作。dm3多數(shù)據(jù)庫系統(tǒng)體系結(jié)構(gòu)3.主要策略多個dm3系統(tǒng)間的信息共享是通過副本實(shí)現(xiàn)的,副本的一致性是由協(xié)調(diào)器來維持的,是一種弱一致性。通常,多數(shù)據(jù)庫系統(tǒng)間的一致性是通過協(xié)調(diào)器周期性地訪問效勞器的日志來完成的。由于副本的更新帶有隨機(jī)性,因此,假設(shè)采用這種方法,可能數(shù)據(jù)被修改屢次,但其相對應(yīng)的副本仍未被修改,這樣就損害了數(shù)據(jù)的一致性;也可能數(shù)據(jù)并未被修改,但協(xié)調(diào)器已屢次訪問了效勞器的日志了,這樣就降低了系統(tǒng)的效率。所以,本系統(tǒng)采用的方法是當(dāng)數(shù)據(jù)被修改時,由效勞器通知協(xié)調(diào)器有關(guān)信息,再由協(xié)調(diào)器通知相關(guān)系統(tǒng),修改相關(guān)數(shù)據(jù)。這樣,數(shù)據(jù)的修改及時〔仍然是弱一致性〕,而協(xié)調(diào)器也不會在數(shù)據(jù)未被修改的情況下訪

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論