亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

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

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

        周文軍

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

        1 概述

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

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

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

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

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

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

        2.1 UDE概述

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

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

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

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

        UDE工作原理如圖2所示:

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

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

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

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

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

        參與數(shù)據(jù)交換的應(yīng)用系統(tǒng)可以調(diào)用接口函數(shù),按照規(guī)定格式填寫(xiě)參數(shù),實(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ù)庫(kù)轉(zhuǎn)接模塊):

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

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

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

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

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

        維護(hù)數(shù)據(jù)庫(kù)操作的事務(wù)完整性:對(duì)每個(gè)Connection Wrapper進(jìn)行提交和回滾,一旦出錯(cuò)自動(dòng)回滾。

        釋放所有連接:除了通過(guò)正常方法釋放外,在它被回收時(shí)強(qiáng)制進(jìn)行所有連接的釋放。

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

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

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

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

        2.3 消息定義

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

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

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

        圖3 消息體定義

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

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

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

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

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

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

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

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

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

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

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

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

        4 結(jié)束語(yǔ)

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

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

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

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

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

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

        猜你喜歡
        消息數(shù)據(jù)庫(kù)模塊
        28通道收發(fā)處理模塊設(shè)計(jì)
        “選修3—3”模塊的復(fù)習(xí)備考
        一張圖看5G消息
        數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        選修6 第三模塊 International Relationships
        消息
        消息
        亚洲天堂久久午夜福利| 国产精品三级av及在线观看 | 亚洲男同免费视频网站| 男女调情视频在线观看| 蜜臀av色欲a片无码精品一区| 亚洲av一宅男色影视| 亚洲成a人网站在线看| 少妇人妻系列中文在线| 国产三级国产精品国产专区50| 日本做受120秒免费视频| 亚洲碰碰人人av熟女天堂| 91情侣在线精品国产免费| 国产精品成人一区二区在线不卡| 四虎成人精品国产永久免费无码| 最近中文字幕在线mv视频在线| 免费一级a毛片在线播出| 一本色道久久88加勒比—综合| 国产精品久免费的黄网站| 亚洲午夜福利在线视频| 亚洲黄色一级毛片| 一区二区三区精品偷拍| 最新中文字幕人妻少妇| 99久久人妻精品免费二区 | 日本不卡一区二区三区在线| 国产农村三片免费网站| 久久精品国产亚洲av热东京热| 视频一区视频二区制服丝袜| 中文字幕乱码人妻一区二区三区| 亚洲加勒比无码一区二区在线播放| 久久伊人精品中文字幕有| 久久天天躁狠狠躁夜夜avapp| 国产精品多人P群无码| 国产在线h视频| 国产精品毛片av一区二区三区| 精品人妻少妇丰满久久久免| 久久国产精品偷任你爽任你| 日日摸夜夜添夜夜添无码免费视频| 三级国产女主播在线观看| 亚洲av永久久无久之码精| 丰满少妇人妻久久精品| 人妻中文字幕无码系列|