李滿(mǎn)玲
摘要:針對(duì)現(xiàn)有稅務(wù)領(lǐng)域中各應(yīng)用系統(tǒng)之間的異構(gòu)性、非關(guān)聯(lián)性和共享數(shù)據(jù)難度大,提出構(gòu)建一個(gè)復(fù)雜網(wǎng)絡(luò)環(huán)境下的基于RDF/XML模式的高容錯(cuò)松耦合的數(shù)據(jù)交換平臺(tái)。該平臺(tái)由高可靠并行數(shù)據(jù)傳輸路由、數(shù)據(jù)郵局、跨平臺(tái)異構(gòu)數(shù)據(jù)適配器構(gòu)成,建立基于軟總線(xiàn)的異步消息傳輸機(jī)制,采用基于規(guī)則的元數(shù)據(jù)表示方法,通過(guò)數(shù)據(jù)郵局的路由管理實(shí)現(xiàn)一對(duì)多、多對(duì)一和多對(duì)多的松耦合高容錯(cuò)RDF/XML數(shù)據(jù)交換。最后,用實(shí)際應(yīng)用證明了該數(shù)據(jù)交換平臺(tái)的可行性和有效性。
關(guān)鍵詞:RDF/XML;公共元數(shù)據(jù);適配器;數(shù)據(jù)郵局;交換監(jiān)控中心
中圖分類(lèi)號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2014)14-3214-03
Abstract: According to the heterogeneity between each application system, the existing tax in the field of non relevance and shared data is difficult, presents a loosely coupled RDF/XML model of complex network environment based on the high fault tolerance data exchange platform. The platform is composed of highly reliable parallel data transmission route, data post office, cross platform heterogeneous data adapter, establishment of asynchronous message transmission mechanism based on software bus, representation of rule based on the metadata, data routing management through the post office to realize one to many, many to one and many to many loosely coupled with high fault tolerant RDF/XML data exchange. Finally, with the practical application has proved its feasibility and validity of the data exchange platform.
Key word: RDF/XML; public metadata; adapters; data post office; exchange monitoring center
隨著數(shù)字信息化進(jìn)程的飛速發(fā)展,各行各業(yè)的數(shù)字化工程都在如火如荼的進(jìn)行,由于各應(yīng)用系統(tǒng)建立的先后不同以及需求多樣化的緣故,數(shù)據(jù)資源分布比較擴(kuò)散,同時(shí)也出現(xiàn)了資源重復(fù)建設(shè)現(xiàn)象1]。在日常工作中需要的信息往往存在于不同的應(yīng)用系統(tǒng)之中,而這些應(yīng)用系統(tǒng)又都是各自獨(dú)立,互不通信,給信息的獲取帶來(lái)嚴(yán)重障礙[2-3]。為了方便、快捷獲取共享資源,將各應(yīng)用系統(tǒng)中的資源進(jìn)行整合,建立異構(gòu)數(shù)據(jù)交換平臺(tái)就顯得尤為重要[4-5]。
本文以湖南地稅系統(tǒng)中各個(gè)應(yīng)用系統(tǒng)的數(shù)據(jù)交換平臺(tái)為背景,構(gòu)建一個(gè)基于復(fù)雜網(wǎng)絡(luò)環(huán)境的高容錯(cuò)松耦合的RDF/XML模式的數(shù)據(jù)交換平臺(tái),為解決異構(gòu)系統(tǒng)間的數(shù)據(jù)交換提供一個(gè)可供參考的方案。
1 數(shù)據(jù)交換平臺(tái)的系統(tǒng)框架
數(shù)據(jù)交換平臺(tái)是一種總線(xiàn)式的數(shù)據(jù)交換、異構(gòu)系統(tǒng)同步方案,主要由適配器、數(shù)據(jù)郵局中間件、設(shè)計(jì)中心、數(shù)據(jù)交換中心、監(jiān)控中心和數(shù)據(jù)標(biāo)準(zhǔn)化工具六個(gè)部分組成。其系統(tǒng)框架圖如圖1所示。其中,適配器是與各外部數(shù)據(jù)源和應(yīng)用系統(tǒng)的連接器。數(shù)據(jù)交換中心完成由一個(gè)數(shù)據(jù)交換的核心引擎構(gòu)成,負(fù)責(zé)一個(gè)數(shù)據(jù)交換雙方(信息提供者或信息需求者)的交換管理、數(shù)據(jù)的發(fā)送接收和格式轉(zhuǎn)換等任務(wù)。數(shù)據(jù)郵局中間件是一個(gè)基于JMS技術(shù)和Web服務(wù)以及RDF/XML模式的通訊中間件,它是由一系列服務(wù)、Web Service接口、數(shù)據(jù)庫(kù)以及中間件組成。設(shè)計(jì)中心是對(duì)平臺(tái)進(jìn)行統(tǒng)一配置、管理、監(jiān)控的人機(jī)交互模塊,負(fù)責(zé)數(shù)據(jù)交換任務(wù)的配置與定義、對(duì)外服務(wù)接口、數(shù)據(jù)隊(duì)列管理和管理與監(jiān)控等任務(wù)。監(jiān)控中心是用來(lái)繪制交換中心的節(jié)點(diǎn)關(guān)系和部署,實(shí)時(shí)觀(guān)察各個(gè)節(jié)點(diǎn)的狀態(tài)。數(shù)據(jù)標(biāo)準(zhǔn)化工具用來(lái)維護(hù)數(shù)據(jù)標(biāo)準(zhǔn)化維護(hù)與管理。
2 數(shù)據(jù)郵局中間件技術(shù)實(shí)現(xiàn)
數(shù)據(jù)郵局是利用消息的耦合方式來(lái)實(shí)現(xiàn)系統(tǒng)間的互連,通過(guò)節(jié)點(diǎn)間的相互聯(lián)系構(gòu)造出數(shù)據(jù)交換環(huán)境,建立即插即用的應(yīng)用消息總線(xiàn),降低系統(tǒng)間的耦合性。數(shù)據(jù)郵局運(yùn)行在數(shù)據(jù)交換平臺(tái)/應(yīng)用系統(tǒng)端,由數(shù)據(jù)交換平臺(tái)/應(yīng)用系統(tǒng)調(diào)用。數(shù)據(jù)郵局是數(shù)據(jù)交換平臺(tái)/應(yīng)用系統(tǒng)和適配器通信的橋梁,它通過(guò)消息收發(fā)器模塊與適配器進(jìn)行連接通信。數(shù)據(jù)郵局只有一個(gè)消息收發(fā)器,但這個(gè)消息收發(fā)器可以與多個(gè)適配器節(jié)點(diǎn)進(jìn)行連接,從而使得適配器節(jié)點(diǎn)和數(shù)據(jù)郵局之間是一對(duì)多的關(guān)系。各個(gè)模塊之間采用松耦合技術(shù),可方便系統(tǒng)進(jìn)行升級(jí)擴(kuò)展。其功能框架圖如圖2所示。
1) 信道設(shè)計(jì)。實(shí)現(xiàn)信道時(shí),出站信道和入站信道是按照通信協(xié)議成對(duì)實(shí)現(xiàn)的,主要由SOCKET、HTTP、TCP、SMTP等多種協(xié)議來(lái)實(shí)現(xiàn)的。同時(shí),還要保證目的適配器入站信道的協(xié)議必須與出站信道使用的協(xié)議一致。交換路由管理模塊來(lái)實(shí)現(xiàn)信道和通信端口的選擇。信道包括入站信道DrtpReadMessage類(lèi)和出站信道DrtpSendMessage類(lèi)。
DrtpReadMessage類(lèi)是入站信道的核心進(jìn)程,主要負(fù)責(zé)Socket連接的監(jiān)聽(tīng)和建立,用異步傳輸方式來(lái)接收消息,并將接收到的消息存入入站隊(duì)列,信道關(guān)閉時(shí)清理其所占用的系統(tǒng)資源。DrtpReadMessage類(lèi)主要是用來(lái)監(jiān)聽(tīng)適配器的連接請(qǐng)求,由線(xiàn)程 (LCRequest)來(lái)進(jìn)行循環(huán)監(jiān)聽(tīng)。收到連接請(qǐng)求后,建立接收請(qǐng)求會(huì)話(huà)類(lèi)(DRMSession)對(duì)象,并在會(huì)話(huà)管理的哈希表中加入請(qǐng)求會(huì)話(huà)類(lèi)對(duì)象,然后調(diào)用Socket異步接收函數(shù)來(lái)接收消息數(shù)據(jù)包。當(dāng)接收完畢后,在入站隊(duì)列中寫(xiě)入消息,等待消息收發(fā)器的下一步操作。
DrtpSendMessage類(lèi)是出站信道核心進(jìn)程類(lèi),主要負(fù)責(zé)讀取從持久出站隊(duì)列或出站隊(duì)列中的消息。將消息數(shù)據(jù)包的目的地址從路由表中的信息解析出來(lái),并將該消息數(shù)據(jù)包發(fā)送出去,若是發(fā)送失敗的消息是需要寫(xiě)入異常隊(duì)列的,信道關(guān)閉時(shí)清理其所占用的系統(tǒng)資源。DrtpSendMessage類(lèi)主要用來(lái)循環(huán)讀取出站隊(duì)列或持久出站隊(duì)列中的消息,根據(jù)從路由表中解析出的消息目的地址連接遠(yuǎn)程服務(wù)器,連接成功后建立新的會(huì)話(huà)調(diào)用線(xiàn)程池中的線(xiàn)程發(fā)送當(dāng)前會(huì)話(huà)中的數(shù)據(jù)。
2) 隊(duì)列管理設(shè)計(jì)。一般來(lái)說(shuō),所有的隊(duì)列的消息都是存放在內(nèi)存中的,便于數(shù)據(jù)的讀取。但持久出站隊(duì)列的消息則是保存在硬盤(pán)外的。所有的隊(duì)列都是采用先進(jìn)先出的模式進(jìn)行管理。只能被讀取一次,一旦讀取后就會(huì)被系統(tǒng)刪除。
3) 交換路由管理設(shè)計(jì)。交換路由的管理是數(shù)據(jù)郵局實(shí)現(xiàn)消息交換的基礎(chǔ),數(shù)據(jù)郵局在交換路由的管理上,使用的是距離向量的方式,數(shù)據(jù)郵局的交換路由信息,是由相臨的節(jié)點(diǎn)的路由信息推導(dǎo)而來(lái)。路由信息中包含了節(jié)點(diǎn)的距離和線(xiàn)路的帶寬。數(shù)據(jù)郵局總是使用節(jié)點(diǎn)距離最短的路由,在節(jié)點(diǎn)距離相同的時(shí)候,使用帶寬最高的路由。其主要工作是數(shù)據(jù)郵局交換路由表的維護(hù)。路由表包含兩個(gè)部分的信息:發(fā)送端即本地適配器及接收端即遠(yuǎn)端適配器的信息。
數(shù)據(jù)郵局實(shí)現(xiàn)“點(diǎn)到點(diǎn)”或“發(fā)布/訂閱”的路由轉(zhuǎn)發(fā)主要是通過(guò)分析路由策略。根據(jù)交換路由表的設(shè)置,交換中心的交換引擎實(shí)現(xiàn)消息發(fā)送方和接收方的數(shù)據(jù)交換。數(shù)據(jù)郵局根據(jù)消息頭中的控制信息的不同,而選擇對(duì)應(yīng)的路由方法。第一種方法是點(diǎn)對(duì)點(diǎn)的方式,主要由消息發(fā)送者指定消息的目的地,交換中心根據(jù)消息頭中的目的地進(jìn)行消息的路由。第二種方法是發(fā)布/訂閱方法,交換中心在消息服務(wù)總線(xiàn)建立主題組別,每個(gè)客戶(hù)端都可以向這個(gè)主題發(fā)布消息或訂閱消息,類(lèi)似于一種廣播方式。并且通過(guò)適配器通過(guò)監(jiān)控服務(wù)獲得所有發(fā)布或訂閱的組別ID(GROUP_NO),如果發(fā)布或訂閱的組別ID相同,則可以將它們相連保存,生成路由表信息。消息到達(dá)后,數(shù)據(jù)郵局會(huì)獲得消息頭里的組別ID,根據(jù)ID查找路由表信息,對(duì)找到的訂閱適配器ID在設(shè)計(jì)中心中查找其提供的配置連接信息并調(diào)用它將數(shù)據(jù)推送到目標(biāo)適配器。
交換中心引入緩存數(shù)據(jù)庫(kù)和消息中間件MQ以保證數(shù)據(jù)可靠地傳送到每個(gè)目標(biāo)適配器。交換中心采用存儲(chǔ)轉(zhuǎn)發(fā)策略,先將數(shù)據(jù)存放到緩存數(shù)據(jù)庫(kù)中,并根據(jù)路由表來(lái)選擇路由,最后將消息發(fā)送到對(duì)應(yīng)的數(shù)據(jù)隊(duì)列中。通過(guò)MQ可以屏蔽不同的通信協(xié)議之間的差異,簡(jiǎn)化網(wǎng)絡(luò)編程的復(fù)雜性,以松耦合的方式獨(dú)自運(yùn)行。交換路由表如下所示:
配置連接信息如下所示:
4) 消息收發(fā)器設(shè)計(jì)。消息收發(fā)器是適配器與數(shù)據(jù)郵局交互的樞紐,主要是實(shí)現(xiàn)觸發(fā)轉(zhuǎn)發(fā)消息到其他適配器的功能。對(duì)于消息入站,入站隊(duì)列或異常隊(duì)列中的消息經(jīng)由消息收發(fā)器讀取,然后將這些消息發(fā)送到數(shù)據(jù)郵局,由數(shù)據(jù)郵局轉(zhuǎn)發(fā)給數(shù)據(jù)交換平臺(tái)/應(yīng)用系統(tǒng)。對(duì)于消息出站,數(shù)據(jù)郵局將消息發(fā)送給消息收發(fā)器,發(fā)送消息到出站隊(duì)列中,并通過(guò)出站信道發(fā)送出去。如果接收消息是路由消息時(shí),路由管理模塊將更改交換路由表。如果接收消息是需要轉(zhuǎn)發(fā)到其他適配器時(shí),將直接保存在出站隊(duì)列中,并等待出站信道的讀取和轉(zhuǎn)發(fā)送。
3 實(shí)際應(yīng)用及分析[6-8]
根據(jù)本文提出的數(shù)據(jù)交換平臺(tái)的體系框架,開(kāi)發(fā)了數(shù)據(jù)交換平臺(tái)原型系統(tǒng)。系統(tǒng)開(kāi)發(fā)中的Linux系統(tǒng)運(yùn)行在Red Hat Enterprise Linux 4(64位)的系統(tǒng)中,Window系統(tǒng)運(yùn)行在Windows Server 2003系統(tǒng)中,數(shù)據(jù)庫(kù)采用Oracle 11g,并配置設(shè)計(jì)服務(wù)器、適配器、數(shù)據(jù)標(biāo)準(zhǔn)化服務(wù)器、監(jiān)控服務(wù)器、數(shù)據(jù)交換引擎服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器的網(wǎng)絡(luò)地址,最后,將數(shù)據(jù)交換平臺(tái)原型系統(tǒng)在株洲地稅系統(tǒng)進(jìn)行運(yùn)行測(cè)試,經(jīng)過(guò)半年的運(yùn)行,效果比較好。
根據(jù)實(shí)驗(yàn)運(yùn)行結(jié)果,分析本平臺(tái)的優(yōu)勢(shì)具有以下特點(diǎn):第一,解決了地稅領(lǐng)域中已經(jīng)建立的基于Java、.Net等技術(shù),Windows、Linux等不同平臺(tái)的大集中系統(tǒng)、稅源管理系統(tǒng)、統(tǒng)一流轉(zhuǎn)審批平臺(tái)、納稅服務(wù)平臺(tái)、湖南地稅門(mén)戶(hù)網(wǎng)站群、網(wǎng)上申報(bào)系統(tǒng)、財(cái)稅庫(kù)銀系統(tǒng)、12366短信平臺(tái)、外部數(shù)據(jù)平臺(tái)、統(tǒng)一支撐平臺(tái)、核心業(yè)務(wù)接口系統(tǒng)等的數(shù)據(jù)共享問(wèn)題。第二,基于地稅領(lǐng)域中的各業(yè)務(wù)應(yīng)用系統(tǒng),建立了可供單位共享使用的數(shù)據(jù)中心,實(shí)現(xiàn)了地稅信息系統(tǒng)數(shù)據(jù)的有效整合和集中。第三,平臺(tái)采用了安全可靠的數(shù)據(jù)加密和數(shù)據(jù)傳輸技術(shù)。第四,平臺(tái)的數(shù)據(jù)采集功能強(qiáng)大,能夠?qū)崿F(xiàn)從Excel、FoxPro、SQL Server、Oracle等不同數(shù)據(jù)格式的數(shù)據(jù)采集和集中轉(zhuǎn)換。第五,平臺(tái)用戶(hù)界面友好,操作簡(jiǎn)單易用。
4 結(jié)束語(yǔ)
本文研究的解決方案能很好地解決了地稅領(lǐng)域中已建立的十幾套業(yè)務(wù)應(yīng)用系統(tǒng)存在的缺乏信息共享和互通互聯(lián)的信道和平臺(tái),以及協(xié)同應(yīng)用困難等問(wèn)題。本平臺(tái)在株洲地稅系統(tǒng)實(shí)施后,運(yùn)行良好,效果顯著,為促進(jìn)湖南地稅系統(tǒng)的數(shù)據(jù)共享提供了確實(shí)可行的方法,順應(yīng)了稅務(wù)系統(tǒng)的信息化建設(shè)要求,具有較大的推廣價(jià)值和廣闊的應(yīng)用前景。
參考文獻(xiàn):
[1] 趙永輝.信息網(wǎng)絡(luò)異構(gòu)數(shù)據(jù)交換技術(shù)研究與實(shí)現(xiàn)[D].西安:西北工業(yè)大學(xué),2007.
[2] 李功新.基于歸檔日志的數(shù)據(jù)同步服務(wù)平臺(tái)研究與應(yīng)用[J].電力信息化,2010(8):31-35.
[3] 陳錦平.通信層數(shù)據(jù)交換中間件設(shè)計(jì)實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(jì),2013,34(3):955-959.
[4] Mudholkar G S,Asubonteng K O.Data Transformation Approach to Lifetimes Data Analysis An Overview[J]. Journal of Statistical Planning and Inference,2010,140(10):2903-2918.
[5] 孫揚(yáng).一種面向混合數(shù)據(jù)集可視化的高效數(shù)據(jù)轉(zhuǎn)換技術(shù)[J].國(guó)防科技大學(xué)學(xué)報(bào),2010,32(3):83-88.
[6] Fong J,Pang F,Bloor C.Converting relational database into XML document[C]//Database and Expert Systems Applications,2001.Proceedings.12th International Workshop on.IEEE,2001:61-65.
[7] 邱麗麗,俞烽.異構(gòu)數(shù)據(jù)動(dòng)態(tài)交互平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,2013,30(3):182-185.
[8] 陳施衛(wèi).基于XML的異構(gòu)數(shù)據(jù)庫(kù)數(shù)據(jù)交換的研究與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2012.
DrtpSendMessage類(lèi)是出站信道核心進(jìn)程類(lèi),主要負(fù)責(zé)讀取從持久出站隊(duì)列或出站隊(duì)列中的消息。將消息數(shù)據(jù)包的目的地址從路由表中的信息解析出來(lái),并將該消息數(shù)據(jù)包發(fā)送出去,若是發(fā)送失敗的消息是需要寫(xiě)入異常隊(duì)列的,信道關(guān)閉時(shí)清理其所占用的系統(tǒng)資源。DrtpSendMessage類(lèi)主要用來(lái)循環(huán)讀取出站隊(duì)列或持久出站隊(duì)列中的消息,根據(jù)從路由表中解析出的消息目的地址連接遠(yuǎn)程服務(wù)器,連接成功后建立新的會(huì)話(huà)調(diào)用線(xiàn)程池中的線(xiàn)程發(fā)送當(dāng)前會(huì)話(huà)中的數(shù)據(jù)。
2) 隊(duì)列管理設(shè)計(jì)。一般來(lái)說(shuō),所有的隊(duì)列的消息都是存放在內(nèi)存中的,便于數(shù)據(jù)的讀取。但持久出站隊(duì)列的消息則是保存在硬盤(pán)外的。所有的隊(duì)列都是采用先進(jìn)先出的模式進(jìn)行管理。只能被讀取一次,一旦讀取后就會(huì)被系統(tǒng)刪除。
3) 交換路由管理設(shè)計(jì)。交換路由的管理是數(shù)據(jù)郵局實(shí)現(xiàn)消息交換的基礎(chǔ),數(shù)據(jù)郵局在交換路由的管理上,使用的是距離向量的方式,數(shù)據(jù)郵局的交換路由信息,是由相臨的節(jié)點(diǎn)的路由信息推導(dǎo)而來(lái)。路由信息中包含了節(jié)點(diǎn)的距離和線(xiàn)路的帶寬。數(shù)據(jù)郵局總是使用節(jié)點(diǎn)距離最短的路由,在節(jié)點(diǎn)距離相同的時(shí)候,使用帶寬最高的路由。其主要工作是數(shù)據(jù)郵局交換路由表的維護(hù)。路由表包含兩個(gè)部分的信息:發(fā)送端即本地適配器及接收端即遠(yuǎn)端適配器的信息。
數(shù)據(jù)郵局實(shí)現(xiàn)“點(diǎn)到點(diǎn)”或“發(fā)布/訂閱”的路由轉(zhuǎn)發(fā)主要是通過(guò)分析路由策略。根據(jù)交換路由表的設(shè)置,交換中心的交換引擎實(shí)現(xiàn)消息發(fā)送方和接收方的數(shù)據(jù)交換。數(shù)據(jù)郵局根據(jù)消息頭中的控制信息的不同,而選擇對(duì)應(yīng)的路由方法。第一種方法是點(diǎn)對(duì)點(diǎn)的方式,主要由消息發(fā)送者指定消息的目的地,交換中心根據(jù)消息頭中的目的地進(jìn)行消息的路由。第二種方法是發(fā)布/訂閱方法,交換中心在消息服務(wù)總線(xiàn)建立主題組別,每個(gè)客戶(hù)端都可以向這個(gè)主題發(fā)布消息或訂閱消息,類(lèi)似于一種廣播方式。并且通過(guò)適配器通過(guò)監(jiān)控服務(wù)獲得所有發(fā)布或訂閱的組別ID(GROUP_NO),如果發(fā)布或訂閱的組別ID相同,則可以將它們相連保存,生成路由表信息。消息到達(dá)后,數(shù)據(jù)郵局會(huì)獲得消息頭里的組別ID,根據(jù)ID查找路由表信息,對(duì)找到的訂閱適配器ID在設(shè)計(jì)中心中查找其提供的配置連接信息并調(diào)用它將數(shù)據(jù)推送到目標(biāo)適配器。
交換中心引入緩存數(shù)據(jù)庫(kù)和消息中間件MQ以保證數(shù)據(jù)可靠地傳送到每個(gè)目標(biāo)適配器。交換中心采用存儲(chǔ)轉(zhuǎn)發(fā)策略,先將數(shù)據(jù)存放到緩存數(shù)據(jù)庫(kù)中,并根據(jù)路由表來(lái)選擇路由,最后將消息發(fā)送到對(duì)應(yīng)的數(shù)據(jù)隊(duì)列中。通過(guò)MQ可以屏蔽不同的通信協(xié)議之間的差異,簡(jiǎn)化網(wǎng)絡(luò)編程的復(fù)雜性,以松耦合的方式獨(dú)自運(yùn)行。交換路由表如下所示:
配置連接信息如下所示:
4) 消息收發(fā)器設(shè)計(jì)。消息收發(fā)器是適配器與數(shù)據(jù)郵局交互的樞紐,主要是實(shí)現(xiàn)觸發(fā)轉(zhuǎn)發(fā)消息到其他適配器的功能。對(duì)于消息入站,入站隊(duì)列或異常隊(duì)列中的消息經(jīng)由消息收發(fā)器讀取,然后將這些消息發(fā)送到數(shù)據(jù)郵局,由數(shù)據(jù)郵局轉(zhuǎn)發(fā)給數(shù)據(jù)交換平臺(tái)/應(yīng)用系統(tǒng)。對(duì)于消息出站,數(shù)據(jù)郵局將消息發(fā)送給消息收發(fā)器,發(fā)送消息到出站隊(duì)列中,并通過(guò)出站信道發(fā)送出去。如果接收消息是路由消息時(shí),路由管理模塊將更改交換路由表。如果接收消息是需要轉(zhuǎn)發(fā)到其他適配器時(shí),將直接保存在出站隊(duì)列中,并等待出站信道的讀取和轉(zhuǎn)發(fā)送。
3 實(shí)際應(yīng)用及分析[6-8]
根據(jù)本文提出的數(shù)據(jù)交換平臺(tái)的體系框架,開(kāi)發(fā)了數(shù)據(jù)交換平臺(tái)原型系統(tǒng)。系統(tǒng)開(kāi)發(fā)中的Linux系統(tǒng)運(yùn)行在Red Hat Enterprise Linux 4(64位)的系統(tǒng)中,Window系統(tǒng)運(yùn)行在Windows Server 2003系統(tǒng)中,數(shù)據(jù)庫(kù)采用Oracle 11g,并配置設(shè)計(jì)服務(wù)器、適配器、數(shù)據(jù)標(biāo)準(zhǔn)化服務(wù)器、監(jiān)控服務(wù)器、數(shù)據(jù)交換引擎服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器的網(wǎng)絡(luò)地址,最后,將數(shù)據(jù)交換平臺(tái)原型系統(tǒng)在株洲地稅系統(tǒng)進(jìn)行運(yùn)行測(cè)試,經(jīng)過(guò)半年的運(yùn)行,效果比較好。
根據(jù)實(shí)驗(yàn)運(yùn)行結(jié)果,分析本平臺(tái)的優(yōu)勢(shì)具有以下特點(diǎn):第一,解決了地稅領(lǐng)域中已經(jīng)建立的基于Java、.Net等技術(shù),Windows、Linux等不同平臺(tái)的大集中系統(tǒng)、稅源管理系統(tǒng)、統(tǒng)一流轉(zhuǎn)審批平臺(tái)、納稅服務(wù)平臺(tái)、湖南地稅門(mén)戶(hù)網(wǎng)站群、網(wǎng)上申報(bào)系統(tǒng)、財(cái)稅庫(kù)銀系統(tǒng)、12366短信平臺(tái)、外部數(shù)據(jù)平臺(tái)、統(tǒng)一支撐平臺(tái)、核心業(yè)務(wù)接口系統(tǒng)等的數(shù)據(jù)共享問(wèn)題。第二,基于地稅領(lǐng)域中的各業(yè)務(wù)應(yīng)用系統(tǒng),建立了可供單位共享使用的數(shù)據(jù)中心,實(shí)現(xiàn)了地稅信息系統(tǒng)數(shù)據(jù)的有效整合和集中。第三,平臺(tái)采用了安全可靠的數(shù)據(jù)加密和數(shù)據(jù)傳輸技術(shù)。第四,平臺(tái)的數(shù)據(jù)采集功能強(qiáng)大,能夠?qū)崿F(xiàn)從Excel、FoxPro、SQL Server、Oracle等不同數(shù)據(jù)格式的數(shù)據(jù)采集和集中轉(zhuǎn)換。第五,平臺(tái)用戶(hù)界面友好,操作簡(jiǎn)單易用。
4 結(jié)束語(yǔ)
本文研究的解決方案能很好地解決了地稅領(lǐng)域中已建立的十幾套業(yè)務(wù)應(yīng)用系統(tǒng)存在的缺乏信息共享和互通互聯(lián)的信道和平臺(tái),以及協(xié)同應(yīng)用困難等問(wèn)題。本平臺(tái)在株洲地稅系統(tǒng)實(shí)施后,運(yùn)行良好,效果顯著,為促進(jìn)湖南地稅系統(tǒng)的數(shù)據(jù)共享提供了確實(shí)可行的方法,順應(yīng)了稅務(wù)系統(tǒng)的信息化建設(shè)要求,具有較大的推廣價(jià)值和廣闊的應(yīng)用前景。
參考文獻(xiàn):
[1] 趙永輝.信息網(wǎng)絡(luò)異構(gòu)數(shù)據(jù)交換技術(shù)研究與實(shí)現(xiàn)[D].西安:西北工業(yè)大學(xué),2007.
[2] 李功新.基于歸檔日志的數(shù)據(jù)同步服務(wù)平臺(tái)研究與應(yīng)用[J].電力信息化,2010(8):31-35.
[3] 陳錦平.通信層數(shù)據(jù)交換中間件設(shè)計(jì)實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(jì),2013,34(3):955-959.
[4] Mudholkar G S,Asubonteng K O.Data Transformation Approach to Lifetimes Data Analysis An Overview[J]. Journal of Statistical Planning and Inference,2010,140(10):2903-2918.
[5] 孫揚(yáng).一種面向混合數(shù)據(jù)集可視化的高效數(shù)據(jù)轉(zhuǎn)換技術(shù)[J].國(guó)防科技大學(xué)學(xué)報(bào),2010,32(3):83-88.
[6] Fong J,Pang F,Bloor C.Converting relational database into XML document[C]//Database and Expert Systems Applications,2001.Proceedings.12th International Workshop on.IEEE,2001:61-65.
[7] 邱麗麗,俞烽.異構(gòu)數(shù)據(jù)動(dòng)態(tài)交互平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,2013,30(3):182-185.
[8] 陳施衛(wèi).基于XML的異構(gòu)數(shù)據(jù)庫(kù)數(shù)據(jù)交換的研究與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2012.
DrtpSendMessage類(lèi)是出站信道核心進(jìn)程類(lèi),主要負(fù)責(zé)讀取從持久出站隊(duì)列或出站隊(duì)列中的消息。將消息數(shù)據(jù)包的目的地址從路由表中的信息解析出來(lái),并將該消息數(shù)據(jù)包發(fā)送出去,若是發(fā)送失敗的消息是需要寫(xiě)入異常隊(duì)列的,信道關(guān)閉時(shí)清理其所占用的系統(tǒng)資源。DrtpSendMessage類(lèi)主要用來(lái)循環(huán)讀取出站隊(duì)列或持久出站隊(duì)列中的消息,根據(jù)從路由表中解析出的消息目的地址連接遠(yuǎn)程服務(wù)器,連接成功后建立新的會(huì)話(huà)調(diào)用線(xiàn)程池中的線(xiàn)程發(fā)送當(dāng)前會(huì)話(huà)中的數(shù)據(jù)。
2) 隊(duì)列管理設(shè)計(jì)。一般來(lái)說(shuō),所有的隊(duì)列的消息都是存放在內(nèi)存中的,便于數(shù)據(jù)的讀取。但持久出站隊(duì)列的消息則是保存在硬盤(pán)外的。所有的隊(duì)列都是采用先進(jìn)先出的模式進(jìn)行管理。只能被讀取一次,一旦讀取后就會(huì)被系統(tǒng)刪除。
3) 交換路由管理設(shè)計(jì)。交換路由的管理是數(shù)據(jù)郵局實(shí)現(xiàn)消息交換的基礎(chǔ),數(shù)據(jù)郵局在交換路由的管理上,使用的是距離向量的方式,數(shù)據(jù)郵局的交換路由信息,是由相臨的節(jié)點(diǎn)的路由信息推導(dǎo)而來(lái)。路由信息中包含了節(jié)點(diǎn)的距離和線(xiàn)路的帶寬。數(shù)據(jù)郵局總是使用節(jié)點(diǎn)距離最短的路由,在節(jié)點(diǎn)距離相同的時(shí)候,使用帶寬最高的路由。其主要工作是數(shù)據(jù)郵局交換路由表的維護(hù)。路由表包含兩個(gè)部分的信息:發(fā)送端即本地適配器及接收端即遠(yuǎn)端適配器的信息。
數(shù)據(jù)郵局實(shí)現(xiàn)“點(diǎn)到點(diǎn)”或“發(fā)布/訂閱”的路由轉(zhuǎn)發(fā)主要是通過(guò)分析路由策略。根據(jù)交換路由表的設(shè)置,交換中心的交換引擎實(shí)現(xiàn)消息發(fā)送方和接收方的數(shù)據(jù)交換。數(shù)據(jù)郵局根據(jù)消息頭中的控制信息的不同,而選擇對(duì)應(yīng)的路由方法。第一種方法是點(diǎn)對(duì)點(diǎn)的方式,主要由消息發(fā)送者指定消息的目的地,交換中心根據(jù)消息頭中的目的地進(jìn)行消息的路由。第二種方法是發(fā)布/訂閱方法,交換中心在消息服務(wù)總線(xiàn)建立主題組別,每個(gè)客戶(hù)端都可以向這個(gè)主題發(fā)布消息或訂閱消息,類(lèi)似于一種廣播方式。并且通過(guò)適配器通過(guò)監(jiān)控服務(wù)獲得所有發(fā)布或訂閱的組別ID(GROUP_NO),如果發(fā)布或訂閱的組別ID相同,則可以將它們相連保存,生成路由表信息。消息到達(dá)后,數(shù)據(jù)郵局會(huì)獲得消息頭里的組別ID,根據(jù)ID查找路由表信息,對(duì)找到的訂閱適配器ID在設(shè)計(jì)中心中查找其提供的配置連接信息并調(diào)用它將數(shù)據(jù)推送到目標(biāo)適配器。
交換中心引入緩存數(shù)據(jù)庫(kù)和消息中間件MQ以保證數(shù)據(jù)可靠地傳送到每個(gè)目標(biāo)適配器。交換中心采用存儲(chǔ)轉(zhuǎn)發(fā)策略,先將數(shù)據(jù)存放到緩存數(shù)據(jù)庫(kù)中,并根據(jù)路由表來(lái)選擇路由,最后將消息發(fā)送到對(duì)應(yīng)的數(shù)據(jù)隊(duì)列中。通過(guò)MQ可以屏蔽不同的通信協(xié)議之間的差異,簡(jiǎn)化網(wǎng)絡(luò)編程的復(fù)雜性,以松耦合的方式獨(dú)自運(yùn)行。交換路由表如下所示:
配置連接信息如下所示:
4) 消息收發(fā)器設(shè)計(jì)。消息收發(fā)器是適配器與數(shù)據(jù)郵局交互的樞紐,主要是實(shí)現(xiàn)觸發(fā)轉(zhuǎn)發(fā)消息到其他適配器的功能。對(duì)于消息入站,入站隊(duì)列或異常隊(duì)列中的消息經(jīng)由消息收發(fā)器讀取,然后將這些消息發(fā)送到數(shù)據(jù)郵局,由數(shù)據(jù)郵局轉(zhuǎn)發(fā)給數(shù)據(jù)交換平臺(tái)/應(yīng)用系統(tǒng)。對(duì)于消息出站,數(shù)據(jù)郵局將消息發(fā)送給消息收發(fā)器,發(fā)送消息到出站隊(duì)列中,并通過(guò)出站信道發(fā)送出去。如果接收消息是路由消息時(shí),路由管理模塊將更改交換路由表。如果接收消息是需要轉(zhuǎn)發(fā)到其他適配器時(shí),將直接保存在出站隊(duì)列中,并等待出站信道的讀取和轉(zhuǎn)發(fā)送。
3 實(shí)際應(yīng)用及分析[6-8]
根據(jù)本文提出的數(shù)據(jù)交換平臺(tái)的體系框架,開(kāi)發(fā)了數(shù)據(jù)交換平臺(tái)原型系統(tǒng)。系統(tǒng)開(kāi)發(fā)中的Linux系統(tǒng)運(yùn)行在Red Hat Enterprise Linux 4(64位)的系統(tǒng)中,Window系統(tǒng)運(yùn)行在Windows Server 2003系統(tǒng)中,數(shù)據(jù)庫(kù)采用Oracle 11g,并配置設(shè)計(jì)服務(wù)器、適配器、數(shù)據(jù)標(biāo)準(zhǔn)化服務(wù)器、監(jiān)控服務(wù)器、數(shù)據(jù)交換引擎服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器的網(wǎng)絡(luò)地址,最后,將數(shù)據(jù)交換平臺(tái)原型系統(tǒng)在株洲地稅系統(tǒng)進(jìn)行運(yùn)行測(cè)試,經(jīng)過(guò)半年的運(yùn)行,效果比較好。
根據(jù)實(shí)驗(yàn)運(yùn)行結(jié)果,分析本平臺(tái)的優(yōu)勢(shì)具有以下特點(diǎn):第一,解決了地稅領(lǐng)域中已經(jīng)建立的基于Java、.Net等技術(shù),Windows、Linux等不同平臺(tái)的大集中系統(tǒng)、稅源管理系統(tǒng)、統(tǒng)一流轉(zhuǎn)審批平臺(tái)、納稅服務(wù)平臺(tái)、湖南地稅門(mén)戶(hù)網(wǎng)站群、網(wǎng)上申報(bào)系統(tǒng)、財(cái)稅庫(kù)銀系統(tǒng)、12366短信平臺(tái)、外部數(shù)據(jù)平臺(tái)、統(tǒng)一支撐平臺(tái)、核心業(yè)務(wù)接口系統(tǒng)等的數(shù)據(jù)共享問(wèn)題。第二,基于地稅領(lǐng)域中的各業(yè)務(wù)應(yīng)用系統(tǒng),建立了可供單位共享使用的數(shù)據(jù)中心,實(shí)現(xiàn)了地稅信息系統(tǒng)數(shù)據(jù)的有效整合和集中。第三,平臺(tái)采用了安全可靠的數(shù)據(jù)加密和數(shù)據(jù)傳輸技術(shù)。第四,平臺(tái)的數(shù)據(jù)采集功能強(qiáng)大,能夠?qū)崿F(xiàn)從Excel、FoxPro、SQL Server、Oracle等不同數(shù)據(jù)格式的數(shù)據(jù)采集和集中轉(zhuǎn)換。第五,平臺(tái)用戶(hù)界面友好,操作簡(jiǎn)單易用。
4 結(jié)束語(yǔ)
本文研究的解決方案能很好地解決了地稅領(lǐng)域中已建立的十幾套業(yè)務(wù)應(yīng)用系統(tǒng)存在的缺乏信息共享和互通互聯(lián)的信道和平臺(tái),以及協(xié)同應(yīng)用困難等問(wèn)題。本平臺(tái)在株洲地稅系統(tǒng)實(shí)施后,運(yùn)行良好,效果顯著,為促進(jìn)湖南地稅系統(tǒng)的數(shù)據(jù)共享提供了確實(shí)可行的方法,順應(yīng)了稅務(wù)系統(tǒng)的信息化建設(shè)要求,具有較大的推廣價(jià)值和廣闊的應(yīng)用前景。
參考文獻(xiàn):
[1] 趙永輝.信息網(wǎng)絡(luò)異構(gòu)數(shù)據(jù)交換技術(shù)研究與實(shí)現(xiàn)[D].西安:西北工業(yè)大學(xué),2007.
[2] 李功新.基于歸檔日志的數(shù)據(jù)同步服務(wù)平臺(tái)研究與應(yīng)用[J].電力信息化,2010(8):31-35.
[3] 陳錦平.通信層數(shù)據(jù)交換中間件設(shè)計(jì)實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(jì),2013,34(3):955-959.
[4] Mudholkar G S,Asubonteng K O.Data Transformation Approach to Lifetimes Data Analysis An Overview[J]. Journal of Statistical Planning and Inference,2010,140(10):2903-2918.
[5] 孫揚(yáng).一種面向混合數(shù)據(jù)集可視化的高效數(shù)據(jù)轉(zhuǎn)換技術(shù)[J].國(guó)防科技大學(xué)學(xué)報(bào),2010,32(3):83-88.
[6] Fong J,Pang F,Bloor C.Converting relational database into XML document[C]//Database and Expert Systems Applications,2001.Proceedings.12th International Workshop on.IEEE,2001:61-65.
[7] 邱麗麗,俞烽.異構(gòu)數(shù)據(jù)動(dòng)態(tài)交互平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,2013,30(3):182-185.
[8] 陳施衛(wèi).基于XML的異構(gòu)數(shù)據(jù)庫(kù)數(shù)據(jù)交換的研究與實(shí)現(xiàn)[D].成都:電子科技大學(xué),2012.