大學(xué)科技論文格式
寫大學(xué)論文時,有一個論文格式,那寫論文就像填文字那樣簡單。這是學(xué)習(xí)啦小編為大家整理的大學(xué)科技論文格式,僅供參考!
大學(xué)科技論文格式篇一
企業(yè)網(wǎng)Intranet的構(gòu)建方案
【摘要】本文分析了企業(yè)Intranet的功能和技術(shù)特點,并闡述了構(gòu)建Intranet的實施方案及其關(guān)鍵技術(shù)。
【關(guān)鍵詞】Internet Intranet 局域網(wǎng)
Internet在全球的發(fā)展和普及,企業(yè)網(wǎng)絡(luò)技術(shù)的發(fā)展,以及企業(yè)生存和發(fā)展的需要促成了企業(yè)網(wǎng)的形成。Intranet是傳統(tǒng)企業(yè)網(wǎng)與Internet相結(jié)合的新型企業(yè)網(wǎng)絡(luò),是一個采用Internet技術(shù)建立的機構(gòu)內(nèi)聯(lián)網(wǎng)絡(luò)。它以TCP/IP協(xié)議作為基礎(chǔ),以Web為核心應(yīng)用,構(gòu)成統(tǒng)一和便利的信息交換平臺。它通過簡單的瀏覽界面,方便地提供諸如E-mail、文件傳輸(FTP)、電子公告和新聞、數(shù)據(jù)查詢等服務(wù),并且可與Internet連接,實現(xiàn)企業(yè)內(nèi)部網(wǎng)上用戶對Internet的瀏覽、查詢,同時對外提供信息服務(wù),發(fā)布本企業(yè)信息。
Intranet 的主要特征
企業(yè)建立Intranet的目的主要是為了滿足其在管理、信息獲取和發(fā)布、資源共享及提高效率等方面的要求,是基于企業(yè)內(nèi)部的需求。因此雖然Intranet是在Internet技術(shù)上發(fā)展起來的,但它和Internet有著一定的差別。并且Intranet也不同于傳統(tǒng)的企業(yè)內(nèi)部的局域網(wǎng)。企業(yè)網(wǎng)Intranet 的主要特征表現(xiàn)在以下幾個方面:
(1)Intranet 除了可實現(xiàn)Internet的信息查詢、信息發(fā)布、資源共享等功能外,更主要的是其可作為企業(yè)全方位的管理信息系統(tǒng),實現(xiàn)企業(yè)的生產(chǎn)管理、進銷存管理和財務(wù)管理等功能。這種基于網(wǎng)絡(luò)的管理信息系統(tǒng)相比傳統(tǒng)的管理信息系統(tǒng)能更加方便有效地進行管理、維護,可方便快捷地發(fā)布、更新企業(yè)的各種信息。
(2)在Internet上信息主要以靜態(tài)頁面為主,用戶對信息的訪問以查詢?yōu)橹?,其信息由制作公司制作后放在Web服務(wù)器上。而Intranet 則不同,其信息主要為企業(yè)內(nèi)部使用,并且大部分業(yè)務(wù)都和數(shù)據(jù)庫有關(guān),因此要求Intranet 的頁面是動態(tài)的,能夠?qū)崟r反應(yīng)數(shù)據(jù)庫的內(nèi)容,用戶除了查詢數(shù)據(jù)庫外,還可以增加、修改和刪除數(shù)據(jù)庫的內(nèi)容。
(3)Intranet 的管理側(cè)重于機構(gòu)內(nèi)部的管理,其安全防范措施要求非常嚴(yán)格,對網(wǎng)上用戶有嚴(yán)格的權(quán)限控制,以確定用戶是否可訪問某部門的數(shù)據(jù)。并且通過防火墻等安全機制,控制外部用戶對企業(yè)內(nèi)部數(shù)據(jù)的獲取。
(4)Intranet 與傳統(tǒng)的企業(yè)網(wǎng)相比,雖然還是企業(yè)內(nèi)部的局域網(wǎng)絡(luò)(或多個局域網(wǎng)相連的廣域網(wǎng)),但它在技術(shù)上則以Internet的TCP/IP協(xié)議和Web技術(shù)規(guī)范為基礎(chǔ),可實現(xiàn)任意的點對點的通信,而且通過Web服務(wù)器和Internet的其他服務(wù)器,完成以往無法實現(xiàn)的功能。
Intranet 的構(gòu)建要點
企業(yè)建立Intranet 的目的是為滿足企業(yè)自身發(fā)展的需要,因此應(yīng)根據(jù)企業(yè)的實際情況和要求來確立所建立的Intranet 所應(yīng)具有那些具體功能以及如何去實現(xiàn)這樣一個Intranet 。所以不同的企業(yè)構(gòu)建Intranet 可能會有不同的方法。但是Intranet 的實現(xiàn)有其共同的、基本的構(gòu)建要點。這主要有以下幾個方面:
2.1網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的規(guī)劃
在規(guī)劃Intranet 的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)時,應(yīng)根據(jù)企業(yè)規(guī)模的大小、分布、對多媒體的需求等實際情況加以確定。一般可按以下原則來確立:
(1)費用低
一般地在選擇網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的同時便大致確立了所要選取的傳輸介質(zhì)、專用設(shè)備、安裝方式等。例如選擇總線網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)時一般選用同軸電纜作為傳輸介質(zhì),選擇星形拓?fù)浣Y(jié)構(gòu)時需要選用集線器產(chǎn)品,因此每一種網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)對應(yīng)的所需初期投資、以后的安裝維護費用都是不等的,在滿足其它要求的同時,應(yīng)盡量選擇投資費用較低的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。
(2)良好的靈活性和可擴充性
在選擇網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)時應(yīng)考慮企業(yè)將來的發(fā)展,并且網(wǎng)絡(luò)中的設(shè)備不是一成不變的,對一些設(shè)備的更新?lián)Q代或設(shè)備位置的變動,所選取的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)應(yīng)該能夠方便容易地進行配置以滿足新的要求。
(3)穩(wěn)定性高
穩(wěn)定性對于一個網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)是至關(guān)重要的。在網(wǎng)絡(luò)中會經(jīng)常發(fā)生節(jié)點故障或傳輸介質(zhì)故障,一個穩(wěn)定性高的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)應(yīng)具有良好的故障診斷和故障隔離能力,以使這些故障對整個網(wǎng)絡(luò)的影響減至最小。
(4)因地制宜
選擇網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)應(yīng)根據(jù)網(wǎng)絡(luò)中各節(jié)點的分布狀況,因地制宜地選擇不同的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。例如對于節(jié)點比較集中的場合多選用星形拓?fù)浣Y(jié)構(gòu),而節(jié)點比較分散時則可以選用總線型拓?fù)浣Y(jié)構(gòu)。另外,若單一的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)不能滿足要求,則可選擇混合的拓?fù)浣Y(jié)構(gòu)。例如,假設(shè)一個網(wǎng)絡(luò)中節(jié)點主要分布在兩個不同的地方,則可以在該兩個節(jié)點密集的場所選用星型拓?fù)浣Y(jié)構(gòu),然后使用總線拓?fù)浣Y(jié)構(gòu)將這兩個地方連接起來。
目前常用的局域網(wǎng)技術(shù)有以太網(wǎng)、快速以太網(wǎng)、FDDI、ATM等多種。其中交換式快速以太網(wǎng)以其技術(shù)成熟、組網(wǎng)靈活方便、設(shè)備支持廠家多、工程造價低、性能優(yōu)良等特點,在局域網(wǎng)中被廣泛采用。對于網(wǎng)絡(luò)傳輸性能要求特別高的網(wǎng)絡(luò)可考慮采用ATM技術(shù),但其網(wǎng)絡(luò)造價相當(dāng)高,技術(shù)也較復(fù)雜。
為獲取Internet上的各種資源及Internet所提供的各種服務(wù),規(guī)劃Intranet時還應(yīng)考慮接入Internet。目前,接入Internet方式主要有:通過公共分組網(wǎng)接入、通過幀中繼接入、通過ISDN接入或通過數(shù)字租用線路接入,及目前較新的遠(yuǎn)程連接技術(shù)ASDL。在選擇以何種方式接入Internet時應(yīng)根據(jù)Intranet的規(guī)模、對數(shù)據(jù)傳輸速率的要求及企業(yè)的經(jīng)濟實力來確定。數(shù)字租用線路方式可提供較高的帶寬和較高的數(shù)據(jù)傳輸質(zhì)量,但是費用昂貴。公共分組網(wǎng)方式數(shù)據(jù)傳輸質(zhì)量較高,費用也較低,但數(shù)據(jù)傳輸量較小。ISDN可提供較高的帶寬,可同時傳輸數(shù)據(jù)和聲音,并且費用相對較低,是中小規(guī)模Intranet接入Internet的較佳方式。
2.2 Intranet 的硬件配置
在選擇組成Intranet 的硬件時,著重應(yīng)考慮服務(wù)器的選擇。由于服務(wù)器在網(wǎng)絡(luò)中運行網(wǎng)絡(luò)操作系統(tǒng)、進行網(wǎng)絡(luò)管理或是提供網(wǎng)絡(luò)上可用共享資源,因此對服務(wù)器的選擇顯然不同于一般的普通客戶機,同時應(yīng)該按照服務(wù)器的不同類型,如WWW服務(wù)器、數(shù)據(jù)庫服務(wù)器、打印服務(wù)器等而應(yīng)該有所側(cè)重。一般要求所選用的服務(wù)器具有大的存儲容量,數(shù)吉(G)或數(shù)十吉(G),以及具有足夠的內(nèi)存和較高的運行速度,內(nèi)存128M或以上,CPU主頻在500MHz或以上,而且可為多個CPU處理器,并且具有良好和可擴展性,以滿足將來更新?lián)Q代的需要,保證當(dāng)前的投資不至于在短時間內(nèi)便被消耗掉。
其余的硬件設(shè)備有路由器、交換機、集線器、網(wǎng)卡和傳輸介質(zhì)等。所選擇的這些設(shè)備應(yīng)具有良好的性能,能使網(wǎng)絡(luò)穩(wěn)定地運行。此外,在此前提下,還應(yīng)遵循經(jīng)濟性的原則。
2.3 Intranet 的軟件配置
軟件是Intranet的靈魂,它決定了整個Intranet的運行方式、用戶對信息的瀏覽方式、Web服務(wù)器與數(shù)據(jù)庫服務(wù)器之間的通信、網(wǎng)絡(luò)安全及網(wǎng)絡(luò)管理方式等,是網(wǎng)絡(luò)建設(shè)中極為重要的一環(huán)。
Intranet的軟件可分為服務(wù)器端軟件和客戶端軟件??蛻舳塑浖饕獮闉g覽器,目前常用的瀏覽器軟件有Netscape Navigator、Microsoft Internet Explore等。服務(wù)器端軟件較為復(fù)雜,主要有網(wǎng)絡(luò)操作系統(tǒng)、Web服務(wù)器軟件、數(shù)據(jù)庫系統(tǒng)軟件、安全防火墻軟件和網(wǎng)絡(luò)管理軟件等。選擇網(wǎng)絡(luò)操作系統(tǒng)時,應(yīng)考慮其是否是一個高性能的網(wǎng)絡(luò)操作系統(tǒng),是否支持多種網(wǎng)絡(luò)協(xié)議,是否支持多種不同的計算機硬件平臺,是否具有容錯技術(shù)和網(wǎng)絡(luò)管理功能等多方面因素。目前市場上主流的網(wǎng)絡(luò)操作系統(tǒng)有UNIX、Novell Netware和Windows NT等。如果企業(yè)網(wǎng)Intranet中大多數(shù)是于PC機為主體,建議選用Novell Netware和Windows NT。
3.企業(yè)網(wǎng)Intranet構(gòu)建的關(guān)鍵技術(shù)
3.1防火墻技術(shù)
由于Intranet一般都與Internet互連,因此易受到非法用戶的入侵。為確保企業(yè)信息和機密的安全,需要在Intranet與Internet之間設(shè)置防火墻。防火墻可看作是一個過濾器,用于監(jiān)視和檢查流動信息的合法性。目前防火墻技術(shù)有以下幾種,即包過濾技術(shù)(Packet filter)、電路級網(wǎng)關(guān)(Circuit gateway)、應(yīng)用級網(wǎng)關(guān)(Application)、規(guī)則檢查防火墻(Stalaful Inspection)。 在實際應(yīng)用中,并非單純采用某一種,而是幾種的結(jié)合。
3.2數(shù)據(jù)加密技術(shù)
數(shù)據(jù)加密技術(shù)是數(shù)據(jù)保護的最主要和最基本的手段。通過數(shù)據(jù)加密技術(shù),把數(shù)據(jù)變成不可讀的格式,防止企業(yè)的數(shù)據(jù)信息在傳輸過程中被篡改、刪除和替換。
目前,數(shù)據(jù)加密技術(shù)大致可分為專用密匙加密(對稱密匙加密)和公用密匙加密(不對稱密匙加密)兩大類。在密碼通信中,這兩種加密方法都是常用的。專用密匙加密時需用戶雙方共同享有密匙,如DES方法,由于采用對稱編碼技術(shù),使得專用密匙加密具有加密和解密非??斓淖畲髢?yōu)點,能有硬件實現(xiàn),使用于交換大量數(shù)據(jù)。但其最大問題是把密匙分發(fā)到使用該密碼的用戶手中。這樣做是很危險的,很可能在密匙傳送過程中發(fā)生失密現(xiàn)象(密匙被偷或被修改)。公用密匙加密采用與專用密匙加密不同的數(shù)學(xué)算法。有一把公用的加密密匙,如RSA方法。其優(yōu)點是非法用戶無法通過公用密匙推導(dǎo)出解密密匙,因此保密性好,但運行效率低,不適于大量數(shù)據(jù)。所以在實際應(yīng)用中常將兩者結(jié)合使用,如通過公用密匙在通信開始時進行授權(quán)確認(rèn),并確定一個公用的臨時專用密匙,然后再用專用密匙數(shù)據(jù)加密方式進行通信。
3.3系統(tǒng)容錯技術(shù)
網(wǎng)絡(luò)中心是整個企業(yè)網(wǎng)絡(luò)和信息的樞紐,為了確保其能不間斷地運行,需采取一定的系統(tǒng)容錯技術(shù):
(1)網(wǎng)絡(luò)設(shè)備和鏈路冗余備份。網(wǎng)絡(luò)設(shè)備易發(fā)生故障的接口卡都保留適當(dāng)?shù)娜哂?,保證網(wǎng)絡(luò)的關(guān)鍵部分無單點故障。
(2)服務(wù)器冷備份。采用雙服務(wù)器,它們都安裝數(shù)據(jù)庫管理系統(tǒng)和Web服務(wù)器軟件,但兩臺服務(wù)器同時運行不同的任務(wù),一臺運行數(shù)據(jù)庫系統(tǒng),一臺運行Web服務(wù)器軟件,它們共享外部磁盤陳列,萬一一臺服務(wù)器出現(xiàn)故障,可以通過鍵入預(yù)先編好的命令,把任務(wù)切換到另一臺服務(wù)器上,確保系統(tǒng)在最短時間內(nèi)恢復(fù)正常運行。
(3)數(shù)據(jù)的實時備份。對數(shù)據(jù)進行實時備份,以保證數(shù)據(jù)的完整性和安全性,確保系統(tǒng)安全而穩(wěn)定低運行。如通過ARC Srever對數(shù)據(jù)提供雙鏡象冗余備份,或由SNA Server提供安全快捷的數(shù)據(jù)熱備份。
結(jié)束語:
企業(yè)網(wǎng)Intranet的構(gòu)建是一個大的系統(tǒng)工程,需要有較大的人力和物力的投入。企業(yè)應(yīng)根據(jù)自身實際情況和發(fā)展需要,有的放矢地建立適合自己的Intranet,只有這樣才能充分有效地利用Intranet,真正達(dá)到促進企業(yè)進一步發(fā)展的目的。
參考文獻(xiàn):
張孟順,向Intranet的遷移[J],計算機系統(tǒng)應(yīng)用,1998(4):22~24
張金隆,現(xiàn)代管理信息技術(shù)[M],華東理工大學(xué)出版社,1995
韓建民,基于B/S模式的生產(chǎn)管理圖查詢系統(tǒng)的實現(xiàn)[J],計算機應(yīng)用,1995(5):15~28
蔡建,網(wǎng)絡(luò)安全技術(shù)與安全管理機制[J],貴州工業(yè)大學(xué)學(xué)報,1999,28(1):32~34
大學(xué)科技論文格式篇二
多數(shù)據(jù)庫系統(tǒng)互聯(lián)機制的設(shè)計與實現(xiàn)
摘要: 隨著企業(yè)規(guī)模的不斷擴大,各部門所需信息既相互交錯,又相對獨立。這就要求各部門所用的數(shù)據(jù)庫既能高度自治地 工作,又能進行信息共享。本文主要介紹多DM3數(shù)據(jù)庫系統(tǒng)間的信息共享機制。 不同DM3數(shù)據(jù)庫系統(tǒng)間的信息共享通過協(xié)調(diào)器實現(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)濟的發(fā)展,企業(yè)的規(guī)模越來越大,其積累的信息也越來越多。存在著各部門所處理的信息多數(shù)只對本部門有效,僅有少數(shù)信息需給其它某些部門共享的問題。這種信息的分布性和獨立性要求對所處理的數(shù)據(jù)進行分類,使各部門既能獨立地處理本部門大多數(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)。它采用客戶/服務(wù)器模型,客戶機與服務(wù)器,服務(wù)器與服務(wù)器均通過網(wǎng)絡(luò)互連,通過消息相互通訊,組成一個緊密耦合的分布式數(shù)據(jù)庫系統(tǒng)。它的工作流程如下:客戶機登錄到一臺服務(wù)器上,這臺服務(wù)器便成為它的代理服務(wù)器;它接收來自客戶機的消息,然后根據(jù)全局?jǐn)?shù)據(jù)字典決定是自己獨立完成該操作,還是與其它服務(wù)器協(xié)作處理這條消息,處理完成之后,再由代理服務(wù)器將處理結(jié)果返回給客戶機。
而數(shù)據(jù)字典,作為記錄數(shù)據(jù)庫所有元數(shù)據(jù)的系統(tǒng)表,它向以上過程中提供各類有用的信息,引導(dǎo)它們向正確的方向運行,起著“指南針”的作用。它分為局部數(shù)據(jù)字典和全局?jǐn)?shù)據(jù)字典。其中,局部數(shù)據(jù)字典用于記錄一個服務(wù)器站點中數(shù)據(jù)庫的控制信息,如表的模式,視圖的模式及各個數(shù)據(jù)區(qū)的的文件名等信息。全局?jǐn)?shù)據(jù)字典用于記錄分布式數(shù)據(jù)庫系統(tǒng)中各個服務(wù)器站點上有關(guān)全局?jǐn)?shù)據(jù)的控制信息,如服務(wù)器站點信息,各服務(wù)器站點的全局表名及表內(nèi)碼記錄,各服務(wù)器站點上的全局?jǐn)?shù)據(jù)視圖名及視圖內(nèi)碼記錄,用戶名及口令記錄,用戶權(quán)限記錄等信息。各個局部數(shù)據(jù)字典可以各不相同,但為了保證在各個服務(wù)器上所看到的全局?jǐn)?shù)據(jù)庫是一致的,因此,全局?jǐn)?shù)據(jù)字典必須一致。我們所關(guān)心的是全局?jǐn)?shù)據(jù)字典中的基表控制塊TV_CTRL_BLOCK,它的內(nèi)容主要包括:全局基表總數(shù),每個全局基表名和其對應(yīng)的表內(nèi)碼,該基表所在的服務(wù)器站點的編號等信息。它的功能是將各個服務(wù)器站點號與存儲在其上的表名及表內(nèi)碼聯(lián)系起來。這樣,代理服務(wù)器從客戶消息中找到被處理的表名,然后通過查詢基表控制塊TV_CTRL_BLOCK,就能知道該表存在哪個服務(wù)器上,以便將相關(guān)消息發(fā)給該服務(wù)器。
由于DM2上各個服務(wù)器站點的全局字典完全相同,任何全局表的信息都會記入全局字典。若用它來構(gòu)建一個企業(yè)的數(shù)據(jù)庫系統(tǒng),則大量只對企業(yè)某部門有用的信息將會充斥在各部門所有服務(wù)器的全局字典中,增加了冗余。而且,當(dāng)對全局表進行DDL操作時,為了確保全局字典的一致性,須對所有服務(wù)器的全局字典進行加鎖。DM2對全局字典的封鎖方式是采用令牌環(huán)方式,即令牌繞虛環(huán)(非實環(huán))傳輸,某個服務(wù)器想對全局字典進行操作,必須等令牌到達(dá)該服務(wù)器才可以執(zhí)行。每個部門建立的全局表絕大多數(shù)只對本部門有用,當(dāng)對這些表進行DDL操作時,卻要對所有服務(wù)器的全局字典進行封鎖,通過令牌來實現(xiàn)對全局字典的互斥訪問。假如,兩個部門都要分別對本部門的內(nèi)部表進行DDL操作,這應(yīng)該是可以并行處理的操作,現(xiàn)在卻只能串行執(zhí)行。而且,當(dāng)服務(wù)器數(shù)目龐大時,每個服務(wù)器等待令牌的時間將會很長。這嚴(yán)重?fù)p害了數(shù)據(jù)庫的效率。
為彌補以上不足,在DM2的改進版本DM3中增加了協(xié)調(diào)器,用以聯(lián)接各個獨立的DM3數(shù)據(jù)庫子系統(tǒng),并協(xié)調(diào)各子系統(tǒng)間的各種關(guān)系,使各子系統(tǒng)既能高度自治地工作,又能進行有效的信息共享。
2.體系結(jié)構(gòu)
本系統(tǒng)可看作多個數(shù)據(jù)庫子系統(tǒng)被協(xié)調(diào)器聯(lián)起來的,高度自治的一個聯(lián)邦數(shù)據(jù)庫系統(tǒng)。其中,每個子系統(tǒng)獨立處理本系統(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ù)副本進行修改時,該子系統(tǒng)會將修改通知協(xié)調(diào)器,由協(xié)調(diào)器對該數(shù)據(jù)的其它副本進行修改,從而保證了所有副本的一致性。
由以上可知,子系統(tǒng)彼此并不直接接觸,而是各自都與協(xié)調(diào)器直接相聯(lián),由協(xié)調(diào)器統(tǒng)一管理子系統(tǒng)間的通信。這樣,當(dāng)子系統(tǒng)對副本進行修改時,不必關(guān)心相應(yīng)的子系統(tǒng)處于何種狀態(tài),也不必等待回應(yīng)消息,以及異常處理,所有這些都由協(xié)調(diào)器進行管理。因此,既提高了系統(tǒng)運行的效率,也保證了子系統(tǒng)的獨立性。其體系結(jié)構(gòu)如下圖所示。
協(xié)調(diào)器主要有三大功能,首先,它對協(xié)調(diào)器和服務(wù)器進行初始化,并將有關(guān)信息存入組間字典;其次,它管理不同子系統(tǒng)間的通信,維護副本的一致性;最后,它在子系統(tǒng)出現(xiàn)崩潰時,進行異常管理及恢復(fù)工作。
圖1 DM3多數(shù)據(jù)庫系統(tǒng)體系結(jié)構(gòu)
3.主要策略
多個DM3系統(tǒng)間的信息共享是通過副本實現(xiàn)的,副本的一致性是由協(xié)調(diào)器來維持的,是一種弱一致性。通常,多數(shù)據(jù)庫系統(tǒng)間的一致性是通過協(xié)調(diào)器周期性地訪問服務(wù)器的日志來完成的。由于副本的更新帶有隨機性,因此,若采用這種方法,可能數(shù)據(jù)被修改多次,但其相對應(yīng)的副本仍未被修改,這樣就損害了數(shù)據(jù)的一致性;也可能數(shù)據(jù)并未被修改,但協(xié)調(diào)器已多次訪問了服務(wù)器的日志了,這樣就降低了系統(tǒng)的效率。
所以,本系統(tǒng)采用的方法是當(dāng)數(shù)據(jù)被修改時,由服務(wù)器通知協(xié)調(diào)器有關(guān)信息,再由協(xié)調(diào)器通知相關(guān)系統(tǒng),修改相關(guān)數(shù)據(jù)。這樣,數(shù)據(jù)的修改及時(仍然是弱一致性),而協(xié)調(diào)器也不會在數(shù)據(jù)未被修改的情況下訪問服務(wù)器,提高了準(zhǔn)確性。
為了使協(xié)調(diào)器正常工作,我們對底層數(shù)據(jù)庫管理系統(tǒng)DM2進行了修改。在基表控制塊TV_CTRL_BLOCK中增加一項IsReplication。建表時,該項初始化為false;當(dāng)為該表建立一個副本時,該項賦值為true。具體算法如下。
3.1初始化算法。
協(xié)調(diào)器:
從用戶或應(yīng)用程序接收待連接的兩個系統(tǒng)中的服務(wù)器名,需復(fù)制的表名;
分別登錄到兩個系統(tǒng)的服務(wù)器上;
向存有待復(fù)制表的服務(wù)器發(fā)預(yù)復(fù)制消息;
等待服務(wù)器消息;
若失敗,發(fā)一條失敗的消息給服務(wù)器和用戶或應(yīng)用程序,轉(zhuǎn)11);
若成功,從消息中取出待復(fù)制表的有關(guān)信息,根據(jù)這些信息,發(fā)一條建表消息給另一個系統(tǒng)的服務(wù)器;
等待服務(wù)器消息;
若失敗,發(fā)一條失敗的消息給服務(wù)器和用戶或應(yīng)用程序,轉(zhuǎn)11);
若成功,調(diào)數(shù)據(jù)轉(zhuǎn)移程序,進行數(shù)據(jù)復(fù)制;
將有關(guān)信息寫入組間字典。
退出。
服務(wù)器:
當(dāng)服務(wù)器收到預(yù)復(fù)制消息后,將基表控制塊TV_CTRL_BLOCK中的IsReplication賦為true。同時,取出待復(fù)制表的有關(guān)信息,組成應(yīng)答消息發(fā)給協(xié)調(diào)器。
當(dāng)服務(wù)器收到失敗的消息后,將基表控制塊TV_CTRL_BLOCK中的IsReplication賦為false。
3.2維護算法。
協(xié)調(diào)器:
從組間字典讀出相關(guān)信息,根據(jù)這些信息,登錄到相應(yīng)系統(tǒng)上;
等待消息;
從某系統(tǒng)的服務(wù)器上收到一條修改消息后,通過查找組間字典,確定該消息的目的地,然后將它轉(zhuǎn)發(fā)過去;
若失敗,定時重發(fā);
轉(zhuǎn)2);
服務(wù)器:
1)等待消息;
2)當(dāng)收到某客戶或應(yīng)用程序的消息后,檢查它是否是修改數(shù)據(jù)的操作(如delete,update或insert等);
若不是,轉(zhuǎn)7);
若是,檢查基表控制塊TV_CTRL_BLOCK中的IsReplication是否為true;
若不是,轉(zhuǎn)7);
若是,向協(xié)調(diào)器發(fā)修改消息;
繼續(xù)執(zhí)行服務(wù)器程序的其它部分。
3.3恢復(fù)算法。
若協(xié)調(diào)器所聯(lián)接的系統(tǒng)中有一個跨掉了,則對副本的修改無法及時地反映到跨掉的系統(tǒng)中來。這時,需要恢復(fù)算法來進行處理。
協(xié)調(diào)器:
當(dāng)協(xié)調(diào)器發(fā)現(xiàn)有一個系統(tǒng)已經(jīng)崩潰后,采取以下步驟。
將與該系統(tǒng)相關(guān)的變量open賦值為false;
打開記時器;
等待消息;
若收到的消息是其它系統(tǒng)發(fā)出的修改崩潰了的系統(tǒng)上的副本的命令,則依次將這些消息存儲起來,轉(zhuǎn)3);
若收到的消息是記時器發(fā)出的時間到的消息,則向崩潰的系統(tǒng)發(fā)登錄命令;
若登錄成功,將open的值改為true;
將存儲的消息依次發(fā)送過去,轉(zhuǎn)9);
若登錄失敗,轉(zhuǎn)3);
退出。
4.結(jié)論
我們曾在三個DM3數(shù)據(jù)庫系統(tǒng)上,用兩個協(xié)調(diào)器進行聯(lián)接。結(jié)果,運行情況良好,各副本最終都能保證一致,且各副本間存在差異的時間間隔很短。另外,在出現(xiàn)異常的情況下,協(xié)調(diào)器也能正常工作。
主要參考文獻(xiàn):
1.周龍驤等,分布式數(shù)據(jù)庫管理系統(tǒng)實現(xiàn)技術(shù),科學(xué)出版社,1998。
2.鄭振楣,于戈,郭敏,分布式數(shù)據(jù)庫,科學(xué)出版社,1998。
3.王珊等,數(shù)據(jù)倉庫技術(shù)與聯(lián)機分析處理,科學(xué)出版社,1998。