摘 要:本文對目前較常用的異構(gòu)數(shù)據(jù)交換的技術(shù)進(jìn)行了分析,總結(jié)了各種方法的優(yōu)缺點(diǎn)。借鑒虛擬法的數(shù)據(jù)集成的實(shí)現(xiàn)思想,結(jié)合實(shí)際應(yīng)用中數(shù)據(jù)集成的需求,提出基于XML技術(shù)實(shí)現(xiàn)異構(gòu)數(shù)據(jù)交換集成的解決方案。該方案簡單易行,各系統(tǒng)仍然按照原來的方式運(yùn)行,共同部分只是XML文檔,當(dāng)需要進(jìn)行信息交流時(shí),通過中間件把本地?cái)?shù)據(jù)庫數(shù)據(jù)轉(zhuǎn)換成XML數(shù)據(jù)文件即可。
關(guān)鍵詞:信息孤島 數(shù)據(jù)轉(zhuǎn)換方法 數(shù)據(jù)倉庫法 虛擬法 XML
中圖分類號(hào):TP311文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1674-098X(2011)02(c)-0046-01
隨著Internet技術(shù)的迅速發(fā)展,許多單位或部門都逐步實(shí)現(xiàn)了信息化管理。由于各部門的業(yè)務(wù)和功能歸屬不同,形成許多相互隔離的、由不同核心技術(shù)設(shè)計(jì)的信息服務(wù)和管理系統(tǒng)。由于系統(tǒng)中數(shù)據(jù)的表示不同,系統(tǒng)間交換數(shù)據(jù)很困難,形成“信息孤島”[1],從而使得各個(gè)系統(tǒng)無法保證數(shù)據(jù)的一致性。
1 常用的解決辦法
企業(yè)應(yīng)用集成EAI(Enterprise ApplicationIntegration)是解決這一問題的方法之一。EAI的定義是:“通過硬件、軟件、標(biāo)準(zhǔn)和業(yè)務(wù)過程的結(jié)合,實(shí)現(xiàn)兩個(gè)或多個(gè)應(yīng)用系統(tǒng)的無縫集成,使它們能夠統(tǒng)一運(yùn)作”[2]。
按照不同的實(shí)現(xiàn)技術(shù),集成方法可以分為三類:數(shù)據(jù)轉(zhuǎn)換方法、數(shù)據(jù)倉庫法和虛擬法。(1)數(shù)據(jù)轉(zhuǎn)換方法:通過轉(zhuǎn)換工具在不同數(shù)據(jù)庫之間進(jìn)行模式映射,將一個(gè)數(shù)據(jù)庫中的數(shù)據(jù)復(fù)制、轉(zhuǎn)換為另一個(gè)數(shù)據(jù)庫中的數(shù)據(jù),從而實(shí)現(xiàn)數(shù)據(jù)庫之間的轉(zhuǎn)換。此種方法技術(shù)簡單,容易實(shí)現(xiàn)。(2)數(shù)據(jù)倉庫法:在客戶端與數(shù)據(jù)源之間增加一個(gè)數(shù)據(jù)倉庫層,用于存儲(chǔ)來自各數(shù)據(jù)源要交換的數(shù)據(jù),系統(tǒng)提供對這個(gè)數(shù)據(jù)倉庫的查詢機(jī)制。好處是既可用于數(shù)據(jù)集成,又可用于決策支持查詢。但當(dāng)數(shù)據(jù)源的數(shù)據(jù)發(fā)生變化時(shí),數(shù)據(jù)倉庫中的數(shù)據(jù)也要作相應(yīng)的更新。因此,這種體系結(jié)構(gòu)還需要一些數(shù)據(jù)加載和增量更新等操作。(3)虛擬法:該方法中數(shù)據(jù)仍保存在各數(shù)據(jù)源上,集成系統(tǒng)僅提供一個(gè)虛擬的集成視圖和對該集成模式的查詢請求轉(zhuǎn)化成對各異構(gòu)數(shù)據(jù)源的查詢。在這種體系結(jié)構(gòu)中,中間層根本不存儲(chǔ)數(shù)據(jù),當(dāng)客戶端發(fā)出查詢請求時(shí),只需將查詢發(fā)送到相應(yīng)的數(shù)據(jù)源上。比較適合于高度自治、集成數(shù)據(jù)多、且更新變化快的異構(gòu)數(shù)據(jù)源集成 [3]。
2 基于XML的異構(gòu)的數(shù)據(jù)交換的解決辦法
XML技術(shù)具有良好的可靠性與互操作性,再加上XML是基于WEB設(shè)計(jì)的,更適合于網(wǎng)絡(luò)化環(huán)境,因此被廣泛應(yīng)用在電子商務(wù)時(shí)代。XML的可擴(kuò)展性和自描述性更讓其在數(shù)據(jù)描述和信息共享方面有著相當(dāng)?shù)膬?yōu)勢。用戶可根據(jù)需求自由定制標(biāo)記,有極大的靈活性,可形成針對行業(yè)特點(diǎn)的不同標(biāo)記集。XML Schema支持許多復(fù)雜的數(shù)據(jù)類型,引入原型和命名空間概念,可隨意擴(kuò)充,使得其不但編寫簡單,而且內(nèi)容充實(shí)完整,能夠給出XML文檔詳細(xì)明確的定義。
如果將XML數(shù)據(jù)文件與數(shù)據(jù)庫表關(guān)聯(lián)起來,則既可以保留原表的結(jié)構(gòu)信息,還可以有效地讓XML文檔在網(wǎng)絡(luò)及數(shù)據(jù)庫間交換數(shù)據(jù),并解決不同數(shù)據(jù)庫系統(tǒng)、語義定義等數(shù)據(jù)表達(dá)方面的差異。這就能夠解決不同應(yīng)用系統(tǒng)間信息資源集成的分布和異構(gòu)等問題,使得數(shù)據(jù)交換的手段更為簡單,明確。
2.1 數(shù)據(jù)交換的實(shí)現(xiàn)思想
借鑒數(shù)據(jù)轉(zhuǎn)換方法的思想,將內(nèi)部需要溝通的信息從系統(tǒng)數(shù)據(jù)源中抽取出來并將其轉(zhuǎn)化為標(biāo)準(zhǔn)的XML文檔,然后傳送到數(shù)據(jù)集成平臺(tái)的數(shù)據(jù)交換區(qū)。當(dāng)應(yīng)用系統(tǒng)需要使用這些信息時(shí),讀取數(shù)據(jù)交換區(qū)的XML數(shù)據(jù)文件,進(jìn)行數(shù)據(jù)加載,從而完成數(shù)據(jù)的集成交換。
每個(gè)結(jié)構(gòu)不同的XML文檔都有各自的Schema模式,Schema中定義相應(yīng)XML文檔的結(jié)構(gòu)、數(shù)據(jù)類型以及屬性等信息。建立各XML Schema模式與不同數(shù)據(jù)源信息間的映射關(guān)系,可以稱之為數(shù)據(jù)轉(zhuǎn)換模式定義,它實(shí)際是定義了應(yīng)用系統(tǒng)數(shù)據(jù)與標(biāo)準(zhǔn)結(jié)構(gòu)XML數(shù)據(jù)文件的轉(zhuǎn)換規(guī)則,如圖1所示。在數(shù)據(jù)轉(zhuǎn)換標(biāo)準(zhǔn)結(jié)構(gòu)和轉(zhuǎn)換模式確定后,通過數(shù)據(jù)源數(shù)據(jù)到XML文件轉(zhuǎn)換的中間件(即抽取轉(zhuǎn)換器),根據(jù)定義的映射關(guān)系就能實(shí)現(xiàn)異構(gòu)數(shù)據(jù)源數(shù)據(jù)到XML標(biāo)準(zhǔn)結(jié)構(gòu)文件的轉(zhuǎn)換。然后將XML數(shù)據(jù)文件傳送到數(shù)據(jù)交換區(qū)。最后,應(yīng)用系統(tǒng)從數(shù)據(jù)交換區(qū)取得XML數(shù)據(jù)文件,通過當(dāng)前應(yīng)用系統(tǒng)的轉(zhuǎn)換模式定義,利用數(shù)據(jù)抽取轉(zhuǎn)換器將接收到的XML數(shù)據(jù)文件轉(zhuǎn)換成自身系統(tǒng)數(shù)據(jù)源中的數(shù)據(jù)信息。進(jìn)而實(shí)現(xiàn)異構(gòu)數(shù)據(jù)源間的數(shù)據(jù)交互。圖1是數(shù)據(jù)抽取轉(zhuǎn)換集成原型圖。
2.2 方案特點(diǎn)
該方案的優(yōu)點(diǎn)是簡單易行,共同部分可以只是一些XML文檔,對于這些文檔只做存儲(chǔ)、提取就可以了。各系統(tǒng)仍然按照原來的方式運(yùn)行,當(dāng)需要進(jìn)行數(shù)據(jù)交換時(shí),通過中間件把本地?cái)?shù)據(jù)庫數(shù)據(jù)轉(zhuǎn)換成XML數(shù)據(jù)文件或者進(jìn)行相反的轉(zhuǎn)換即可,利用不同系統(tǒng)都能與XML文檔互相轉(zhuǎn)換,進(jìn)而實(shí)現(xiàn)不同系統(tǒng)間的數(shù)據(jù)交換。
3 展望
要想進(jìn)一步解決“信息孤島”問題,可以嘗試?yán)肵ML數(shù)據(jù)庫作為各系統(tǒng)的中間體,數(shù)據(jù)可以存儲(chǔ)在原有系統(tǒng),也可以存儲(chǔ)在XML數(shù)據(jù)庫中。當(dāng)有新的應(yīng)用需求時(shí),可以把XML數(shù)據(jù)庫作為新的應(yīng)用系統(tǒng)的數(shù)據(jù)處理后臺(tái)。經(jīng)過一段時(shí)間的運(yùn)行后,原有系統(tǒng)的數(shù)據(jù)會(huì)逐漸轉(zhuǎn)移到XML數(shù)據(jù)庫中來,從而達(dá)到所有數(shù)據(jù)平臺(tái)最終統(tǒng)一。
參考文獻(xiàn)
[1]曹國法.企業(yè)信息化產(chǎn)生信息孤島的根源及解決方法分析[M].
[2]eNet硅谷動(dòng)力,數(shù)據(jù)集成中間件OnceDI技術(shù)白皮書[M].
[3]東方通公司,TongIntegrator技術(shù)白皮書[M].
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文