摘要:數據交換是進行數據融合和集成的重要途徑。在分析XML數據交換技術特點的基礎上,利用XML技術建立了實現異構數據庫間互訪的國土資源電子政務數據交換平臺系統。
關鍵詞:數據交換;XML;異構
中圖分類號:TP 文獻標識碼:A 文章編號:1672-3198(2010)11-0295-01
1 引言
在國土資源電子政務建設和發展的過程中,各部門的業務系統主要圍繞本部門的需求建設實施,而各部門都有自已的政務信息、業務管理及公文流轉等應用系統這些系統采用的數據庫和開發方式各式各樣數據格式、設計水平、工程質量也各不相同。這樣開發出來的應用系統各自獨立,封閉運行,自成一體,基本不能互通互聯,彼此之間的數據共享性和資源交換性很差,從而導致數據資料整體利用率低給不同部門的信息資源共享和整個電子政務資源建設帶來困難。
2 XML的特性
XML(eXtensible Markup Language)可擴展標記語言是由萬維網聯盟創建的一組規范,它是一種在web環境下使用的新標記語言,以便于軟件開發人員和內容創作者在互聯網上組織信息,其目的在于克服HTML的弊端,滿足不斷增長的網絡應用需求。XML具有可擴展性、結構性強、易于處理、平臺無關性、數據存儲與數據顯示相分離、很強的鏈接能力等特點,XML提供了一種可編輯、可解析、可表示各種數據的信息交換格式;同時XML還可以方便的實現對資源的封裝和集成發布。
3 基于XML的數據交換機制
異構數據交換,首先將需交換的異構數據轉換成統一的標準數據結構,經過網絡傳輸與交換,被目標系統接收后,再將標準化的數據轉換成目標數據庫的數據模式,進而實現異構數據的集成共享。本文以基于XML的數據標準化為交換橫型,以XML文檔作為底層信息交換載體進行數據的轉換與傳輸,完成各應用系統之間異構數據的自動、平滑交換。先將異構源數據轉換為XML標準結構文檔,再通過數據傳輸通道將XML標準數據文檔傳送到相應的目標應用系統,最后將接收到的XML標準數據文檔,轉換成自身系統可理解的數據模式,再接收相關的數據信息,進而完成異構數據交互。
4 系統設計分析
4.1 功能設計
數據交換平臺劃分為三個模塊,插件管理模塊、配置管理模塊、數據交換模塊。插件管理模塊提供將用戶擴展的插件導入到交換平臺的功能,其中插件劃分為過濾插件和轉換插件兩種;配置管理模塊通過界面化操作,將用戶配置的交換邏輯存儲為響應的配置文件;數據交換模塊由用戶設置源數據源和目標數據源,然后讀取對應的配置文件來完成數據的交換操作,該模塊同樣支持將源數據導出成中間文件和將中間文件導入到數據庫的功能。
4.2 數據交換設計
數據交換類型分為三種:源數據導出為交換文件}交換文件導人目標數據庫;源數據庫與目標數據庫直連交換。
4.2.1 源數據導出為交換文件
交換的第一步就是解析配置文件,為了操作方便,我們為交換文件定義了一個對應的結構體,在反序列化的時候將配置文件解析成一個結構體集合。然后遍歷一下這個結構體集合,分別去處理一個一個的表。操作時首先要取到源數據的篩選條件,默認導出表中的所有數據,然后再根據配置文件中列的對應關系,得到需要取到的源表中的所有字段,接下來就根據篩選條件可以取到需要交換的數據,每一個表的返回結果放在一個數據表DataTable中。最終將所有的DataTable放到一個數據集DataSet中,然后序列化成xml即為交換文件的數據部分存放于交換文件就中的Data目錄下。如果源數據表中存在二進制字段,則將此二進制字段中的內容直接寫成文件,放置在交換文件夾中的Files目錄下,文件名為Guid,在取出的數據表中這個字段的值由生成的文件名Guid替換。最后將配置文件拷貝至交換文件就中的Struct目錄下。
4.2.2 交換文件導入目標數據庫
將交換文件導入數據庫服務器可以分為兩步,首先將交換文件解壓出來得到解壓的文件路徑,然后在解壓出來的文件夾中取到配置文件路徑,再解析配置文件,得到源和目標的對應關系,然后解析交換文件中的數據文件,反序列化為數據集DataSet,然后遍歷一下這個數據集。再根據配置文件中的對應關系,取DataTable中數據往日標數據庫插入數據。如果目標數據庫中涉及到二進制字段,則到解壓文件夾的Files目錄中根據字段值Guid取到同名文件,將其轉化為二進制信息往目標數據庫中插入。
4.2.3 源數據庫與目標數據庫直接交換
如果數據庫服務器能夠直接連上的話就會采用這種方式進行數據交換,就不需要生成中間交換文件了。首先也是分析交換文件,然后再從源數據庫中取數據,再將取出來的數據集往目標數據庫中插入。
參考文獻
[1]馬淑嬌.李曉,周俊林.異構數據庫集成中的XML技術探討[J].計算機應用研究,2004,(1).
[2]陳偉,王琳,朱丹.如何實現異構敷據庫中敷據的史捷[J].中田醫學教育技術,2006,(6).