摘要:在現有異構數據庫領域研究成果的基礎上,采用XML的異構數據庫中間件技術實現異構數據庫之間信息交換,進行交互、轉化和進一步加工,以便更有效地利用信息資源,這一方法具有可擴展性好的優點,在實際應用中有著較廣闊的應用前景。
關鍵詞:異構數據庫XML技術數據共享
中圖分類號:TP3文獻標識碼:A文章編號:1672-3791(2011)02(b)-0008-01
數據的全面性就要求異構數據集成系統能集成更多管理。隨著Internet及其相關技術的飛速發展,目前,獨立的各個企業或組織的應用程序需要轉變為web應用。大多web站點都具有豐富的數據資源。而,由于web上的數據絕大多數是通過語言來顯示的,結果Web上的數據處于雜亂無序的狀態。面對如此內容龐雜,異構數據集成系統受到越來越多人的重視,這一方面的研究已經成為又一熱點。通過異構數據集成系統,可以把企業或組織內部和外部的各種相關數據資源進行整合,從而搭建起企業或組織的信息平臺。
1異構網互聯技術方案技術要求分析
XML異構集成中間件構建在數據庫系統之上,XML異構集成中間件的核心是數據轉換和集成目的是集成異構數據源的信息,為了更好地實現數據的集成,為數據共享、發布和應用對集成信息的訪問提供支持,系統采用XML模式作為中間件的全局模式,并負責異構數據源的數據訪問、查詢和協調數據源之間的信息。基于XML的異構數據庫訪問中間件系統屬于中間件的范疇,各個異構數據庫資源構成了系統數據層;從異構集成的角度出發,中間件系統提供數據集成的業務服務,利用XML、CORBA、Java技術,以XML作為公共數據模型構成系統的業務邏輯層;應用程序則構成系統的表示層或事務應用層,為用戶提供一個統一的查詢接口,而且查詢結果以XML格式輸出。
整個工作流程分為先后兩個過程:初始化過程和運行過程。運行過程由CORBA客戶端接收業務處理系統的請求,初始化過程主要完成的任務是生成元數據信息。從中間件系統角度引入兩類角色,按照元數據信息對請求進行解析分解為針對具體數據庫的子查詢,中問件管理員和各數據庫管理員。并調用務器端的對象連接和操作數據庫的方法,中間件管理員首先登錄中間件定義數據的全局描述。然后將返回的結果進行合并發送給業務處理層各數據庫管理員登錄中間件注冊自己的數據庫信息以建立連接,并將得到的結果集轉化成XML格式。
2異構網互聯的關鍵技術研究
2.1 數據的初始化
由于系統中各個數據庫中存在相同字段不同意義或者相同意義不同字段名稱的情況,這個表格提取異構數據庫表中所有具有相同意義的字段,這樣對訪問數據庫造成了很大的麻煩,然后由中間件管理員創建一個元數據字段,所以需要在系統開始運行階段為系統中具有相同業務的數據庫表創建一個能體現他們之間相同之處的表格。每個局部數據庫管理員登錄后,從元數據中選取自己數據庫中有相同意義的表,從而實現了系統的初始化部分,并且將自己表中與元數據字段具有相同意義的字段做映射。為客戶端的查詢分解階段提供了依據。
2.2 中間件實現技術
中間件是一種支持分布式應用的組件框架結構。它是一種獨立的系統軟件或服務程序,分布式應用借助中間件在不同的技術之間共享資源,使得目前的中間件主流技術都是基于分布式對象技術,為應用提供統一的編程模型,處理異構、分布問題和管理計算資源及網絡通信。中間件對分布式應用的底層支持,其中組件代表了當前中間件技術的最新發展趨勢。決定了中間件必須負責實現分布式事務處理、保證安全、進行網絡負載平衡和交易控制等工作這一特點,因此我們采用的是基于CORBA組件技術。
2.3 JMS技術
在異構數據庫集成中。要有效解決數據分布的異構性、實現客戶訪問的透明性以及保持每個成員數據庫系統的自治性,而且消息的發送者和接收者在時間上沒有相關性,就必須解決不同平臺不同數據庫之間的數據通信,即每條消息只有一個消費者,而要解決數據通信,首先要解決數據的傳輸方式問題。消息的發送者和接收者之間建立一一對應的關系,JMS支持兩種異步消息處理模式點對點消息模型在此消息模型中,另外接收者須確認消息的成功處理。消息的發送者向消息隊列發送消息,然后消息的接收者就可以從該消息隊列中取得消息。
2.4 發布/訂閱消息模型
在此消息模型中,消息的發布者通過一個成為主題的虛擬通道向多個訂閱者發布消息,訂閱者可以選擇訂閱某個主題,使用發布/訂閱的JMS客戶可以建立持久性的訂閱,發送至一個主題的任何消息將發送到該主題的所有訂閱者,從而允許接收者斷開連接。因此消息的發布者和訂閱者之間是一對多的關系。以后再重新連接,在此模型中,并收集在其斷開連接期間發布者發布的消息。發送消息的發布者不依賴于訂閱消息的訂閱者。
3異構網互聯的硬件與軟件設計
系統中XML與數據庫的轉換主要指將XML文檔中的數據寫入數據庫中。在此之前,先需要將XML文檔中內容轉換為SOL語句,然后利用SQL語句對數據庫進行操作即可。下面給出實現XML文檔轉換成SOL語句的方法類XMLToDB的主要方法:
public void to DB(Stting xmIFilename)
{String sql:
try 1
doc=open Dcument(xm fle name):
}catch (Except ion{}
domToSgl= new DomToSgl0:
sql=domToS g1.writeSgl(doc):
conn .create Connection:
try{
conn execute Update(sg1):
)catch(SQL Exception e)
{System.out.println(e.get Messageo);
4結語
XML中間件是當今的熱點技術,通過Intranet和XML技術,提高了信息系統的整體效能。針對網絡環境中異構數據庫數據共享問題,采用XML的異構數據庫中間件技術實現異構數據庫之間信息交換。這一方法具有可擴展性好、跨平臺特性、執行效率較高的優點,在實際應用中有著較廣闊的應用前景。
參考文獻
[1]孟小峰.web數據管理研究綜述[J].計算機研究發展,2001,38(4):385~395.
[2]張志強,周立柱,馮建華.Web數據庫技術簡述[J].計算機科學,2001,28(5):1~6.
[3]王寧,王能斌.異構數據源集成系統查詢分解和優化的實現[J].軟件學報,2000,11(2):222~228.
[4]馬艷鋒,孟詳武.基于元數據的數據倉庫安全性探討[J].計算機應用研究,2004,21(4):100~101
[5]盧正鼎,李兵,肖衛軍,等.基于XML的文件系統和多數據庫系統的集成[J].小型微型計算機系統,2002,23(5):588~591.
[6] 盧正鼎,張素智.集成web數據的系統框架與實現方法[J].小型微型計算機系統,2003,24(10):1759~1763.