李萍
DOI:10.16644/j.cnki.cn33-1094/tp.2016.07.010
摘 要: 桂林旅游信息化經(jīng)過(guò)多年的建設(shè),形成了許多信息孤島,如何實(shí)現(xiàn)各應(yīng)用系統(tǒng)之間的信息共享和數(shù)據(jù)交換,是當(dāng)前旅游信息化工作的重點(diǎn)和難點(diǎn)。介紹了桂林旅游數(shù)據(jù)共享交換平臺(tái)的基本設(shè)計(jì)思路和體系架構(gòu),詳細(xì)闡述了數(shù)據(jù)交換流程和具體對(duì)接實(shí)例,論述了數(shù)據(jù)采集、處理、存儲(chǔ)和共享分發(fā)的過(guò)程及關(guān)鍵技術(shù)。
關(guān)鍵詞: 數(shù)據(jù)采集; 數(shù)據(jù)共享; 數(shù)據(jù)交換; 數(shù)據(jù)接口
中圖分類號(hào):TP391 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1006-8228(2016)07-34-04
Design and implementation of data sharing and exchanging platform based on WebService
Li Ping
(Guilin Tourism Management Department of Public Service, Guilin, Guangxi 541001, China)
Abstract: After many years of construction, Guilin tourism information system has formed a lot of information islands, how to realize the information sharing and data exchange between various application systems, is the focus and difficulty of the current tourism information work. This paper describes the basic design idea of Guilin tourism data sharing and exchanging platform, the system architecture of data sharing, the process of data exchanging and specific docking example, and discusses the process and key technology of acquisition, dealing, storing, and sharing of data.
Key words: data acquisition; data sharing; data exchanging; data interface
0 引言
在旅游+和互聯(lián)網(wǎng)+的時(shí)代背景下,智慧旅游建設(shè)進(jìn)入了深水區(qū),數(shù)據(jù)共享的呼聲日益高漲,桂林旅游綜合數(shù)據(jù)中心應(yīng)勢(shì)而建,旨在整合桂林旅游資源,并與桂林市云計(jì)算中心對(duì)接,全面實(shí)現(xiàn)智慧桂林大數(shù)據(jù)的共享。數(shù)據(jù)中心還承擔(dān)國(guó)家層面數(shù)據(jù)中心下游區(qū)域數(shù)據(jù)中心角色,與國(guó)家旅游局?jǐn)?shù)據(jù)中心及自治區(qū)旅游數(shù)據(jù)中心一起協(xié)同工作。
數(shù)據(jù)中心通過(guò)數(shù)據(jù)共享交換平臺(tái)對(duì)各部門、各應(yīng)用系統(tǒng)進(jìn)行底層整合,為門戶、應(yīng)用和信息資源整合提供數(shù)據(jù)交換、資源管理等基本服務(wù)接口,實(shí)現(xiàn)數(shù)據(jù)縱向貫穿、橫向融合、外圍擴(kuò)展,從根本上解決旅游行業(yè)和涉旅部門數(shù)據(jù)互聯(lián)互通問(wèn)題[1]。
1 基本設(shè)計(jì)思路
數(shù)據(jù)共享交換的內(nèi)容實(shí)體是數(shù)據(jù)信息,需要解決的核心業(yè)務(wù)問(wèn)題是數(shù)據(jù)從各應(yīng)用系統(tǒng)安全接入到數(shù)據(jù)中心。因此,設(shè)計(jì)的基本理念是以數(shù)據(jù)為核心、以業(yè)務(wù)流程為主線、以需求為導(dǎo)向,建立全市統(tǒng)一的旅游信息交換平臺(tái),制定統(tǒng)一的數(shù)據(jù)采集標(biāo)準(zhǔn),進(jìn)行數(shù)據(jù)采集、編目、分級(jí),實(shí)現(xiàn)旅游數(shù)據(jù)分類歸檔、授權(quán)應(yīng)用[2];建立數(shù)據(jù)交換接口和共享機(jī)制,解決數(shù)據(jù)交換和共享的問(wèn)題;通過(guò)基礎(chǔ)數(shù)據(jù)采集與對(duì)接,縱向打通旅游行業(yè)信息系統(tǒng)數(shù)據(jù),橫向打通涉旅管理單位、三大運(yùn)營(yíng)商及互聯(lián)網(wǎng)數(shù)據(jù),解決信息孤島問(wèn)題。
一方面通過(guò)數(shù)據(jù)中心數(shù)據(jù)共享交換平臺(tái)的接口將旅游行業(yè)縱向系統(tǒng)和其他橫向涉旅部門的數(shù)據(jù)獲取到數(shù)據(jù)中心;另一方面將采集到的數(shù)據(jù)通過(guò)數(shù)據(jù)交換平臺(tái)接口傳輸給其他需要的部門系統(tǒng)。在進(jìn)行數(shù)據(jù)共享交換時(shí),深入分析各類數(shù)據(jù)的特點(diǎn)和規(guī)格,針對(duì)不同的系統(tǒng)制定不同的接口規(guī)范和數(shù)據(jù)標(biāo)準(zhǔn),實(shí)現(xiàn)各信息系統(tǒng)與數(shù)據(jù)中心的無(wú)縫對(duì)接。
2 數(shù)據(jù)共享交換平臺(tái)的結(jié)構(gòu)和功能
2.1 數(shù)據(jù)共享的體系架構(gòu)
桂林旅游綜合數(shù)據(jù)中心與各系統(tǒng)采用星-總線型交換結(jié)構(gòu),所有的交換服務(wù)都是集中在綜合數(shù)據(jù)中心端,只需要管理中心節(jié)點(diǎn)上的服務(wù),各系統(tǒng)之間不進(jìn)行數(shù)據(jù)關(guān)聯(lián)。
數(shù)據(jù)中心公開(kāi)的Web服務(wù)主要用于共享數(shù)據(jù),業(yè)務(wù)系統(tǒng)可以通過(guò)公開(kāi)Web服務(wù)的方式向數(shù)據(jù)中心提供數(shù)據(jù),也可以調(diào)用綜合數(shù)據(jù)中心的數(shù)據(jù)共享服務(wù)查詢數(shù)據(jù)。各系統(tǒng)與數(shù)據(jù)中心通過(guò)WebService接口進(jìn)行數(shù)據(jù)交換,接口是采用中立的方式進(jìn)行定義的,它獨(dú)立于實(shí)現(xiàn)服務(wù)的硬件平臺(tái)、操作系統(tǒng)和編程語(yǔ)言,這使得構(gòu)建在各種各樣的系統(tǒng)中的服務(wù)可以使用一種統(tǒng)一和通用的方式進(jìn)行交互,從而實(shí)現(xiàn)數(shù)據(jù)共享[3]。
2.2 數(shù)據(jù)交換流程
數(shù)據(jù)交換是指為了滿足不同信息系統(tǒng)之間數(shù)據(jù)資源的共享需要,依據(jù)一定的原則,采取相應(yīng)的技術(shù),實(shí)現(xiàn)不同信息系統(tǒng)之間數(shù)據(jù)資源共享的過(guò)程。
數(shù)據(jù)交換平臺(tái)由中心交換節(jié)點(diǎn)和端交換節(jié)點(diǎn)組成,依托數(shù)據(jù)中心統(tǒng)一的網(wǎng)絡(luò)架構(gòu),通過(guò)采用一致的交換協(xié)議,實(shí)現(xiàn)跨地區(qū)、跨部門、跨系統(tǒng)的數(shù)據(jù)交換。數(shù)據(jù)中心作為中心交換節(jié)點(diǎn),需要共享的系統(tǒng)作為端交換節(jié)點(diǎn)。數(shù)據(jù)交換流程如圖1所示。
業(yè)務(wù)庫(kù)是各部門需要共享的數(shù)據(jù)資源庫(kù)。
中心交換節(jié)點(diǎn)提供交換數(shù)據(jù)的采集、數(shù)據(jù)處理、分發(fā)服務(wù),實(shí)現(xiàn)交換節(jié)點(diǎn)之間的數(shù)據(jù)路由和傳送功能。中間庫(kù)是數(shù)據(jù)中心提供交換數(shù)據(jù)的存儲(chǔ)庫(kù),交換文件作用與交換庫(kù)相同。中間庫(kù)提供交換數(shù)據(jù)的存儲(chǔ)庫(kù)、數(shù)據(jù)寫入和讀取接口,以及文件上傳和下載接口,業(yè)務(wù)系統(tǒng)與中間庫(kù)通過(guò)交換橋接交換數(shù)據(jù),實(shí)現(xiàn)業(yè)務(wù)數(shù)據(jù)和交換數(shù)據(jù)之間的轉(zhuǎn)換。中間庫(kù)可以是虛擬數(shù)據(jù)庫(kù)。
端交換節(jié)點(diǎn)是交換平臺(tái)中數(shù)據(jù)交換的起點(diǎn)或終點(diǎn)。數(shù)據(jù)交換過(guò)程可分為數(shù)據(jù)采集、數(shù)據(jù)處理和數(shù)據(jù)分發(fā)三個(gè)階段。
⑴ 數(shù)據(jù)采集:數(shù)據(jù)從提供方的業(yè)務(wù)系統(tǒng)轉(zhuǎn)換并傳輸?shù)街行墓?jié)點(diǎn)的采集服務(wù)中間信息庫(kù)。對(duì)于行業(yè)內(nèi)的現(xiàn)有信息系統(tǒng)通過(guò)WebService接口進(jìn)行數(shù)據(jù)對(duì)接,實(shí)現(xiàn)數(shù)據(jù)的自動(dòng)同步。對(duì)于橫向涉旅部門的數(shù)據(jù)采集,以定制開(kāi)發(fā)為主,能夠進(jìn)行系統(tǒng)對(duì)接的就直接對(duì)接,如有一定困難,先采用批量導(dǎo)入和網(wǎng)上填報(bào)的形式,定期上報(bào),以后再逐步實(shí)現(xiàn)系統(tǒng)對(duì)接。
⑵ 數(shù)據(jù)處理:經(jīng)過(guò)中心節(jié)點(diǎn)的各種異構(gòu)數(shù)據(jù),通過(guò)各類技術(shù)手段進(jìn)行清洗、格式轉(zhuǎn)換、數(shù)據(jù)含義轉(zhuǎn)換、重新編目等整理后,形成規(guī)范數(shù)據(jù)存入到數(shù)據(jù)中心,需要交換時(shí)再?gòu)闹行墓?jié)點(diǎn)傳輸?shù)椒职l(fā)服務(wù)數(shù)據(jù)庫(kù)。
⑶ 數(shù)據(jù)分發(fā):數(shù)據(jù)從中心節(jié)點(diǎn)的分發(fā)服務(wù)數(shù)據(jù)庫(kù)傳輸并轉(zhuǎn)換到接收方的業(yè)務(wù)系統(tǒng)。
平臺(tái)統(tǒng)一采用基于WebService的Web共享服務(wù)方式提供可信消息服務(wù)的調(diào)用接口,通過(guò)建立規(guī)范的數(shù)據(jù)接口標(biāo)準(zhǔn)和交換協(xié)議標(biāo)準(zhǔn),方便相關(guān)涉旅部門進(jìn)行數(shù)據(jù)交換。
行業(yè)內(nèi)已建系統(tǒng)采用應(yīng)用程序接口(Application Program Interface,API)進(jìn)行對(duì)接,數(shù)據(jù)中心作為服務(wù)器端提供相關(guān)接口,由其他系統(tǒng)開(kāi)發(fā)商生成對(duì)應(yīng)的客戶端,進(jìn)行對(duì)應(yīng)開(kāi)發(fā)后,實(shí)現(xiàn)數(shù)據(jù)的交換。新建系統(tǒng)采用webservice技術(shù)進(jìn)行功能嵌入。
3 數(shù)據(jù)對(duì)接實(shí)例
導(dǎo)游人員管理系統(tǒng)(簡(jiǎn)稱導(dǎo)管系統(tǒng))是國(guó)家旅游局在2001年建立的系統(tǒng),分國(guó)家——自治區(qū)——市三級(jí)管理。2016年初,國(guó)家旅游局提出導(dǎo)游人員可自由職業(yè),游客可自由選擇導(dǎo)游。因此導(dǎo)游預(yù)約系統(tǒng)在各地開(kāi)始建立,在桂林市就有多家公司提出想建立導(dǎo)游預(yù)約系統(tǒng)。桂林旅游發(fā)展委員會(huì)為了更好地適應(yīng)市場(chǎng)需求,決定將國(guó)家旅游局導(dǎo)管系統(tǒng)中的桂林導(dǎo)游人員信息接入數(shù)據(jù)中心,然后再分發(fā)到各導(dǎo)游預(yù)約系統(tǒng),實(shí)現(xiàn)多端同源,統(tǒng)一監(jiān)管。數(shù)據(jù)報(bào)送和接收流程如圖2所示。
3.1 數(shù)據(jù)報(bào)送
導(dǎo)管系統(tǒng)將數(shù)據(jù)報(bào)送的請(qǐng)求發(fā)送給中心的服務(wù)請(qǐng)求監(jiān)聽(tīng)器,監(jiān)聽(tīng)器在接到后,通過(guò)服務(wù)解釋處理器根據(jù)類型、優(yōu)先級(jí)發(fā)送給中心的傳輸管道。傳輸管道中數(shù)據(jù)處理模塊將數(shù)據(jù)進(jìn)行校驗(yàn)(格式、內(nèi)容)。如果校驗(yàn)不通過(guò),則發(fā)送給導(dǎo)管系統(tǒng)錯(cuò)誤回執(zhí),需要重新發(fā)送該條數(shù)據(jù)。如果通過(guò)校驗(yàn),則數(shù)據(jù)處理模塊將數(shù)據(jù)分類、加密、壓縮傳輸給分發(fā)服務(wù)中間信息庫(kù),同時(shí)發(fā)送成功接收回執(zhí)給導(dǎo)管系統(tǒng)。分發(fā)服務(wù)中間信息庫(kù)將接收的數(shù)據(jù)轉(zhuǎn)發(fā)給數(shù)據(jù)中心信息處理庫(kù)。
3.2 數(shù)據(jù)接收
導(dǎo)游預(yù)約系統(tǒng)向數(shù)據(jù)中心發(fā)出數(shù)據(jù)請(qǐng)求,中心的服務(wù)請(qǐng)求監(jiān)聽(tīng)器在接到請(qǐng)求后,將請(qǐng)求發(fā)給服務(wù)解釋處理器。服務(wù)解釋處理器分析請(qǐng)求類型,安排優(yōu)先級(jí)發(fā)送給中心的傳輸管道。傳輸管道中的數(shù)據(jù)處理模塊將請(qǐng)求發(fā)送給分發(fā)服務(wù)中間信息庫(kù)。如果在分發(fā)服務(wù)中間信息庫(kù)查到請(qǐng)求結(jié)果,則分發(fā)服務(wù)中間信息庫(kù)將結(jié)果發(fā)送給數(shù)據(jù)處理模塊。數(shù)據(jù)處理模塊將數(shù)據(jù)解壓縮、解密后傳送給導(dǎo)游預(yù)約系統(tǒng)。如果在分發(fā)服務(wù)中間信息庫(kù)沒(méi)有找到相應(yīng)的請(qǐng)求結(jié)果,則分發(fā)服務(wù)中間信息庫(kù)將請(qǐng)求發(fā)送給數(shù)據(jù)中心信息處理庫(kù),中心信息處理庫(kù)將結(jié)果發(fā)送給分發(fā)服務(wù)中間信息庫(kù)。分發(fā)服務(wù)中間信息庫(kù)會(huì)將結(jié)果發(fā)送給數(shù)據(jù)處理模塊,數(shù)據(jù)處理模塊將結(jié)果傳送給導(dǎo)游預(yù)約系統(tǒng)。
3.3 數(shù)據(jù)同步
利用web services方式進(jìn)行數(shù)據(jù)對(duì)接外,還將采用數(shù)據(jù)庫(kù)的同步方式進(jìn)行數(shù)據(jù)的實(shí)時(shí)同步。
內(nèi)部程序Src\
com.daqsoft.datacenter.admin.action
主要是action層的代碼,主要的action程序和form程序
負(fù)責(zé)程序的轉(zhuǎn)向控制
com.daqsoft.datacenter.service
程序的主要service層,供action訪問(wèn) 調(diào)用dao
com.daqsoft.datacenter.hibernate.domain
主要的映射對(duì)象類hibernate配置文件對(duì)應(yīng)的實(shí)體類對(duì)象
com.daqsoft.context
主要的上下文變量 程序
com.daqsoft.datacenter.util
主要的公用提煉的程序代碼
com.daqsoft.datacenter.rest.action
主要的webservice接口程序,導(dǎo)游webservice調(diào)用程序
配置文件Src\conf
sources.properties 定義的一些字符變量,可配置修改
application-bean.xml spring管理的bean對(duì)象配置文件
application-context.xml spring管理的bean對(duì)象配置文件
application-servlet-admin.xml spring管理的bean對(duì)象配置文件
4 關(guān)鍵技術(shù)
4.1 WebService接口技術(shù)
WebService是建立可操作的分布式應(yīng)用程序的新平臺(tái)。它定義了應(yīng)用程序如何在Web上實(shí)現(xiàn)互操作性。簡(jiǎn)單地說(shuō),WebService是一個(gè)模塊化的API,它們可以通過(guò)網(wǎng)絡(luò)進(jìn)行調(diào)用,來(lái)執(zhí)行遠(yuǎn)程系統(tǒng)的請(qǐng)求任務(wù),具有平臺(tái)無(wú)關(guān)性,編輯語(yǔ)言無(wú)關(guān)性,適用于異構(gòu)環(huán)境業(yè)務(wù)系統(tǒng)的通信與協(xié)作。WebService接口技術(shù)是利用標(biāo)準(zhǔn)的Web 協(xié)議和可編程訪問(wèn)的Web 組件,提供跨平臺(tái)的互操作性,讓各個(gè)信息系統(tǒng)之間協(xié)同工作[4]。
4.2 XML技術(shù)
XML(Extensible Markup Language,可擴(kuò)展標(biāo)識(shí)語(yǔ)言),是WebService平臺(tái)中表示數(shù)據(jù)的基本格式,是一種元標(biāo)記語(yǔ)言,它除了易于建立和分析,主要的優(yōu)點(diǎn)在于既與平臺(tái)無(wú)關(guān),又與廠商無(wú)關(guān),WebService的接口和通信技術(shù)均采用XML形式。如果要實(shí)現(xiàn)異構(gòu)平臺(tái)上不同系統(tǒng)之間的數(shù)據(jù)共享和互相通信的問(wèn)題,數(shù)據(jù)就必須以一種標(biāo)準(zhǔn)的格式在Web上傳輸,這個(gè)標(biāo)準(zhǔn)就是XML[4]。
4.3 旅游數(shù)據(jù)信息的標(biāo)準(zhǔn)化
根據(jù)國(guó)家旅游局《目的地旅游信息分類與描述標(biāo)準(zhǔn)》建立了統(tǒng)一的數(shù)據(jù)采集標(biāo)準(zhǔn),實(shí)現(xiàn)旅游數(shù)據(jù)分類歸檔、授權(quán)應(yīng)用;建立了15大類,109個(gè)子類數(shù)據(jù)API接口,逐步建立標(biāo)準(zhǔn)統(tǒng)一、數(shù)據(jù)規(guī)范、持續(xù)更新的旅游基礎(chǔ)信息數(shù)據(jù)中心。
4.4 接口安全設(shè)計(jì)
為了保證系統(tǒng)的安全運(yùn)行,各種接口方式都應(yīng)該保證其接入的安全性。接口的安全是系統(tǒng)安全的一個(gè)重要組成部分。通過(guò)接口實(shí)現(xiàn)技術(shù)上的安全控制,制定專門的安全技術(shù)實(shí)施策略,保證接口的數(shù)據(jù)傳輸和數(shù)據(jù)處理的安全性。系統(tǒng)應(yīng)在接入點(diǎn)的網(wǎng)絡(luò)邊界實(shí)施接口安全控制。接口的安全控制在邏輯上包括:安全評(píng)估、訪問(wèn)控制、入侵檢測(cè)、口令認(rèn)證、安全審計(jì)、防惡意代碼、加密等內(nèi)容[5]。
4.5 傳輸控制設(shè)計(jì)
傳輸控制利用高速數(shù)據(jù)通道技術(shù)實(shí)現(xiàn)把前端的大數(shù)據(jù)量并發(fā)請(qǐng)求分發(fā)到后端,從而保證應(yīng)用系統(tǒng)在大量客戶端同時(shí)請(qǐng)求服務(wù)時(shí),能夠保持快速穩(wěn)定的工作狀態(tài)。系統(tǒng)采用傳輸控制手段降低接口網(wǎng)絡(luò)負(fù)擔(dān),提高接口吞吐能力,保證系統(tǒng)的整體處理能力。具體包括負(fù)載均衡、伸縮性與動(dòng)態(tài)配置管理、網(wǎng)絡(luò)調(diào)度等功能。
5 小結(jié)
本文描述了基于WebService的桂林旅游數(shù)據(jù)共享交換平臺(tái)基本設(shè)計(jì)思路,即:以數(shù)據(jù)為核心、以業(yè)務(wù)流程為主線,通過(guò)基礎(chǔ)數(shù)據(jù)采集與對(duì)接,建立統(tǒng)一的旅游信息交換平臺(tái)。數(shù)據(jù)共享的體系架構(gòu)采用星-總線型交換結(jié)構(gòu),數(shù)據(jù)交換流程包括數(shù)據(jù)采集、數(shù)據(jù)處理和數(shù)據(jù)分發(fā)。關(guān)鍵技術(shù)主要有WebService接口技術(shù)、XML技術(shù)、數(shù)據(jù)接口標(biāo)準(zhǔn)、接口安全和傳輸控制技術(shù)。該平臺(tái)為旅游行業(yè)數(shù)據(jù)交換共享提供了數(shù)據(jù)標(biāo)準(zhǔn)和接口規(guī)范,具有開(kāi)放性、可擴(kuò)充性、安全、穩(wěn)定、高效的特性,對(duì)于新形勢(shì)下信息系統(tǒng)的數(shù)據(jù)整合具有較好的參考價(jià)值。
參考文獻(xiàn)(References):
[1] 鄭俊,方旻蔚.淺談智慧旅游建設(shè)[J].計(jì)算機(jī)時(shí)代,2013.5:
68-70
[2] 熊安元,趙芳,王穎,張小纓等.全國(guó)綜合氣象信息共享系統(tǒng)的
設(shè)計(jì)與實(shí)現(xiàn)[J].應(yīng)用氣象學(xué)報(bào),2015.26(4):500-512
[3] 桂林旅游綜合數(shù)據(jù)中心規(guī)劃.
[4] 王露.基于WebService的車輛監(jiān)管系統(tǒng)的研究與應(yīng)用[D].南
昌航空大學(xué),2013:11-18
[5] 黃健敏.有關(guān)計(jì)算機(jī)軟件數(shù)據(jù)接口的應(yīng)用研究[J].測(cè)試工具
與解決方案,2011.11:81-8