帥訓(xùn)波,常鑫,宋曉江,馬洋
(中國石油勘探開發(fā)研究院 廊坊分院 地球物理與信息研究所,河北 廊坊065007)
中國油氣田對(duì)外合作開發(fā)區(qū)塊作為油氣能源領(lǐng)域引領(lǐng)技術(shù)創(chuàng)新的重要窗口之一,其主要業(yè)務(wù)是在國家批準(zhǔn)的中國油氣田區(qū)域內(nèi),與世界各國石油公司聯(lián)合從事油氣資源的勘探、開發(fā)和生產(chǎn)等。由于各跨國公司間的工作習(xí)慣和管理方法存在顯著差異,因而對(duì)綜合生產(chǎn)數(shù)據(jù)的管理,難以形成統(tǒng)一的標(biāo)準(zhǔn)規(guī)范。因此,各區(qū)塊管理的綜合生產(chǎn)數(shù)據(jù)存在明顯異構(gòu)性,主要表現(xiàn)在數(shù)據(jù)格式和量綱的不一致、存儲(chǔ)與管理所用軟件產(chǎn)品或信息系統(tǒng)的不一致,以及各生產(chǎn)數(shù)據(jù)間的推算方法不完全一致等。各區(qū)塊間形成的“信息孤島”不僅嚴(yán)重制約著區(qū)塊間的公共信息充分共享,而且難以滿足中國油氣對(duì)外合作開發(fā)區(qū)塊管理職能部門對(duì)各區(qū)塊生產(chǎn)數(shù)據(jù)進(jìn)行實(shí)時(shí)統(tǒng)計(jì)、對(duì)比分析與決策支持等管理需求。
信息技術(shù)應(yīng)用是企業(yè)提高信息安全共享效率和優(yōu)化管理的重要手段。對(duì)于解決數(shù)據(jù)源異構(gòu)共享問題,當(dāng)前普遍采用XML為中間件的中間數(shù)據(jù)轉(zhuǎn)換方式[1-4],XML具有良好的語義性和易擴(kuò)展性,特別是Schema模式有豐富的數(shù)據(jù)類型定義和數(shù)據(jù)描述功能。面向服務(wù)架構(gòu)SOA(Service-Oriented Architecture)是當(dāng)前系統(tǒng)集成應(yīng)用的熱點(diǎn)技術(shù)[5-9],具有統(tǒng)一標(biāo)準(zhǔn)、靈活配置、擴(kuò)展性能良好和開發(fā)成本低等優(yōu)點(diǎn),通常被選用于構(gòu)造企業(yè)集成應(yīng)用的方法。
針對(duì)各油氣對(duì)外合作區(qū)塊間的數(shù)據(jù)異構(gòu)而造成的“信息孤島”問題,筆者根據(jù)各區(qū)塊對(duì)各類綜合數(shù)據(jù)在編碼、屬性量綱和格式類型等之間的差異,采用XML標(biāo)記語言建立一致性轉(zhuǎn)換過程規(guī)則,由信息系統(tǒng)在讀取數(shù)據(jù)時(shí)自動(dòng)解釋規(guī)則,將異構(gòu)數(shù)據(jù)源轉(zhuǎn)換為標(biāo)準(zhǔn)統(tǒng)一的規(guī)范化數(shù)據(jù),從而建立了數(shù)據(jù)庫與XML文檔間的互映射關(guān)系,實(shí)現(xiàn)對(duì)各個(gè)生產(chǎn)區(qū)塊間的生產(chǎn)綜合數(shù)據(jù)動(dòng)態(tài)集成,為中國油氣對(duì)外合作開發(fā)管理職能部門提供數(shù)據(jù)分析與決策支持。為了既立足于當(dāng)前各區(qū)塊已有的管理信息系統(tǒng)功能,又解決各系統(tǒng)間的應(yīng)用差異,采用SOA方法對(duì)現(xiàn)有的各系統(tǒng)進(jìn)行集成應(yīng)用,不必修改客戶端可以實(shí)現(xiàn)各區(qū)塊間的公共信息安全共享,從而設(shè)計(jì)了一種基于面向服務(wù)的業(yè)務(wù)動(dòng)態(tài)集成應(yīng)用框架。
對(duì)異構(gòu)數(shù)據(jù)源進(jìn)行統(tǒng)一集成的基本思想是應(yīng)用一個(gè)公共數(shù)據(jù)模型,將各異構(gòu)數(shù)據(jù)源關(guān)系模型映射到該公共模型,再將公共模型映射到關(guān)系模型。XML解決異構(gòu)關(guān)系數(shù)據(jù)源可以跨平臺(tái),而且XML的結(jié)構(gòu)靈活、語言豐富,可以表達(dá)關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)和約束,此外,XML還具有優(yōu)良的交互性和靈活性[1-2,4]。針對(duì)中國油氣對(duì)外合作開發(fā)各區(qū)塊的異構(gòu)集成應(yīng)用特點(diǎn),為了滿足快捷方便的數(shù)據(jù)讀取,簡(jiǎn)化規(guī)則建立過程,用于管理職能部門的宏觀統(tǒng)計(jì)與分析,選用XML作為異構(gòu)數(shù)據(jù)統(tǒng)一集成的公共模型。
XML作為異構(gòu)數(shù)據(jù)統(tǒng)一集成的公共模型,主要包括異構(gòu)數(shù)據(jù)源的XML Schema全局模式、各局部數(shù)據(jù)源的XML Schema輸出模式以及全局模式與各輸出模式間的映射關(guān)系。把建立的轉(zhuǎn)換規(guī)則寫入到全局規(guī)則模式Schema模板中,由系統(tǒng)自動(dòng)解釋XML規(guī)則模板,完成異構(gòu)數(shù)據(jù)源的轉(zhuǎn)換。對(duì)轉(zhuǎn)換規(guī)則的構(gòu)建主要包括編碼的轉(zhuǎn)換、屬性量綱轉(zhuǎn)換、字段名稱和類型的轉(zhuǎn)換等規(guī)則。
通過對(duì)映射規(guī)則XML文檔結(jié)構(gòu)的解析,讀取數(shù)據(jù)表的相應(yīng)字段定義,依據(jù)映射規(guī)則判斷,替換成具體的可執(zhí)行的數(shù)據(jù)庫操作語句。具體數(shù)據(jù)流程如圖1所示。
圖1 基于映射規(guī)則的異構(gòu)數(shù)據(jù)集成流程
由于業(yè)務(wù)的特殊性,各油氣區(qū)塊中存在多種應(yīng)用系統(tǒng)并存的現(xiàn)狀和數(shù)據(jù)異構(gòu)性,嚴(yán)重制約著公共信息的安全共享,進(jìn)而影響著各區(qū)塊的綜合生產(chǎn)管理效率。針對(duì)該問題,采用SOA方法對(duì)現(xiàn)有的各系統(tǒng)進(jìn)行集成,設(shè)計(jì)一種基于面向服務(wù)的業(yè)務(wù)集成應(yīng)用框架。
SOA是一種軟件系統(tǒng)架構(gòu),憑借自身的松耦合和跨平臺(tái)等特性,成為當(dāng)前系統(tǒng)集成應(yīng)用的熱點(diǎn)技術(shù),使得企業(yè)可以按照模塊化的方式來添加新服務(wù)或更新現(xiàn)有服務(wù),以解決新的業(yè)務(wù)需要,并可以把企業(yè)現(xiàn)有的或已有的應(yīng)用作為服務(wù),從而保護(hù)了現(xiàn)有信息技術(shù)基礎(chǔ)建設(shè)的投資。
服務(wù)是SOA方法中基本組成單位,每個(gè)服務(wù)具有自治性和跨平臺(tái)性,服務(wù)單元之間相互通信。通過采用企業(yè)服務(wù)總線ESB(Enterprise Service Bus)的方式,用于消除多系統(tǒng)應(yīng)用之間的異構(gòu)性,促進(jìn)服務(wù)跨平臺(tái)間的互操作以及不同格式數(shù)據(jù)間的共享。服務(wù)之間具有標(biāo)準(zhǔn)化 WSDL(Web Services Description Language)接口,采用標(biāo)準(zhǔn)化的HTTP和JMS傳輸方式,遵循標(biāo)準(zhǔn)化的SOAP(Simple Object Access Protocol)協(xié)議進(jìn)行調(diào)用。SOA可以五元式表示,即SOA=(S,P,Re,Ri,UDDI):
1)S表示服務(wù)(Service)。由 Web服務(wù)描述語言WSDL描述,WSDL把服務(wù)抽象為一組包含在面向?qū)ο蠡蛎嫦蜻^程消息上可執(zhí)行的端點(diǎn)集合,多個(gè)相關(guān)端點(diǎn)構(gòu)成服務(wù)。
2)P表示服務(wù)提供(Service Provider)??赏ㄟ^網(wǎng)絡(luò)尋址的實(shí)體,接受和執(zhí)行來自使用者的請(qǐng)求,并將已服務(wù)的和接口發(fā)布到服務(wù)注冊(cè)中心,以便服務(wù)使用者可以發(fā)現(xiàn)和訪問該服務(wù)。
3)Re表示服務(wù)請(qǐng)求(Service Requester)。該服務(wù)請(qǐng)求可以是應(yīng)用程序、軟件模塊或需要該服務(wù)的另一個(gè)服務(wù),并可以對(duì)注冊(cè)中心中的服務(wù)進(jìn)行查詢,通過傳輸服務(wù)對(duì)綁定,并且根據(jù)接口執(zhí)行該服務(wù)功能。
4)Ri表示服務(wù)注冊(cè)(Service Registry)。包含一個(gè)可用服務(wù)的存儲(chǔ)數(shù)據(jù)庫,并允許感興趣的服務(wù)使用者查找服務(wù)提供者的接口。
5)UDDI(Universal Description Discovery and Integration)表示 Web服務(wù)的操作(Web Operation)。主要是服務(wù)的統(tǒng)一描述發(fā)布、查找和綁定等。
SOA的Web體系結(jié)構(gòu)如圖2所示。
圖2 SOA的Web體系結(jié)構(gòu)示意
為了實(shí)現(xiàn)各油氣區(qū)塊數(shù)據(jù)的統(tǒng)計(jì)與分析,對(duì)異構(gòu)數(shù)據(jù)源進(jìn)行集成應(yīng)用,并在此基礎(chǔ)上,進(jìn)一步實(shí)現(xiàn)公共信息共享,實(shí)現(xiàn)中國油氣對(duì)外合作開發(fā)區(qū)塊的“立體式”信息化構(gòu)建。采用SOA思想,對(duì)數(shù)據(jù)集成應(yīng)用的各系統(tǒng)進(jìn)一步服務(wù)封裝,依據(jù)業(yè)務(wù)綜合管理流程,將服務(wù)組合在一起,實(shí)現(xiàn)各子系統(tǒng)間相互提供服務(wù),通過集成應(yīng)用構(gòu)建中國油氣綜合管理信息化平臺(tái),最終將各類服務(wù)通過應(yīng)用接口的方式提供給用戶。將該業(yè)務(wù)集成應(yīng)用框架在邏輯上分成4層:數(shù)據(jù)層、數(shù)據(jù)集成層、服務(wù)層和業(yè)務(wù)集成應(yīng)用層,如圖3所示,其中,數(shù)據(jù)集成層和服務(wù)層是該框架的核心。
圖3 業(yè)務(wù)集成應(yīng)用框架
1)數(shù)據(jù)層。該層為各油氣區(qū)塊基礎(chǔ)數(shù)據(jù)層,保持了不同跨國油氣公司對(duì)綜合生產(chǎn)數(shù)據(jù)的工作習(xí)慣和管理方式。
2)數(shù)據(jù)集成層。采用XML公共數(shù)據(jù)模型,構(gòu)建異構(gòu)數(shù)據(jù)源的映射規(guī)則,對(duì)異構(gòu)數(shù)據(jù)源進(jìn)行訪問控制和管理,提供數(shù)據(jù)規(guī)范化集成應(yīng)用,該層可以視為數(shù)據(jù)總線。
3)服務(wù)層。該層將各區(qū)塊的應(yīng)用系統(tǒng)進(jìn)行數(shù)據(jù)集成標(biāo)準(zhǔn)化后,進(jìn)行服務(wù)封裝,為業(yè)務(wù)應(yīng)用層提供各類服務(wù),實(shí)現(xiàn)各個(gè)異構(gòu)數(shù)據(jù)源區(qū)間的信息共享管理,在保持各區(qū)塊各自系統(tǒng)為該區(qū)塊提供服務(wù)的同時(shí),各個(gè)子系統(tǒng)進(jìn)行有序組合形成新的服務(wù),另外服務(wù)封裝的粒度可根據(jù)業(yè)務(wù)集成應(yīng)用需求而靈活調(diào)整。
4)業(yè)務(wù)集成應(yīng)用層。通過應(yīng)用集成相關(guān)策略和技術(shù),將各區(qū)塊的信息系統(tǒng)有機(jī)整合,形成集中統(tǒng)一決策和管理的綜合信息化平臺(tái)。當(dāng)需要改變業(yè)務(wù)集成應(yīng)用時(shí),可以通過對(duì)相應(yīng)服務(wù)的重新優(yōu)化組合來實(shí)現(xiàn),提高平臺(tái)的可用性和靈活性。
WebService技術(shù)不僅采用了基于XML的輕量級(jí)的消息協(xié)議,WebService之間能夠交換帶結(jié)構(gòu)的文檔,而且這些被交換的文檔能夠包含完整的異構(gòu)數(shù)據(jù)信息,還可以同時(shí)附帶源數(shù)據(jù),有效克服了異構(gòu)系統(tǒng)之間的通信問題;另外WebService擁有標(biāo)準(zhǔn)的WSDL和UDDI技術(shù),用以實(shí)現(xiàn)服務(wù)接口能力的描述和服務(wù)發(fā)布和查找;而服務(wù)能力的調(diào)用則根據(jù)具體的實(shí)現(xiàn)方式,動(dòng)態(tài)采用簡(jiǎn)單對(duì)象服務(wù)協(xié)議(SOAP),EJB,JMS,CORBA和Java等方式[10]。在UDDI注冊(cè)中心利用注冊(cè) Model方式,建立一套服務(wù)調(diào)用方式的分類方法,用來對(duì)發(fā)布的WebService進(jìn)行擴(kuò)展描述。因此,筆者選用WebService技術(shù)實(shí)現(xiàn)基于服務(wù)的面向服務(wù)的綜合管理信息化平臺(tái)。
根據(jù)SOA基本架構(gòu)特征,在所設(shè)計(jì)的面向服務(wù)的業(yè)務(wù)集成架構(gòu)中,每個(gè)服務(wù)均由兩部分構(gòu)成,即抽象接口和具體實(shí)現(xiàn)。對(duì)于服務(wù)的接口部分,采用WebService技術(shù)中WSDL文檔實(shí)現(xiàn),在該文檔中記錄URL、傳輸協(xié)議、接口方法以及輸入輸出等。每個(gè)服務(wù)的實(shí)現(xiàn)通過WebService中的具體功能組件或應(yīng)用程序完成。采用WebService技術(shù)實(shí)現(xiàn)業(yè)務(wù)集成所設(shè)計(jì)的架構(gòu)如圖4所示。
圖4 業(yè)務(wù)集成應(yīng)用框架的技術(shù)實(shí)現(xiàn)
根據(jù)業(yè)務(wù)管理的需求,針對(duì)中國油氣對(duì)外合作開發(fā)各區(qū)塊間“信息孤島”現(xiàn)狀,解決了由于數(shù)據(jù)異構(gòu)而帶來的不利信息共享、難以形成信息化決策等問題,從數(shù)據(jù)集成和業(yè)務(wù)應(yīng)用集成兩個(gè)層面論述了綜合管理信息化平臺(tái)的研發(fā)。首先采用XML建立異構(gòu)數(shù)據(jù)間的一致性轉(zhuǎn)換過程規(guī)則,由信息系統(tǒng)在讀取數(shù)據(jù)時(shí)自動(dòng)解釋規(guī)則,從而建立了數(shù)據(jù)庫與XML文檔間的互映射關(guān)系,實(shí)現(xiàn)對(duì)各個(gè)生產(chǎn)區(qū)塊間的生產(chǎn)綜合數(shù)據(jù)動(dòng)態(tài)集成;然后采用SOA方法,設(shè)計(jì)了一種基于面向服務(wù)的業(yè)務(wù)動(dòng)態(tài)集成應(yīng)用框架,對(duì)現(xiàn)有的各區(qū)塊間的子系統(tǒng)實(shí)現(xiàn)業(yè)務(wù)集成應(yīng)用;最后對(duì)中國油氣對(duì)外合作綜合管理信息化平臺(tái)研發(fā)的WebService關(guān)鍵技術(shù)進(jìn)行論述。平臺(tái)的推廣應(yīng)用效果表明,在保持各個(gè)合作開發(fā)油氣區(qū)塊對(duì)數(shù)據(jù)管理方式不改變的前提下,使各區(qū)塊的數(shù)據(jù)充分共享,綜合生產(chǎn)管理效率得到顯著提高。
[1]王沛.一種基于XML的異構(gòu)數(shù)據(jù)庫數(shù)據(jù)轉(zhuǎn)換方法[J].西安郵電大學(xué)學(xué)報(bào),2011,25(03):73-76.
[2]黃寬娜,劉徽.基于XML中間件的異構(gòu)數(shù)據(jù)庫集成[J].西南大學(xué)學(xué)報(bào)(自然科學(xué)版),2010,32(09):141-146.
[3]彭樹青,陳德運(yùn).異構(gòu)服務(wù)和分布式數(shù)據(jù)的動(dòng)態(tài)集成[J].計(jì)算機(jī)科學(xué),2010,37(10):168-170.
[4]萬靜,劉鍵,王學(xué)偉,等.基于XML的異構(gòu)數(shù)據(jù)庫信息共享方法研究[J].北京化工大學(xué)學(xué)報(bào)(自然科學(xué)版),2010,37(05):130-134.
[5]王維平,王超,李群.基于面向服務(wù)架構(gòu)的模型可移植性規(guī)范建模仿真框架[J].計(jì)算機(jī)集成制造系統(tǒng),2011,17(12):2723-2731.
[6]吳江,趙世鈺,周銳,等.基于面向服務(wù)的多無人機(jī)輔助決策仿真集成方法[J].系統(tǒng)仿真學(xué)報(bào),2012,24(12):2525-2529.
[7]甄甫,劉民,董明宇.基于面向服務(wù)架構(gòu)消息中間件的業(yè)務(wù)流程系統(tǒng)集成方法研究[J].計(jì)算機(jī)集成制造系統(tǒng),2009,15(05):968-972.
[8]張啟文.基于SOA的供應(yīng)鏈異構(gòu)系統(tǒng)集成研究[D].上海:東華大學(xué),2011.
[9]申利民,李志偉.面向服務(wù)的柔性異構(gòu)數(shù)據(jù)集成模型研究[J].燕山大學(xué)學(xué)報(bào),2013,37(02):117-123.
[10]姜陽.基于WebService的異構(gòu)數(shù)據(jù)收集與分發(fā)平臺(tái)的研究與實(shí)現(xiàn)[D].天津:天津工業(yè)大學(xué),2006.