• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于關(guān)系模式的通用數(shù)據(jù)交換系統(tǒng)的構(gòu)建

      2013-08-08 06:17:54周文軍
      中國科技信息 2013年16期
      關(guān)鍵詞:消息數(shù)據(jù)庫模塊

      周文軍

      河北省交通通信管理局,河北 石家莊 050031

      1 概述

      近年來隨著信息化建設(shè)的不斷推進,我國企業(yè)信息化和電子政務(wù)建設(shè)已經(jīng)進入了一個新階段。在信息化建設(shè)過程中,各個企業(yè)和各個部門都出現(xiàn)了多個獨立系統(tǒng)并存的現(xiàn)象,這些系統(tǒng)出自不同的開發(fā)商,不同的技術(shù)架構(gòu),就必然造成數(shù)據(jù)不能交換,不能共享,即所謂的‘信息孤島’問題。另外,隨著我國電子政務(wù)各項工作的深入推進,以及網(wǎng)上企業(yè)年檢、銀稅共享工程等一批信息化應(yīng)用工程的建設(shè),許多政府部門需要共享機關(guān)、企業(yè)、事業(yè)和社團等多種基礎(chǔ)信息。目前整體的IT戰(zhàn)略價值很難體現(xiàn),信息交換與共享勢在必行。

      面對信息化過程中所遇見的這些困惑和需求,目前通常的做法是正面回避數(shù)據(jù)交換問題,而是在架構(gòu)和平臺層面,通過XML技術(shù)和Web service技術(shù)[1,2,3]進行數(shù)據(jù)、應(yīng)用、業(yè)務(wù)和流程層面的整合,實現(xiàn)應(yīng)用系統(tǒng)間的集成性、共享性、互操作性。面向服務(wù)的體系結(jié)構(gòu)(Service-Oriented Architecture, SOA)作為開放的Internet時代IT 體系結(jié)構(gòu)新樣式,雖然支持將業(yè)務(wù)作為鏈接服務(wù)或可重復(fù)業(yè)務(wù)任務(wù)進行集成、跨網(wǎng)絡(luò)訪問[3],但松耦合在帶來應(yīng)變敏捷性的同時,也給業(yè)務(wù)建模和服務(wù)劃分帶來難題,并且對集成遺留系統(tǒng)的工作始終是一個挑戰(zhàn)。

      文獻[2]通過建立交換中心來管理交換節(jié)點的服務(wù)注冊和異構(gòu)數(shù)據(jù)映射,帶來了實現(xiàn)和管理的復(fù)雜化。文獻[4]通過郵件方式交換數(shù)據(jù),但只是完成信息的整體添加。

      在電子政務(wù)系統(tǒng)中,人們期望不同數(shù)據(jù)交換節(jié)點間以對等的方式進行;在接口中定義每個節(jié)點的標(biāo)準(zhǔn)數(shù)據(jù)交換平臺的功能和邏輯表現(xiàn),雙方在對應(yīng)的協(xié)議層次上進行對話。數(shù)據(jù)交換平臺把本屬各部門的異構(gòu)數(shù)據(jù)聯(lián)結(jié)起來,在統(tǒng)一的接口的基礎(chǔ)之上,為每個單位的應(yīng)用系統(tǒng)提供了全局的、透明的數(shù)據(jù)交換和共享。

      本文通過參照網(wǎng)絡(luò)信息交換的原理探討建立一種基于Socket(套接字)的通用數(shù)據(jù)交換系統(tǒng)(Universal Data Exchange System)UDE,旨在達到像網(wǎng)絡(luò)互聯(lián)那樣實現(xiàn)應(yīng)用系統(tǒng)間數(shù)據(jù)共享、互操作的目的。該模型支持在各種技術(shù)環(huán)境中實現(xiàn)系統(tǒng)之間的消息交換,并能在不同的編程語言和操作系統(tǒng)中應(yīng)用;對新業(yè)務(wù)需求的變化具有可擴充性;設(shè)計了一個面向模式的規(guī)則驅(qū)動的數(shù)據(jù)交換方法,該方法以關(guān)系模式為交換標(biāo)準(zhǔn),所有XML描述格式都通過關(guān)系模式這一中間標(biāo)準(zhǔn)完成交換,同時對交換雙方數(shù)據(jù)庫的異構(gòu)性進行了技術(shù)性統(tǒng)一。

      2 系統(tǒng)設(shè)計原理

      2.1 UDE概述

      按照 ISO/OSI參考模型,模型建立在協(xié)議的最高層—應(yīng)用層,采取點對點對等通訊模式,由于是構(gòu)筑在星狀體系上的交換模式,所有的交換單體彼此是獨立的、相互無關(guān)的。數(shù)據(jù)交換功能的直接體現(xiàn)包括獲取、更新、添加、刪除等內(nèi)容。還包括信息的統(tǒng)一封裝,即信息的打包和應(yīng)用系統(tǒng)的統(tǒng)一編址,對傳輸?shù)倪^程進行全程監(jiān)控,提供日志、審計、會話管理、傳輸優(yōu)先級設(shè)定、流量負(fù)荷分析等。在實際應(yīng)用中采用如圖1所示的連接方式。

      圖1 UDE應(yīng)用示意圖

      UDE實現(xiàn)多線程,負(fù)責(zé)接收和發(fā)送,在完成數(shù)據(jù)的查詢、修改的通信協(xié)議中,消息(Message)是數(shù)據(jù)交換的基本單位,通過消息傳遞的方式實現(xiàn)信息交換非常類似于網(wǎng)絡(luò)的消息包傳遞方式。接收節(jié)點負(fù)責(zé)將消息解析成SQL語句,直接操作數(shù)據(jù)庫完成數(shù)據(jù)交換。

      2.2 UDE結(jié)構(gòu)

      UDE工作原理如圖2所示:

      2.2.1 Send/Receive module(發(fā)送/接收模塊):

      采用TCP/IP通訊協(xié)議,發(fā)送方即提起服務(wù)申請方向接收方發(fā)送消息數(shù)據(jù)包,信息格式為符合特定標(biāo)準(zhǔn)的XML字符串格式。接收方接收并解析協(xié)議包,將解析后的信息組合成操作數(shù)據(jù)庫的SQL語句,更新數(shù)據(jù)庫或提取符合條件的數(shù)據(jù)并返回。每次接收完成后回復(fù)發(fā)送端一個ACK確認(rèn)信息,確認(rèn)信息已經(jīng)發(fā)送成功。

      2.2.2 Message Parser/Builder module(消息包轉(zhuǎn)換模塊):

      實現(xiàn)字符串格式數(shù)據(jù)與XML格式之間的相互轉(zhuǎn)換,對信息格式進行檢查驗證,保證發(fā)送/接收數(shù)據(jù)的正確完整性。

      2.2.3 UDE API module(應(yīng)用接口模塊):

      參與數(shù)據(jù)交換的應(yīng)用系統(tǒng)可以調(diào)用接口函數(shù),按照規(guī)定格式填寫參數(shù),實現(xiàn)向其他應(yīng)用系統(tǒng)發(fā)送數(shù)據(jù)。該模塊也可以調(diào)用事件處理程序,接收其他應(yīng)用系統(tǒng)的數(shù)據(jù)消息。

      2.2.4 DB Wrapper Adaptor module(數(shù)據(jù)庫轉(zhuǎn)接模塊):

      圖2 UDE結(jié)構(gòu)

      支持各種常見數(shù)據(jù)庫系統(tǒng)。在定義數(shù)據(jù)源連接時,增加一項數(shù)據(jù)庫操作驅(qū)動配置,用于隔離不同數(shù)據(jù)庫和數(shù)據(jù)庫驅(qū)動的差異,使應(yīng)用系統(tǒng)做到與數(shù)據(jù)庫無關(guān)性,可以將應(yīng)用系統(tǒng)方便地移植到任何其它數(shù)據(jù)庫。

      同時數(shù)據(jù)庫適配器DBAdapter還負(fù)責(zé):

      維護Connection Wrapper對象集和映射連接: Connection Wrapper對象有名稱和打開、關(guān)閉連接方法;

      準(zhǔn)備Connection: 當(dāng)申請連接的新Connection Wrapper在對象集中有同名對象,則直接取該同名對象映射的已申請過的連接作為當(dāng)前連接進行數(shù)據(jù)庫操作,否則調(diào)用新Connection Wrapper的方法取到連接作為當(dāng)前連接,并將對象和連接映射關(guān)系放進對象集。

      維護數(shù)據(jù)庫操作的事務(wù)完整性:對每個Connection Wrapper進行提交和回滾,一旦出錯自動回滾。

      釋放所有連接:除了通過正常方法釋放外,在它被回收時強制進行所有連接的釋放。

      2.2.5 Fields Mapping module(關(guān)系模式定義模塊):

      采用ORM(Object Relational Mapping,對象關(guān)系映射)方式,提供數(shù)據(jù)交換雙方數(shù)據(jù)元的翻譯對照功能,可以進行定制設(shè)置來提高系統(tǒng)的通用性,以系統(tǒng)唯一標(biāo)識(PROCID)以區(qū)分各系統(tǒng)。目的是在異構(gòu)關(guān)系數(shù)據(jù)庫之間建立元模型統(tǒng)一數(shù)據(jù)的語義。

      2.2.6 SQL Generator module(SQL語句生成模塊):

      根據(jù)數(shù)據(jù)庫適配器DBAdapter和Fields Map,將消息轉(zhuǎn)換成操作數(shù)據(jù)庫的SQL語句,減少接口API的復(fù)雜度以及對舊數(shù)據(jù)庫系統(tǒng)具有良好的兼容性。

      2.3 消息定義

      在UDE通信協(xié)議中,消息(Message)是數(shù)據(jù)交換的基本單位,通過消息傳遞的方式實現(xiàn)信息交換非常類似于網(wǎng)絡(luò)的消息包傳遞方式。信息由以下幾部分組成:

      (1)信息頭(Message Header):包含包長度和信息類型(Message type)。包長度用于判斷消息是否接收完畢,在生成消息時自動添加。每種信息類型用于定義信息目的和用途,如REQ表示請求,ANS表示返回信息,ACK表示消息應(yīng)答等。

      (2)信息體(Message Body):是消息的主要載負(fù),即關(guān)系模式定義,包含操作類型、字段類型、數(shù)據(jù)狀態(tài)、數(shù)據(jù)等,使開發(fā)人員更為方便的定義與實現(xiàn)查詢工作,例如查詢分頁功能的自動處理機制,查尋條件的逃逸處理機制,查尋條件的復(fù)合匹配機制等。定義如圖3。

      圖3 消息體定義

      詳細(xì)XML定義示例如下:

      operType=[add,updaate,delete,que ry],filteLevel表示該字段是否為過濾字段以及級別,如為0則表示為普通數(shù)據(jù),不為條件字段,級別相同且不為0的表示在形成條件語句時在一個括號內(nèi)。LogicOper為邏輯操作符(and或or),最后一個則忽略。Join描述多表間的連接關(guān)系。rowsPerPage和curPage實現(xiàn)分頁處理。

      3 系統(tǒng)應(yīng)用

      本文建立的基于消息的通用數(shù)據(jù)交換模型為應(yīng)用系統(tǒng)間數(shù)據(jù)交換提供了理論依據(jù)。據(jù)此,某公司設(shè)計開發(fā)了一套醫(yī)保經(jīng)辦機構(gòu)與參保單位、定點醫(yī)療機構(gòu)、定點藥店、財稅部門、銀行、商業(yè)保險公司、學(xué)校、社區(qū)等的數(shù)據(jù)交換平臺,實現(xiàn)了與各部門的互聯(lián)。下面僅就銀行代收費系統(tǒng)利用UDE數(shù)據(jù)交換模型的實現(xiàn)加以簡單介紹。

      1)消息傳輸模塊:主要實現(xiàn)消息的發(fā)送和接收,采用客戶機/服務(wù)器模式,采用TCP/IP協(xié)議進行通信,利用Socket編程實現(xiàn)網(wǎng)絡(luò)通信。

      在客戶端通過構(gòu)造一個Socket類來建立與服務(wù)器的數(shù)據(jù)流連接,以服務(wù)器監(jiān)聽套接字的IP地址和端口號為參數(shù),連接套接字建立好后,建立套接字的輸入、輸出流,然后分別用read()和write()函數(shù)從套接字輸入和輸出流中進行讀、寫數(shù)據(jù),進行和服務(wù)器端的雙向通信。

      在服務(wù)器端構(gòu)造一個ServerSocket類,然后利用accept()方法監(jiān)聽服務(wù)器的端口是否有客戶端請求連接,如果有請求并連接成功,則創(chuàng)建套接字的輸入、輸出流,同客戶端進行通信。

      2)消息構(gòu)造、解析模塊:實現(xiàn)消息的解析和消息命令碼的執(zhí)行。

      由于該系統(tǒng)功能相對簡單、交換內(nèi)容較為固定,將請求消息封裝成幾個操作碼,如identity(getFee(提取該參保人員的應(yīng)繳費信息)、feeOK(繳費確認(rèn))、feeReturn(取消回退)。其它類型消息按照模型格式設(shè)定。

      3)數(shù)據(jù)庫接口:主要實現(xiàn)對數(shù)據(jù)庫的查詢以及更新功能,通過嵌入式的SQL語句實現(xiàn)。

      以下是系統(tǒng)部分關(guān)鍵Delphi示例代碼:

      該系統(tǒng)通過實現(xiàn)UDE模型,使交換雙方的對接變得非常簡單,交換系統(tǒng)不會過多地受技術(shù)環(huán)境的限制,如操作系統(tǒng)、應(yīng)用服務(wù)器、組件支持環(huán)境等,能避免動態(tài)鏈接庫的泛濫,較好的保持系統(tǒng)的干凈程度。

      4 結(jié)束語

      本模型將數(shù)據(jù)交換的實質(zhì)功能——數(shù)據(jù)提取和更新,通過消息包的形式傳遞服務(wù)請求,最終翻譯成直接操作數(shù)據(jù)庫的SQL命令,來屏蔽交換雙方系統(tǒng)技術(shù)環(huán)境的差異,達到系統(tǒng)間對接容易、簡單的目的。通過數(shù)據(jù)元對照和數(shù)據(jù)庫適配器功能,屏蔽數(shù)據(jù)源異構(gòu)性,實現(xiàn)數(shù)據(jù)表字段語義的一致性處理,達到系統(tǒng)通用性的效果。當(dāng)雙方需求有變化時,只需要更新雙方的數(shù)據(jù)元對照信息即可,不會涉及再開發(fā)問題,僅僅是雙方授權(quán)的交換內(nèi)容的改變。

      該模型能較好的解決應(yīng)用系統(tǒng)間數(shù)據(jù)交換的問題,為在實際應(yīng)用中達到較好的效果,還要在細(xì)節(jié)問題上多考慮,如數(shù)據(jù)壓縮減少網(wǎng)絡(luò)傳輸量,PKI機制實現(xiàn)身份認(rèn)證,關(guān)系模式定義隨著與之交換的系統(tǒng)的增多而增多問題等。

      [1]李冬睿,李梅等.一種電子政務(wù)數(shù)據(jù)交換模型的設(shè)計[J].微計算機信息,2010,2-3:154-155

      [2]作者不詳. PowerDX創(chuàng)智數(shù)據(jù)交換平臺[EB/OL]. [2009-02-18].http://www.powerise.cn/GSCP/DZZW/2009-02/20090218031726Info_326f80ccb 516400a8c05cf174.html

      [3]梅立軍,付小龍,劉啟新等. 基于 SOA 的數(shù)據(jù)交換平臺研究與實現(xiàn)[J]. 計算機工程與設(shè)計,2008, 27(19):69 -71.

      [4]崔學(xué)榮,李 娟. 一個基于Email的數(shù)據(jù)交換模型[J/OL][2010-01-29].電子技術(shù)應(yīng)用http://www.chinaaet.com/article/index.aspx?id=20203.

      猜你喜歡
      消息數(shù)據(jù)庫模塊
      28通道收發(fā)處理模塊設(shè)計
      “選修3—3”模塊的復(fù)習(xí)備考
      一張圖看5G消息
      數(shù)據(jù)庫
      財經(jīng)(2017年2期)2017-03-10 14:35:35
      數(shù)據(jù)庫
      財經(jīng)(2016年15期)2016-06-03 07:38:02
      數(shù)據(jù)庫
      財經(jīng)(2016年3期)2016-03-07 07:44:46
      數(shù)據(jù)庫
      財經(jīng)(2016年6期)2016-02-24 07:41:51
      選修6 第三模塊 International Relationships
      消息
      消息
      长乐市| 积石山| 夏津县| 嘉善县| 孟连| 巴彦淖尔市| 高平市| 博罗县| 乐都县| 吴江市| 晋宁县| 衡阳县| 东兴市| 来宾市| 茂名市| 成都市| 昭苏县| 达拉特旗| 新余市| 苍梧县| 读书| 如皋市| 巴楚县| 道真| 宜黄县| 枞阳县| 上高县| 鄢陵县| 巢湖市| 田林县| 沛县| 安阳县| 河北省| 永仁县| 小金县| 永川市| 临清市| 丹棱县| 枝江市| 洛宁县| 皋兰县|