方利,王文杰,高振記*,王明浩,花潔,曾秀俐,2
1.中國環(huán)境科學(xué)研究院,北京 100012
2.湖南科技大學(xué)建筑與城鄉(xiāng)規(guī)劃學(xué)院,湖南湘潭 411201
基于SOA的環(huán)境科學(xué)數(shù)據(jù)共享平臺設(shè)計與實踐
方利1,王文杰1,高振記1*,王明浩1,花潔1,曾秀俐1,2
1.中國環(huán)境科學(xué)研究院,北京 100012
2.湖南科技大學(xué)建筑與城鄉(xiāng)規(guī)劃學(xué)院,湖南湘潭 411201
針對我國環(huán)境科學(xué)數(shù)據(jù)異構(gòu)、分散,缺乏空間數(shù)據(jù)共享及共享范圍局限等問題,提出了基于面向服務(wù)的架構(gòu)(SOA)的環(huán)境科學(xué)數(shù)據(jù)共享平臺技術(shù)架構(gòu),在建立環(huán)境科學(xué)數(shù)據(jù)庫及元數(shù)據(jù)庫基礎(chǔ)上,綜合應(yīng)用SOA、Web Service、Service GIS、中間件等技術(shù)實現(xiàn)元數(shù)據(jù)服務(wù),空間與屬性數(shù)據(jù)互檢索服務(wù),空間數(shù)據(jù)聚合服務(wù),網(wǎng)絡(luò)數(shù)據(jù)抽取服務(wù)以及異構(gòu)資源注冊服務(wù)等功能,集成了環(huán)境專題數(shù)據(jù),基礎(chǔ)地理數(shù)據(jù),遙感影像、水文、氣象、空間數(shù)據(jù)服務(wù)等各類環(huán)境資源,實現(xiàn)了各類異構(gòu)環(huán)境數(shù)據(jù)資源的共享及注冊服務(wù)。該技術(shù)可為構(gòu)建我國大型綜合性環(huán)境共享平臺提供可供參考的模式。
環(huán)境科學(xué)數(shù)據(jù);數(shù)據(jù)共享平臺;元數(shù)據(jù);SOA;Service GIS;中間件
我國環(huán)境信息化建設(shè)始于“七五”期間,經(jīng)過“中國100個城市環(huán)境信息系統(tǒng)建設(shè)”、“污染源自動監(jiān)控項目”、“環(huán)境信息傳輸與統(tǒng)計能力建設(shè)項目”、“國家水體污染控制與治理科技重大專項”等重大專項建設(shè),各種污染源、環(huán)境質(zhì)量監(jiān)控數(shù)據(jù)、衛(wèi)星遙感數(shù)據(jù)以及環(huán)境管理業(yè)務(wù)數(shù)據(jù)急劇膨脹,使環(huán)境數(shù)據(jù)共享與服務(wù)面臨新的挑戰(zhàn)[1]。同時由于我國各級環(huán)境管理部門在信息化建設(shè)方面缺乏統(tǒng)一規(guī)劃和業(yè)務(wù)協(xié)同,信息資源未被充分開發(fā)和有效應(yīng)用[2],造成“縱向信息煙囪、橫向信息孤島”的局面[1]。環(huán)境數(shù)據(jù)作為一種重要的戰(zhàn)略信息資源,其內(nèi)容包含環(huán)境背景、環(huán)境專題、水文、氣象、土地利用、社會經(jīng)濟、人口等數(shù)據(jù),涉及環(huán)境保護、水利、氣象、國土資源等眾多部門,以信息共享技術(shù)促進部門間協(xié)同應(yīng)對環(huán)境問題,是環(huán)境管理工作發(fā)展的必然趨勢,對政府決策、科學(xué)研究以及公眾知情權(quán)具有重要意義[2-3]。
在國外,科學(xué)數(shù)據(jù)共享工作開展較早,共享機制較為完善。美國在20世紀(jì)最后10年確立了在國家層面上建設(shè)國有科學(xué)數(shù)據(jù)和信息全社會共享的戰(zhàn)略部署[4]。目前美國國家航空航天局(NASA)、美國地質(zhì)調(diào)查局(USGS)、美國國家氣候數(shù)據(jù)中心(NCDC)、美國農(nóng)業(yè)部(USDA)自然資源保護中心(NRCS)、美國全球環(huán)境和社會研究院(IGES)等機構(gòu)已經(jīng)建成數(shù)據(jù)共享網(wǎng)絡(luò),面向全社會提供遙感影像、水文監(jiān)測、土地植被、水資源、海洋、大氣、高程、洪水、干旱、颶風(fēng)、暴雪、森林火災(zāi)、氣候、自然資源保護等公共數(shù)據(jù)資源及模型服務(wù)①美國主要數(shù)據(jù)共享平臺網(wǎng)址:http://nasadaacs.eos.nasa.gov/about. html;http://waterdata.usgs.gov/nwis;http://eros.usgs.gov;http://www. ncdc.noaa.gov;http://www.wcc.nrcs.usda.gov/;http://www.iges.org/ cola.html。。歐洲委員會于2008年1月提出共享歐洲環(huán)境信息的概念,建立一個共享的環(huán)境信息系統(tǒng)(SEIS),為環(huán)境管理和制定環(huán)境政策提供信息支持,為非政府組織、研究機構(gòu)、大學(xué)以及公眾方便和自由的獲取環(huán)境信息創(chuàng)造條件[5]。國外在環(huán)境科學(xué)數(shù)據(jù)科研及應(yīng)用方面,也開展了一些技術(shù)研究及實踐工作,如探討了科學(xué)數(shù)據(jù)共享的關(guān)鍵因子[6]及影響因素[7],基于元數(shù)據(jù)[8]、Web服務(wù)[9]、空間互操作[10]等技術(shù)實現(xiàn)某一領(lǐng)域的生態(tài)和環(huán)境科學(xué)數(shù)據(jù)的共享。
我國科學(xué)技術(shù)部于2002年啟動了“科學(xué)數(shù)據(jù)共享工程”,相繼建立了地球系統(tǒng)科學(xué)[11]、氣象[12]、農(nóng)業(yè)[13]等數(shù)據(jù)共享平臺,面向全社會提供數(shù)據(jù)服務(wù),已取得了較好的應(yīng)用效果。2004年底,國家環(huán)境保護總局啟動了“環(huán)境科學(xué)數(shù)據(jù)庫建設(shè)與共享”項目,目的是以環(huán)境質(zhì)量、環(huán)境科研和生態(tài)環(huán)境數(shù)據(jù)為核心,研制一批高質(zhì)量的具有環(huán)保系統(tǒng)數(shù)據(jù)特征的標(biāo)準(zhǔn)數(shù)據(jù)集,初步建立國家級環(huán)境科學(xué)分布式共享服務(wù)網(wǎng)絡(luò)體系[14],服務(wù)于環(huán)境管理(目前尚在建設(shè)中)。我國在環(huán)境數(shù)據(jù)共享的框架[1]及構(gòu)建技術(shù)方面[15-17]已開展了一些研究,建立了一批環(huán)境數(shù)據(jù)共享平臺[18-24],服務(wù)于特定領(lǐng)域的科研項目。近年來,隨著面向 服 務(wù)的架構(gòu) (serviceoriented architecture,SOA)技術(shù)的成熟,該技術(shù)逐漸應(yīng)用于一些共享平臺的建設(shè),如地球系統(tǒng)科學(xué)數(shù)據(jù)共享平臺基于SOA技術(shù)實現(xiàn)了分站點的注冊,即數(shù)據(jù)同步[25];段曉宇[26]研究了基于SOA的交通信息共享平臺體系架構(gòu),實現(xiàn)了不同系統(tǒng)間交通信息的交換功能;周英[27]探討了SOA的技術(shù)實現(xiàn),并在校園信息共享平臺中基于ASP.Net構(gòu)建了學(xué)籍信息查詢Web服務(wù)的發(fā)布及調(diào)用。
總體來看,我國環(huán)境科學(xué)數(shù)據(jù)共享還存在以下問題:目前已經(jīng)建立的共享平臺或信息發(fā)布網(wǎng)絡(luò),通常只面向某類環(huán)境要素,這些數(shù)據(jù)資源異構(gòu)、分散且共享范圍有限;大部分共享平臺網(wǎng)站主要提供元數(shù)據(jù)或?qū)傩詳?shù)據(jù)共享,環(huán)境空間數(shù)據(jù)共享資源獲取困難;缺乏面向管理、科研及公眾服務(wù)的,集成各類環(huán)境數(shù)據(jù)的大型綜合性環(huán)境共享平臺。針對這些問題,筆者提出一種基于SOA架構(gòu)的環(huán)境科學(xué)數(shù)據(jù)共享平臺構(gòu)建方法,該平臺可集成各類異構(gòu)環(huán)境科學(xué)數(shù)據(jù),具有開放性、可擴展性,可為我國環(huán)境科學(xué)數(shù)據(jù)的共享提供參考。
環(huán)境科學(xué)數(shù)據(jù)共享平臺的體系架構(gòu)決定了平臺的組件構(gòu)成及其相互間的通訊模式,其將影響環(huán)境科學(xué)數(shù)據(jù)共享服務(wù)的水平及質(zhì)量,表現(xiàn)為共享平臺的互操作性、可擴展性、開放性等要求。采用面向服務(wù)的體系架構(gòu)SOA,在基于網(wǎng)絡(luò)的分布式環(huán)境中,將各類環(huán)境數(shù)據(jù)的元數(shù)據(jù)共享、空間數(shù)據(jù)共享、資源注冊等各種功能以服務(wù)的形式提供給用戶。
SOA架構(gòu)的基本元素是服務(wù),任何業(yè)務(wù)功能都能被作為提供的一個服務(wù)使用,應(yīng)用系統(tǒng)是一系列服務(wù)的集成[28]。SOA通過一組實體提供和消費服務(wù)實現(xiàn)異構(gòu)系統(tǒng)之間的互操作。這些服務(wù)具有松耦合、獨立、可互操作、位置明確,可通過網(wǎng)絡(luò)查找其地址等特點,服務(wù)的接口采用中立的方式定義,可使用統(tǒng)一和標(biāo)準(zhǔn)的方式進行通信,獨立于具體實現(xiàn)服務(wù)的硬件平臺、操作系統(tǒng)和編程語言等[29]。
基于SOA架構(gòu)搭建的環(huán)境科學(xué)數(shù)據(jù)共享平臺系統(tǒng)架構(gòu)如圖1所示。
圖1 基于SOA的環(huán)境科學(xué)數(shù)據(jù)共享平臺架構(gòu)Fig.1 Environmental data sharing platform based on service oriented architecture
平臺的數(shù)據(jù)層,包括平臺本地數(shù)據(jù)資源及外部數(shù)據(jù)資源,數(shù)據(jù)資源通過元數(shù)據(jù)注冊將其元數(shù)據(jù)信息存入平臺元數(shù)據(jù)庫。本地及第三方持有的空間數(shù)據(jù)服務(wù)、外部數(shù)據(jù)源、網(wǎng)絡(luò)發(fā)布數(shù)據(jù)、其他數(shù)據(jù)共享網(wǎng)站則也可以注冊服務(wù)的方式注冊為平臺的共享資源。數(shù)據(jù)資源及元數(shù)據(jù)庫、服務(wù)索引庫共同為服務(wù)應(yīng)用層提供數(shù)據(jù)支撐。
平臺的服務(wù)層,主要業(yè)務(wù)應(yīng)用功能以服務(wù)的形式提供,由服務(wù)策略、服務(wù)管理以及具體的服務(wù)構(gòu)成。服務(wù)由Web服務(wù)(Web Service)及Service GIS服務(wù)構(gòu)建,分別提供屬性數(shù)據(jù)服務(wù)及空間數(shù)據(jù)服務(wù)。二者分別基于XML、GML語言,采用通用的數(shù)據(jù)服務(wù)/協(xié)議/消息傳遞(SOAP/WSDL/UDDI)機制,共同構(gòu)建數(shù)據(jù)共享服務(wù),并以O(shè)GC服務(wù)、SOAP服務(wù)、API接口等不同形式發(fā)布。各類服務(wù)以組裝、集成的方式搭建成系統(tǒng),共享平臺服務(wù)由元數(shù)據(jù)服務(wù)、空間數(shù)據(jù)服務(wù)、網(wǎng)絡(luò)數(shù)據(jù)共享服務(wù)、異構(gòu)數(shù)據(jù)資源注冊服務(wù)以及平臺管理服務(wù)等組建而成。由于采用通用的數(shù)據(jù)互操作協(xié)議,在SOA架構(gòu)下,各種服務(wù)可進行統(tǒng)一注冊、管理、發(fā)現(xiàn)與應(yīng)用,同時也可方便地進行服務(wù)或數(shù)據(jù)資源節(jié)點的擴展,從而保障了平臺的開放性和可擴展性。
平臺的應(yīng)用層,面向環(huán)境管理與職能部門、科研部門、企業(yè)、公眾等各類用戶,用戶通過平臺界面提交指令并獲取共享平臺返回的各類數(shù)據(jù)服務(wù)功能。
環(huán)境科學(xué)數(shù)據(jù)庫的構(gòu)建是數(shù)據(jù)共享平臺的核心。環(huán)境科學(xué)數(shù)據(jù)類型復(fù)雜,存在多源、異構(gòu)、海量等特點,包含空間數(shù)據(jù)和屬性數(shù)據(jù)、多數(shù)據(jù)類型、多數(shù)據(jù)格式、多空間尺度和多時間尺度等。收集各類環(huán)境科學(xué)數(shù)據(jù),設(shè)計其分類體系,構(gòu)建共享平臺環(huán)境科學(xué)數(shù)據(jù)分類體系(圖2)。從提供數(shù)據(jù)服務(wù)的方式劃分,分為空間數(shù)據(jù)和屬性數(shù)據(jù)兩大類??臻g數(shù)據(jù)可提供空間數(shù)據(jù)服務(wù)及元數(shù)據(jù)服務(wù),屬性數(shù)據(jù)可提供元數(shù)據(jù)服務(wù)。空間數(shù)據(jù)分為環(huán)境專題數(shù)據(jù)、基礎(chǔ)地理數(shù)據(jù)、遙感影像數(shù)據(jù)以及數(shù)字高程模型(DEM)數(shù)據(jù);其中矢量數(shù)據(jù)又按照空間尺度、時間尺度以及圖層進行組織。屬性數(shù)據(jù)包括環(huán)境質(zhì)量監(jiān)測數(shù)據(jù)、環(huán)境統(tǒng)計數(shù)據(jù)以及污染源數(shù)據(jù);然后再按照時間尺度以及環(huán)境要素分類。
圖2 環(huán)境科學(xué)數(shù)據(jù)分類Fig.2 Environmental data classification
在共享平臺數(shù)據(jù)分類的基礎(chǔ)上,進行數(shù)據(jù)整理及建庫工作,流程如圖3所示。對各類環(huán)境數(shù)據(jù)進行規(guī)范化分類及編碼,其中空間數(shù)據(jù)需要進行坐標(biāo)轉(zhuǎn)換、統(tǒng)一空間基礎(chǔ)、數(shù)據(jù)編輯等工作。對數(shù)據(jù)進行完整性、邏輯一致性、空間精度等數(shù)據(jù)質(zhì)量檢查,確保數(shù)據(jù)庫質(zhì)量。
對實體數(shù)據(jù)庫整理完成之后,提取其元數(shù)據(jù)信息,包括數(shù)據(jù)內(nèi)容、數(shù)據(jù)類型、數(shù)據(jù)量、參照系統(tǒng)、數(shù)據(jù)質(zhì)量等基本信息,以及分發(fā)單位、聯(lián)系信息等,將元數(shù)據(jù)錄入到平臺的元數(shù)據(jù)庫。
圖3 環(huán)境科學(xué)數(shù)據(jù)整理與建庫流程Fig.3 Flow chart of environmental database building
經(jīng)過數(shù)據(jù)整理建庫工作,建成包含環(huán)境專題數(shù)據(jù)、基礎(chǔ)地理數(shù)據(jù)、遙感影像數(shù)據(jù)以及DEM等各類空間數(shù)據(jù)庫。其中矢量數(shù)據(jù)采用ArcSDE空間數(shù)據(jù)引擎、Shape文件等方式存儲,遙感影像以文件方式存儲,屬性數(shù)據(jù)以及元數(shù)據(jù)采用Oracle數(shù)據(jù)庫進行存儲,總數(shù)據(jù)量超過4 GB。錄入元數(shù)據(jù)信息3 000多條。
環(huán)境科學(xué)數(shù)據(jù)共享平臺基于SOA架構(gòu),采用J2EE(Java 2 Platform,Enterprise Edition)開發(fā)平臺,開發(fā)工具為Eclipse 4.3,Web服務(wù)器為Tomcat 7.0。系統(tǒng)功能主要基于Web服務(wù)或Service GIS技術(shù)構(gòu)建,主要功能包括元數(shù)據(jù)服務(wù)、空間數(shù)據(jù)服務(wù)、數(shù)據(jù)資源注冊服務(wù)、統(tǒng)計分析服務(wù)以及系統(tǒng)用戶與權(quán)限管理等功能。
3.1 元數(shù)據(jù)服務(wù)
根據(jù)不同的用戶權(quán)限提供元數(shù)據(jù)服務(wù),包括元數(shù)據(jù)錄入與編輯、元數(shù)據(jù)注冊與審核、元數(shù)據(jù)查詢以及目錄管理等功能(圖4)。元數(shù)據(jù)編輯人員可進行元數(shù)據(jù)錄入、編輯、刪除等操作;平臺外部用戶注冊以后,可進行元數(shù)據(jù)注冊,并能管理自己注冊的所有元數(shù)據(jù)信息;系統(tǒng)管理員對提交注冊的元數(shù)據(jù)進行審核,審核通過以后,改元數(shù)據(jù)信息進入元數(shù)據(jù)庫,正式對外發(fā)布;平臺所有用戶均可使用元數(shù)據(jù)查詢以及元數(shù)據(jù)目錄服務(wù)。
圖4 元數(shù)據(jù)服務(wù)功能Fig.4 Functions of metadata services
元數(shù)據(jù)服務(wù)功能以Web服務(wù)形式提供,Web服務(wù)的開發(fā)流程如圖5所示。Web服務(wù)的實現(xiàn)包括服務(wù)器端開發(fā)及客戶端開發(fā)。
圖5 Web服務(wù)開發(fā)流程Fig.5 Development process of Web Services
服務(wù)器端開發(fā)步驟:1)創(chuàng)建一個Web服務(wù)項目;2)編寫Web Service類,只需要用@Web Service標(biāo)注Java類為Web Service類,@Web Method標(biāo)注類方法為Web Service方法,這些被標(biāo)記的類和方法,在服務(wù)發(fā)布之后,就能被客戶端調(diào)用;3)在Web.xml文件中進行配置申明服務(wù);4)在Web服務(wù)器Tomcat下發(fā)布服務(wù);5)產(chǎn)生服務(wù)描述文件WSDL(Web Services description Language),供客戶端獲取。如以下幾行為在服務(wù)器端編寫的Web Service類及方法。
基于Eclipse的JAX-WS(Java API for XML Web Services)開發(fā)包進行客戶端的開發(fā):1)獲取WSDL文檔;2)解析文件內(nèi)容,了解服務(wù)器端的服務(wù)信息以及調(diào)用方式,生成客戶端Stub,在這個過程中,可以調(diào)用EJB(Enterprise JavaBean)組件層中開發(fā)的組件,如元數(shù)據(jù)錄入、編輯、注冊等組件,實現(xiàn)復(fù)雜的業(yè)務(wù)邏輯操作,基于JDBC組件實現(xiàn)行數(shù)據(jù)庫的訪問;3)編寫客戶端SOAP請求消息(指定調(diào)用的方法以及調(diào)用的參數(shù)),發(fā)送給服務(wù)器端;4)等待服務(wù)器端返回的SOAP回應(yīng)消息,解析得到的返回值;5)通過JSP(Java Server Pages)技術(shù)動態(tài)生成頁面,顯示最終結(jié)果。
3.2 空間與屬性數(shù)據(jù)互檢索功能
空間與屬性數(shù)據(jù)互檢索是指元數(shù)據(jù)及其空間位置的互相檢索功能,可通過元數(shù)據(jù)屬性中的空間位置信息定位到該元數(shù)據(jù)對應(yīng)的空間數(shù)據(jù),也可通過在地圖中進行空間查詢,獲取該空間區(qū)域的所有元數(shù)據(jù)信息,這樣用戶可方便地了解某一地區(qū)所有的數(shù)據(jù)資源。
如用戶通過元數(shù)據(jù)檢索獲取了一條元數(shù)據(jù)記錄,當(dāng)點擊“查看數(shù)據(jù)集”時,如果該數(shù)據(jù)集是空間數(shù)據(jù)且發(fā)布了空間數(shù)據(jù)服務(wù),則系統(tǒng)會打開該空間數(shù)據(jù)服務(wù)頁面;如果該數(shù)據(jù)集是屬性數(shù)據(jù),則系統(tǒng)打開數(shù)據(jù)集的詳細(xì)屬性頁面。當(dāng)用戶進行空間數(shù)據(jù)檢索時,通過在地圖窗口中拉框操作或者輸入行政區(qū)域名稱,則系統(tǒng)會查詢該空間區(qū)域范圍內(nèi)所包含的所有元數(shù)據(jù)信息(圖6)。
空間數(shù)據(jù)與屬性數(shù)據(jù)互檢索功能的主要邏輯處理功能業(yè)務(wù)邏輯層通過EJB組件完成,然后將其封裝為Web服務(wù),封裝流程同3.1節(jié)元數(shù)據(jù)服務(wù)開發(fā)流程,在服務(wù)器端增加申明空間數(shù)據(jù)檢索及屬性數(shù)據(jù)檢索Web服務(wù)類,然后在JAX-WS中增加相應(yīng)Web服務(wù)類客戶端的開發(fā)。
3.3 空間數(shù)據(jù)聚合服務(wù)功能
目前大部分?jǐn)?shù)據(jù)共享平臺直接提供的數(shù)據(jù)以屬性數(shù)據(jù)為主,空間數(shù)據(jù)的共享主要通過申請審批方式獲取,數(shù)據(jù)獲取手續(xù)繁瑣且周期較長。環(huán)境科學(xué)數(shù)據(jù)共享平臺提供集環(huán)境專題、基礎(chǔ)地理、遙感等多種類型、多種來源的空間數(shù)據(jù)聚合服務(wù),用戶通過網(wǎng)絡(luò)就可直接獲取空間數(shù)據(jù)進行應(yīng)用。
圖6 基于空間范圍查詢元數(shù)據(jù)Fig.6 Metadata retrieval by spatial dimensions
空間數(shù)據(jù)聚合服務(wù)通過服務(wù)式 GIS(Service GIS)技術(shù)構(gòu)建[30],Service GIS是一種面向SOA的GIS技術(shù)體系,以美國開放地理信息系統(tǒng)協(xié)會(OGC)指定的數(shù)據(jù)共享規(guī)范,將GIS功能以服務(wù)的形式發(fā)布,用統(tǒng)一協(xié)議的方式使客戶端能夠讀取任意數(shù)據(jù)服務(wù)器提供的空間數(shù)據(jù),同時支持各種標(biāo)準(zhǔn)Web服務(wù)協(xié)議(如REST服務(wù)、OGC服務(wù)、SOAP服務(wù)等)之間的再聚合等,使服務(wù)端、客戶端及第三方應(yīng)用能進行多層次的聚合,為客戶端應(yīng)用提供矢量數(shù)據(jù)服務(wù)、柵格數(shù)據(jù)服務(wù)以及地圖服務(wù)(圖7)。共享平臺的空間數(shù)據(jù)聚合服務(wù)以幾種方式提供:1)平臺本身的環(huán)境專題數(shù)據(jù)直接以服務(wù)形式發(fā)布;2)調(diào)用其他網(wǎng)站發(fā)布的基礎(chǔ)地理數(shù)據(jù)作為底圖,加載本地環(huán)境專題數(shù)據(jù),然后發(fā)布成服務(wù);3)直接調(diào)用并發(fā)布其他網(wǎng)站的空間數(shù)據(jù)服務(wù)。
圖7 空間數(shù)據(jù)服務(wù)聚合服務(wù)Fig.7 Technology of spatial data aggregation services
客戶端可通過在瀏覽器中輸入服務(wù)的地址、在GIS軟件平臺中直接加載Web服務(wù),獲取對空間數(shù)據(jù)的基本操作或高級分析功能。如果客戶端沒有GIS平臺,也可通過瀏覽器方式直接訪問服務(wù),并通過網(wǎng)址加載其他的Web服務(wù)或者本地數(shù)據(jù),進行聚合服務(wù)應(yīng)用,實現(xiàn)多種客戶端跨平臺、跨網(wǎng)絡(luò)、跨語言調(diào)用。
圖8為通過空間數(shù)據(jù)聚合服務(wù)組件提供的空間數(shù)據(jù)服務(wù),左側(cè)為本地發(fā)布的環(huán)境專題數(shù)據(jù)服務(wù),包括全國地貌、土壤類型等數(shù)據(jù),中間的地圖是調(diào)用ArcGISOnline網(wǎng)站發(fā)布的基礎(chǔ)地理信息數(shù)據(jù)作為底圖(包括基礎(chǔ)地理數(shù)據(jù)、遙感影像等),環(huán)境專題數(shù)據(jù)可作為圖層直接加載到地圖中。每個空間數(shù)據(jù)服務(wù)同時提供獲取該服務(wù)的鏈接,包括URL地址、接口等,用戶可直接通過網(wǎng)絡(luò)訪問或在地圖GIS平臺中打開數(shù)據(jù),與本地數(shù)據(jù)集成應(yīng)用。
圖8 環(huán)境空間數(shù)據(jù)聚合服務(wù)Fig.8 Application of environmental data aggregation services
3.4 網(wǎng)絡(luò)數(shù)據(jù)抽取功能
基于中間件技術(shù)研制了網(wǎng)絡(luò)數(shù)據(jù)抽取功能,將國家水文水資源共享平臺、中國氣象科學(xué)數(shù)據(jù)共享服務(wù)網(wǎng)等網(wǎng)站每日發(fā)布的數(shù)據(jù)(氣象、水文等),抓取、存儲并發(fā)布到環(huán)境科學(xué)數(shù)據(jù)共享平臺,實現(xiàn)了異構(gòu)網(wǎng)絡(luò)數(shù)據(jù)的共享。
網(wǎng)絡(luò)數(shù)據(jù)抽取中間件由服務(wù)器端組件和客戶端組件構(gòu)成,客戶端主要功能包括建立與服務(wù)端的連接通道;按照數(shù)據(jù)訪問協(xié)議,向數(shù)據(jù)抽取中間件服務(wù)端提交查詢字符串,接收并解析查詢結(jié)果。服務(wù)器端主要功能包括建立到數(shù)據(jù)服務(wù)器數(shù)據(jù)庫的連接;監(jiān)聽、探測客戶端的連接請求;根據(jù)通用數(shù)據(jù)訪問協(xié)議,解析客戶端的數(shù)據(jù)訪問請求并執(zhí)行SQL語句,將結(jié)果數(shù)據(jù)發(fā)送至數(shù)據(jù)請求的客戶端;判斷負(fù)載,實現(xiàn)服務(wù)端負(fù)載平衡。
通過網(wǎng)絡(luò)數(shù)據(jù)抽取中間件在網(wǎng)絡(luò)中查找數(shù)據(jù),將查找的信息解析成結(jié)構(gòu)化數(shù)據(jù),同時提起其元數(shù)據(jù)信息,分別存入平臺的數(shù)據(jù)庫及元數(shù)據(jù)庫,然后將元數(shù)據(jù)及實體數(shù)據(jù),以服務(wù)形式發(fā)布到環(huán)境科學(xué)數(shù)據(jù)共享平臺。
通過網(wǎng)絡(luò)數(shù)據(jù)抽取服務(wù)訪問國家水文水資源共享平臺(http://xxfb.hydroinfo.gov.cn/),抽取其每日發(fā)布的全國重點雨情、大江大河水庫實時水情等數(shù)據(jù),并將其發(fā)布到環(huán)境信息共享平臺,提供元數(shù)據(jù)及實體數(shù)據(jù)的下載(圖9)。
圖9 水文數(shù)據(jù)抽取及共享Fig.9 Data mining and sharing of hydrological data
3.5 異構(gòu)數(shù)據(jù)資源注冊功能
共享平臺提供異構(gòu)數(shù)據(jù)資源注冊功能,通過提供通用URL資源、空間信息服務(wù)、FTP資源以及網(wǎng)頁目錄服務(wù)等多種服務(wù)注冊方式[22],每種類型封裝了對相應(yīng)的數(shù)據(jù)規(guī)范和類型的支持,將其他網(wǎng)站的數(shù)據(jù)服務(wù)、空間信息服務(wù)、FTP以及目錄資源等注冊到共享平臺,實現(xiàn)更高效的資源共享服務(wù)的擴展。具體技術(shù)細(xì)節(jié)參見文獻[22]。共享平臺基于空間信息服務(wù)方式實現(xiàn)了ArcGISOnline網(wǎng)站空間數(shù)據(jù)資源的注冊及應(yīng)用。
基于SOA架構(gòu)思想,采用J2EE平臺的SSH開發(fā)框架,綜合應(yīng)用Web服務(wù)、Service GIS、中間件等技術(shù),建立了中國環(huán)境科學(xué)數(shù)據(jù)共享平臺,基于Tomcat 6.0對平臺進行部署及網(wǎng)絡(luò)發(fā)布。該平臺實現(xiàn)了環(huán)境專題數(shù)據(jù),基礎(chǔ)地理數(shù)據(jù),遙感影像、水文、氣象等各類異構(gòu)環(huán)境資源的共享服務(wù);實現(xiàn)了國家水文水資源科學(xué)數(shù)據(jù)共享網(wǎng)、中國氣象科學(xué)數(shù)據(jù)共享服務(wù)網(wǎng)的數(shù)據(jù)抓取及共享;實現(xiàn)了ArcGISOnline等網(wǎng)站的空間數(shù)據(jù)注冊及聚合服務(wù)。
探討了基于SOA的系統(tǒng)技術(shù)架構(gòu),開發(fā)了環(huán)境科學(xué)數(shù)據(jù)共享平臺,建立了環(huán)境科學(xué)數(shù)據(jù)庫及元數(shù)據(jù)庫,綜合應(yīng)用SOA、Web服務(wù)、Service GIS、中間件等技術(shù)實現(xiàn)了元數(shù)據(jù)服務(wù),空間與屬性數(shù)據(jù)互檢索服務(wù),空間數(shù)據(jù)聚合服務(wù),網(wǎng)絡(luò)數(shù)據(jù)抽取服務(wù)以及異構(gòu)資源注冊服務(wù)等功能,集成了環(huán)境專題數(shù)據(jù),基礎(chǔ)地理數(shù)據(jù),遙感影像、水文、氣象、空間數(shù)據(jù)服務(wù)等各類異構(gòu)環(huán)境資源,實現(xiàn)了各類異構(gòu)環(huán)境數(shù)據(jù)資源的共享及注冊服務(wù)。平臺為構(gòu)建我國大型綜合性環(huán)境共享平臺提供了可供參考的模式。該平臺已為國家水體污染控制與治理科技重大專項“流域水環(huán)境風(fēng)險評估與預(yù)警平臺”等多個科研項目提供了數(shù)據(jù)服務(wù)支持,具有較強的實用性和可擴展性。
環(huán)境科學(xué)數(shù)據(jù)共享平臺的數(shù)據(jù)資源共享模式及長效運行機制有待進一步探討。以環(huán)境科學(xué)數(shù)據(jù)分中心的模式不斷集成、擴展環(huán)境科學(xué)數(shù)據(jù)共享資源,構(gòu)建資源更為豐富、多節(jié)點的環(huán)境數(shù)據(jù)共享平臺;在此基礎(chǔ)上,構(gòu)建深層次的環(huán)境數(shù)據(jù)挖掘與應(yīng)用服務(wù),以進一步提升共享平臺的服務(wù)價值與應(yīng)用水平。
[1] 李順,許富春,王利強,等.國家環(huán)境數(shù)據(jù)共享與服務(wù)體系研究[J].中國環(huán)境管理,2011,3(2):11-17.
[2] 盧淑萍.環(huán)境信息資源整合的初探[J].江西能源,2008(4):38-40.
[3] 卜偉,黃洪.信息共享平臺在環(huán)境管理中的支撐作用[J].環(huán)境科學(xué)與管理,2008,33(8):28-29.
[4] 劉闖.美國國有科學(xué)數(shù)據(jù)共享管理機制及對我國的啟示[J].中國基礎(chǔ)科學(xué),2003,5(1):34-39.
[5] 邢黎聞.奧地利與歐洲“共享環(huán)境信息系統(tǒng)(SEIS)”[J].信息化建設(shè),2009(7):52-53.
[6] SAYOGO D S,PARDO T A.Exploring the determinants of scientific data sharing:understanding the motivation to publish research data[J].Government Information Quarterly,2013,30(Suppl 1):19-31.
[7] BERTZKY M,STOLL-KLEEMANN S.Multi-level discrepancies with sharing data on protected areas:what we have and what we need for the global village[J].Journal of Environmental Management,2009,90(1):8-24.
[8] LEINFELDER B,TAO J,COSTA D,et al.A metadata-driven approach to loading and querying heterogeneous scientific data[J].Ecological Informatics,2010,5(1):3-8.
[9] CONNER L G,AMES D P,GILL R A.HydroServer Lite as an open source solution for archiving and sharing environmental data for independent university labs[J].Ecological Informatics,2013,18(6):171-177.
[10] HAN W G,DI L P,ZHAO P S,et al.DEM explorer:an online interoperable DEM data sharing and analysis system[J]. Environmental Modelling&Software,2012,38(12):101-107.
[11] 諸云強,孫九林,廖順寶,等.地球系統(tǒng)科學(xué)數(shù)據(jù)共享研究與實踐[J].地球信息科學(xué)學(xué)報,2010,12(1):1-8.
[12] 趙勝鋼.國家農(nóng)業(yè)科學(xué)數(shù)據(jù)共享平臺體系結(jié)構(gòu)研究[D].北京:中國農(nóng)業(yè)科學(xué)院,2009.
[13] 郭亞曦.我國氣象科學(xué)數(shù)據(jù)共享系統(tǒng)建設(shè)與服務(wù)[J].中國科技資源導(dǎo)刊,2008,40(1):14-18.
[14] 國家環(huán)境保護總局信息中心.科學(xué)數(shù)據(jù)共享工程與國家環(huán)境數(shù)據(jù)中心建設(shè)[EB/OL].(2005-11-09).http://www.zhb.gov. cn/ztbd/jlh/zg/200511/t20051109_71462.htm.
[15] 萬軍,朱蕾,朱玉琴.環(huán)境基礎(chǔ)數(shù)據(jù)資源共享平臺研究[J].裝備環(huán)境工程,2010,7(6):228-230.
[16] 楊大勇,林奎.環(huán)境信息共享研究[J].測繪科學(xué),2007,32(5):188-189.
[17] 全鼎余,趙坤榮,楊大勇,等.環(huán)境監(jiān)測信息共享與時空表達研究[J].計算機測量與控制,2011,19(3):539-542.
[18] 馮莉,劉曉玫,何報金.基于智能客戶端的太湖流域數(shù)據(jù)共享系統(tǒng)實現(xiàn)[J].測繪科學(xué),2007,32(1):93-95.
[19] 錢大君,吳健平,余柏蒗,等.上海市資源與環(huán)境數(shù)據(jù)共享平臺的實現(xiàn)[J].計算機工程,2008,34(10):283-285.
[20] 何春銀.江蘇省太湖流域水環(huán)境信息共享平臺集成關(guān)鍵技術(shù)及其應(yīng)用[J].環(huán)境監(jiān)測管理與技術(shù),2009,21(6):58-61.
[21] 孫維國.基于智能客戶端的岷江流域數(shù)據(jù)共享系統(tǒng)研究[D].黑龍江:東北林業(yè)大學(xué),2009:1-3.
[22] 馬紅旺,高振記,方利,等.基于Geoportal的流域水環(huán)境信息共享平臺設(shè)計與實現(xiàn)[J].環(huán)境工程技術(shù)學(xué)報,2012,2(5):390-395.
[23] 許亞飛,畢如田,余勤飛,等.基于WebGIS的污染場地信息共享平臺的架構(gòu)設(shè)計與應(yīng)用[J].環(huán)境工程技術(shù)學(xué)報,2013,3(1):71-77.
[24] 孫強,李順,陸晨,等.基于信息資源規(guī)劃的流域水環(huán)境數(shù)據(jù)中心設(shè)計與實踐[J].中國環(huán)境監(jiān)測,2013,29(1):127-132.
[25] 諸云強,馮敏,宋佳,等.基于SOA的地球系統(tǒng)科學(xué)數(shù)據(jù)共享平臺架構(gòu)設(shè)計與實現(xiàn)[J].地球信息科學(xué)學(xué)報,2009,11(1):1-9.
[26] 段曉宇.基于SOA的分布式交通信息共享平臺研究[D].北京:北京交通大學(xué),2009:47-52.
[27] 周英.基于SOA技術(shù)的校務(wù)信息共享平臺研究與設(shè)計[D].湖南:湖南大學(xué),2012:39-40.
[28] LINTHICUM D S.云計算與SOA[M].馬國耀,譯.北京:人民郵電出版社,2011:3-5.
[29] 姜國華,李曉林,季英珍.基于SOA的框架模型研究[J].電腦與信息技術(shù),2007,15(6):37-39.
[30] 宋關(guān)福.Service GIS引發(fā)地理信息服務(wù)共享與聚合革命[J].地理信息世界,2008(6):83-85.○
Design and Implementation of Environmental Data Sharing Platform Based on SOA
FANG Li1,WANG Wen-jie1,GAO Zhen-ji1,WANG Ming-hao1,HUA Jie1,ZENG Xiu-li1,2
1.Chinese Research Academy of Environmental Sciences,Beijing 100012,China
2.College of Architecture and Urban Planning,Hunan University of Science and Technology,Xiangtan 411201,China
An environmental data sharing platform based on service oriented architecture was designed and implemented to share heterogeneous environmental data scattered in various systems and locations characterized by heterogeneous and lack of spatial data sharing.Some key technologies such as service oriented architecture(SOA),Web Service,Service GIS,and middleware technology were integrated and applied in this platform to realize functions such as metadata service,attribute data and spatial data mutually retrieving service,spatial data aggregation service,web data mining service,and multi-service register service.The platform can share different environmental data such as environmental thematic data,fundamental geographic data,remote sensing images,hydrological and meteorological data,and spatial data services based on environmental databases and metabase.In addition,the platform based on service oriented architecture bears openness and expansibility so that various environmental data resources and spatial data services from networks can be integrated into the platform.
environmental data;data sharing platform;metadata;SOA;Service GIS;middleware
X320
A
10.3969/j.issn.1674-991X.2014.04.054
1674-991X(2014)04-0333-08
2013-11-19
國家水體污染控制與治理科技重大啟動專項項目(2009ZX07528-004);中國環(huán)境科學(xué)研究院改革啟動專項項目(2010GGQD04)
方利(1979—),女,副研究員,博士,主要從事GIS理論研究及技術(shù)應(yīng)用、環(huán)境信息集成等方向研究工作,fangdanli@163.com
*責(zé)任作者:高振記(1971—),男,副研究員,博士,主要從事地理信息系統(tǒng)應(yīng)用、地下水污染防治等方向研究工作,gaozj@craes.org.cn