




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
論文題目:基于網(wǎng)格環(huán)境的空間信息服務集成摘要計算機網(wǎng)絡技術(shù)和分布式計算技術(shù)的迅猛發(fā)展為地理信息系統(tǒng)向大眾化、分布式、網(wǎng)絡化的空間信息服務的演變提供了技術(shù)基礎(chǔ)。目前對于空間信息服務的研究,主要是以WebService為技術(shù)基礎(chǔ),依據(jù)OGC制定空間信息服務的一些規(guī),如WMS,WFS,WCS等。它們在實現(xiàn)空間信息共享與互操作方面起到了一定的作用,但是在對海量分布式空間數(shù)據(jù)的處理以與為用戶提供一體化和透明的服務方法上遇到了許多難以克服的困難,同時在提供計算能力、協(xié)同能力、等方面也多有不足。其關(guān)鍵問題在于OGC服務是無狀態(tài)的,無法記錄服務的具體操作容、服務地址時間等,不利于服務鏈的構(gòu)建和互操作。網(wǎng)格技術(shù)REFFoster_Grid_blueprint\r\h[1]的出現(xiàn)和發(fā)展為空間信息資源的有效利用和共享提供了一個可靠的環(huán)境,為解決空間信息服務領(lǐng)域存在的一些難點問題帶來了希望。通過共享資源、協(xié)作以與并行計算,網(wǎng)格技術(shù)可以集成計算能力,提供有效集群和負載平衡,支持多用戶空間信息資源操作的協(xié)同,解決空間信息服務中的諸如計算能力不足、缺乏協(xié)作、由于缺乏狀態(tài)而不能很好的回溯操作REF_Ref261960438\r\h[2]等問題。本文從網(wǎng)格基礎(chǔ)技術(shù)出發(fā),對網(wǎng)格環(huán)境下的空間信息服務共享進行了研究,主要的工作有:網(wǎng)格技術(shù)依賴webservice,本文深入研究webservice的實現(xiàn)技術(shù),對WSDL,UDDI,SOAP等規(guī)進行了本質(zhì)探討。在分析網(wǎng)格技術(shù)和WSRF規(guī)的基礎(chǔ)上,提出了一種遵循WSRF技術(shù)規(guī)的空間信息服務資源封裝方法,把OGC服務改造成服務與資源分離的形式,設(shè)計實現(xiàn)了網(wǎng)格服務封裝系統(tǒng)。在網(wǎng)格環(huán)境下探討了空間服務工作流的實現(xiàn),嘗試處理服務服務之間的互操作??臻g信息服務網(wǎng)格共享平臺Lgrid的開發(fā)設(shè)計。關(guān)鍵詞:GRID,WSRF,OGCWebService,GLOBUSABSTRACTTherapiddevelopmentofcomputernetworksanddistributedcomputingprovideatechnicalbasisforthegeographicinformationsystemstobethemass,distributed,networkedspatialinformationservices.
TheresearchonpresentspatialinformationservicesismainlybasedWebServiceframework.AccordingtoOGCspecification,somestandardizedspatialinformationservices,suchasWMS,WFS,WCSandsoonaredeveloped.Onsomelevelstheytakeeffectsoninteroperabilityandsharingofspatialinformation,butinthemassivedistributedspatialdataprocessingandtoprovideuserswithintegratedandtransparentservicemethodstheyencountermanydifficultproblemstoovercome,whileincomputingability,interoperability,havingmanydeficiencies.
ThekeyproblemisthatOGCservicesarestatelessandcannotrecordthecontentoftheconcreteoperationofservices,serviceaddressandtimeisnotconducivetointeroperabilityofservicesandconstructionofservicechain.Theemergenceanddevelopmentofgridprovideasecureenvironmentforefficientuseandsharingofspatialinformationresources.
Gridtechnologybringshopetoresolveproblemsesitinginspatialinformationservices.
Bysharingresources,collaborationandparallelcomputing,gridcomputingcanbeintegratedtoprovideeffectiveclusteringandloadbalancing,supportingformulti-usercollaborativeoperationsonspatialinformationresourcetoaddresstheproblemssuchasthelackofcomputingpower,lackofcoordination,andtheshortcomingthatitcan’tgobackinoperationbecauseoflackofservicestates.Thisresearchstartsfromgridtechnologyandfurtherdoesworkaboutthesharingofspatialinformationservicesundergridenvironment,themainworkididasfollows:
1.Gridcomputingisdependedonwebservice,thispaperstudiesthetechnologiestorealizewebservicesuchasWSDL,UDDI,SOAPandothernormsoftheessence.
2.IntheanalysisofgridtechnologyandbasedontheWSRFspecification,iprovideaconceptofWSRF–enabledspatialinformationservicesresourceencapsulationmethod.TheOGCservicesistransformedintotheformthatservicesandresourcesareseperatedusingagridservicepackagingsystem
.
3.Dosomeworkintheimplementationofgridserviceworkflow,trytoaddressserviceinteroperabilitybetweenservices.
4.Developmentanddesignofagridspatialinformationservicesharingplatform-Lgrid.
Keywords:GRID,WSRF,OGCWebService,GLOBUS目錄TOC\o"1-2"\u1緒論[36]空間服務網(wǎng)格專注于GridGIS服務的統(tǒng)一管理和高效訪問,為用戶或者其他網(wǎng)格提供功能服務??臻g服務網(wǎng)格的關(guān)鍵技術(shù)是空間服務的元數(shù)據(jù)目錄,元數(shù)據(jù)目錄服務為空間服務的虛擬視圖設(shè)計、資源選取、資源定位等操作提供有效的信息訪問接口REF_Ref262043954\r\h[48]。元數(shù)據(jù)目錄提供并管理網(wǎng)格環(huán)境中所有空間服務的統(tǒng)一邏輯視圖。網(wǎng)格服務(GridService)是WebService的擴展。WebService是網(wǎng)格服務的基礎(chǔ),也是OGSA和OGSI(GT3)的奠基石。因此,空間網(wǎng)格服務的實現(xiàn)可參照WebService的四層體系結(jié)構(gòu),由協(xié)議完成底層信息的傳輸,通過SOAP規(guī)完成服務觸發(fā),通過WSDL語言完成服務描述,通過UDDI規(guī)構(gòu)建空間服務的元數(shù)據(jù)目錄,完成服務的注冊、發(fā)現(xiàn)和查找。可擴展標記語言XML是Internet上數(shù)據(jù)交換的標準,在WebService中負責實現(xiàn)信息表達,SOAP、WSDL和UDDI都需要用到它。本文研究探索的空間數(shù)據(jù)網(wǎng)格服務技術(shù)包括以下幾個方面的容:(1)面向OGC組織提供的OWS數(shù)據(jù)服務的解析。目前提供基礎(chǔ)數(shù)據(jù)服務的主要是OWS提供的WMS、WFS和WCS,為了在網(wǎng)格環(huán)境下很好進行管理,首先需要對這些服務容進行解析,建立相應的服務信息庫。(2)基于WSRF的空間數(shù)據(jù)服務的生成。OWS提供的服務都是基于Web服務的無狀態(tài)服務,而WSRF是提供有狀態(tài)信息的服務規(guī),目前在Globus環(huán)境下已經(jīng)開始使用,需要將OGC服務轉(zhuǎn)變成WSRF規(guī)支持下的服務,并能在網(wǎng)格環(huán)境下進行無縫調(diào)用。(3)建立網(wǎng)格環(huán)境下的服務監(jiān)控和服務發(fā)現(xiàn)機制。網(wǎng)格環(huán)境下的服務管理和監(jiān)控是基于Globus環(huán)境下的MDS構(gòu)建來實施的,目的是建立在網(wǎng)格環(huán)境下的服務狀態(tài)信息的應用,同時作為網(wǎng)格中服務節(jié)點的管理機制來完善服務的管理和發(fā)現(xiàn)。(4)基于網(wǎng)格環(huán)境的空間數(shù)據(jù)服務調(diào)用技術(shù)?;赪SRF規(guī)的空間數(shù)據(jù)服務是配置和運行在Globus環(huán)境下,需要研究其調(diào)用機制,做到所有網(wǎng)格環(huán)境下的服務都采用統(tǒng)一的調(diào)用方法和調(diào)用機制。(5)有狀態(tài)服務信息的管理。網(wǎng)格環(huán)境下的空間數(shù)據(jù)服務是有狀態(tài)的,需要對服務的狀態(tài)信息進行管理,能實時監(jiān)控服務的被調(diào)用狀態(tài)。(6)基于WebService服務的管理和發(fā)布。除了對OGC服務進行包裝發(fā)布和發(fā)布外,還需要對基于WSDL規(guī)的Web服務進行管理,并將兩者結(jié)合起來共同訪問空間數(shù)據(jù)的圖形和屬性信息。4.2.2空間網(wǎng)格服務技術(shù)路線圖網(wǎng)格基礎(chǔ)數(shù)據(jù)服務主要是將與空間數(shù)據(jù)相關(guān)的服務轉(zhuǎn)變成網(wǎng)格環(huán)境下可管理和使用的網(wǎng)格服務。這些服務分為兩種:一是OGC的OWS數(shù)據(jù)服務;二是基于WebService技術(shù)的Web服務。將這些服務轉(zhuǎn)變成網(wǎng)格環(huán)境下支持的網(wǎng)格服務技術(shù)路線如圖所示:圖4.2.2網(wǎng)格空間服務路線圖路線圖中將OWS服務和Web服務通過服務搜索關(guān)鍵技術(shù)進行整理,建立了服務信息庫,然后將這些服務進行解析,并轉(zhuǎn)變成支持WSRF規(guī)的網(wǎng)格服務,發(fā)布于MDS環(huán)境中進行管理和監(jiān)控。4.2.4搭建網(wǎng)格環(huán)境本研究網(wǎng)格實驗環(huán)境采用GlobusAlliance組織開發(fā)的著名網(wǎng)格中間件GlobusToolkit4.0.5,利用3臺機器組建網(wǎng)格虛擬組織(VirtualOrganization)。1.下載必需軟件:apache-tomcat-5.5.27;GlobusToolkit4核心組件:ws-core-4.0.5, ws-mds和wsrf;apache-ant-1.7.1 ;jdk-6u11-windows(或者jdk-6u11-Linux)2.修改環(huán)境變量:JAVA_HOME:jdk開發(fā)包路徑CLASSPATH:設(shè)置java環(huán)境變量路徑為.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jarCATALINA_HOME :你的tomcat路徑GLOBUS_LOCATION :你的ws-core-4.2.1路徑ANT_HOME :你的apache-ant-1.7.1路徑PATH:%GLOBUS_LOCATION%\bin;%JAVA_HOME%\bin;%JAVA_HOME%\lib;%ANT_HOME%\bin;%CATALINA_HOME%\bin3.配置: ws-core-4.0.5 :修改ws-core-4.0.5\etc\globus_wsrf_core\server-config.wsdd文件,在<globalConfiguration>標簽添加<parametername="logicalHost"value=""/>,表示你的服務將發(fā)布在 ws-mds :進入ws-mds文件夾,在命令行運行antdeploy,會把ws-mds部署到你的ws-core-4.0.5/lib文件,其中wsrf在ws-mds部署時用到。修改%GLOBUS_LOCATION%\lib\webmds\conf\indexinfo文件,把倒數(shù)第三行修改為<value>:8443/wsrf/services/DefaultIndexService</value>tomcat :復制ws-core-4.2.1\endorsed\下的三個jar包到apache-tomcat-5.5.27\common\endorsed文件夾4.部署webmds到tomcat:運行:%GLOBUS_LOCATION%\lib\webmds\bin\webmds-create-context-file%CATALINA_HOME%\conf\Catalina\localhost5.部署java-ws-core到tomcat:cd%GLOBUS_LOCATION%ant-fshare/globus_wsrf_common/tomcat/tomcat.xmldeploySecureTomcat-Dtomcat.dir=%CATALINA_HOME%6.啟動globuscontainer:globus-start-container-nosec-p84437.啟動tomcat,查看webmds:localhost:8080/webmds8.注冊已發(fā)布服務測試: 修改%GLOBUS_LOCATION%\etc\globus_wsrf_mds_aggregator\example-aggregator-registration.xml文件,把s://myhost:8443全部替換為:8443。(注意:因為windows下的globus沒有安全模塊,所以s要替換為) 命令行運行:mds-servicegroup-add%GLOBUS_LOCATION%\etc\globus_wsrf_mds_aggregator\example-aggregator-registration.xml節(jié)點配置環(huán)境:軟件環(huán)境:網(wǎng)格數(shù)據(jù)服務支撐軟件軟件名稱用途配置數(shù)目GeoServer提供基礎(chǔ)OWS數(shù)據(jù)服務2PostGIS提供空間數(shù)據(jù)存儲1GlobusMDS提供網(wǎng)格服務管理與監(jiān)控1Tomcat提供Web服務發(fā)布的容器1JDK提供JAVA開發(fā)工具包1Netbeans提供集成開發(fā)環(huán)境1數(shù)據(jù)服務節(jié)點:首先建立數(shù)據(jù)服務節(jié)點,服務節(jié)點主要是構(gòu)建能提供OWS服務的實驗環(huán)境,采用了Geoserver軟件進行OWS服務的發(fā)布,實驗數(shù)據(jù)源包括矢量數(shù)據(jù)和柵格數(shù)據(jù),并能提供多圖層的數(shù)據(jù)信息。這種節(jié)點至少需要構(gòu)建2個,分別構(gòu)建于windows(Windows2000/XP/7/WindowsServer2003/2007)平臺和Linux(RedHat,Ubuntu,Solaris)平臺。網(wǎng)格管理節(jié)點:網(wǎng)格管理節(jié)點主要是采用Globus環(huán)境下的MDS系統(tǒng)來實施,并與數(shù)據(jù)服務節(jié)點不在同一機器,主要用于發(fā)布已經(jīng)包裝過的WSRF空間數(shù)據(jù)服務??臻g數(shù)據(jù)庫:數(shù)據(jù)服務節(jié)點支持多種數(shù)據(jù)源,包括數(shù)據(jù)庫和數(shù)據(jù)文件,本技術(shù)的開發(fā)將全部支持這些數(shù)據(jù)的服務發(fā)布和服務訪問。實驗網(wǎng)格節(jié)點空間數(shù)據(jù)庫有開源數(shù)據(jù)庫PostgreSQL的空間擴展Postgis,MySql;商業(yè)數(shù)據(jù)庫有Sqlserver,Oracle+spatial,國家高可信度空間數(shù)據(jù)庫BeyongDB。服務實現(xiàn)節(jié)點:服務實現(xiàn)是指基于WSRF規(guī)的服務節(jié)點,在這主要是指開發(fā)過程中編程節(jié)點。數(shù)據(jù)服務節(jié)點、網(wǎng)格管理節(jié)點以與服務實現(xiàn)節(jié)點分離,在開發(fā)過程中就充分保證分布式的處理框架,滿足關(guān)鍵技術(shù)實現(xiàn)的要求。服務器硬件基本條件:CPUP4-2.0G
512M存
40G硬盤;網(wǎng)絡條件:TCP/IP協(xié)議連接4.2.5GT4編程簡介GT4工具箱提供一套構(gòu)建Web服務和非Web服務的基礎(chǔ)庫和工具REF_Ref262070542\r\h[42]。Web服務核是對WSRF的一種實現(xiàn)。應用Web服務核進行網(wǎng)格編程,與GT3通過服務工廠創(chuàng)建網(wǎng)格服務不同,GT4網(wǎng)格服務框架需要定義三個類:無狀態(tài)的Web服務、有狀態(tài)的網(wǎng)格服務資源以與用于創(chuàng)建資源實例的資源管理(ResourceHome)網(wǎng)格服務的實現(xiàn)工具包具有“高性能”、“有狀態(tài)”和“暫時”的特點,能很方便地對復雜且關(guān)聯(lián)比較密切的數(shù)據(jù)進行處理。本文所有的服務(持久的或瞬時的)都是用GT4構(gòu)建的。圖.GT4的Java編程架構(gòu)REF_Ref262070994\r\h[48]4.3OGC服務的網(wǎng)格化技術(shù)Vector/RasterData系統(tǒng)利用最新網(wǎng)格框架WSRF,對OGC服務進行改進。為空間信息服務增加狀態(tài)屬性,實現(xiàn)地圖操作業(yè)務的長效持久機制。系統(tǒng)以網(wǎng)格服務形式實現(xiàn)OGC服務接口中的操作REF_Ref262072189\r\h[53],架設(shè)基于服務的網(wǎng)格空間信息設(shè)施,如圖4.3.1。Vector/RasterData圖4.3.1網(wǎng)格空間信息基礎(chǔ)設(shè)施Fig.網(wǎng)格空間信息基礎(chǔ)設(shè)施4.3.1OGC服務信息的獲取管理獲取OGC服務元數(shù)據(jù)OGC和ISO/TC211共同推出了基于Web服務(XML)的空間數(shù)據(jù)互操作實現(xiàn)規(guī)WebMapService,WebFeatureService,WebCoverageService以與用于空間數(shù)據(jù)傳輸與轉(zhuǎn)換的地理信息標記語言GML。當前基于Web的XML技術(shù)正在成為構(gòu)建跨平臺異構(gòu)應用系統(tǒng)的主流技術(shù)REF_Ref262072308\r\h[48]。XML技術(shù)以其松散、靈活、易于跨軟件和硬件平臺等優(yōu)點,已成為Web服務的技術(shù)基礎(chǔ)。OGC服務定義了以get方式請求服務的規(guī)。我們可以通過瀏覽器,輸入URL直接執(zhí)行OGC的標準操作。以WMS服務的請求為例:國際標準對WMS定義了三種操作:GetCapabilities返回服務級元數(shù)據(jù),它是對服務信息容和可接受要求參數(shù)的一種描述;GetMap返回一個地圖影像,其地理空間參數(shù)和大小參數(shù)是明確定義了的;GetFeatureInfo(可選)返回顯示在地圖上的某些特殊要素的信息。WMS服務的GetCapabilities請求如下:02/geoserver?REQUEST=getcapability&VERSION=1.1.1&SERVICE=wms,該服務返回的是服務XML格式的元數(shù)據(jù)。CapabilitiesXML的第一部分是一個<Service>元素,它提供了整個服務服務的一般元數(shù)據(jù),它必須包括一個Name,Title,和OnlineResourceURL元素。而Abstract,KeywordList,ContactInformation,F(xiàn)ees和AccessConstraints則是可能提供的可選元素。WMSCapabilitiesXML最關(guān)鍵的部分是它所定義的Layers和Styles。在CapabilitiesXML中各種可獲取地圖都通過一個<Layer>元素來通告。一個父Layer包括許多另外的Layer,在需要時它們可以分級嵌套。父Layer中定義的一些屬性可以被其所包含的子Layer繼承。子Layer可以重新定義或增加這些繼承的屬性。服務解析過程利用JDom工具解析OGC服務的元數(shù)據(jù),抽取圖層信息,坐標信息,地圖格式,版本信息等,作為網(wǎng)格服務中的資源屬性。JDOM是一種面向Java的讀、寫和操作XML文檔的API。JDOM與現(xiàn)行的SAX和DOM標準兼容,為Java程序員提供了一個簡單、輕量的XML文檔操作方法。由于JDOM是專門為Java程序員開發(fā)的,所以采用許多Java語言的優(yōu)秀特性,比如方法重載、集合(Collections)和類映射(Reflection)。org.jdom是用于JAVAAPI操作的JDOM工具包。在org.jdom中,提供了Document、Element、Comment、DocType、Attribute、Text等存JAVA類,這些類均是訪問和操作JDOM文檔所必須的。我們可以利用這些類創(chuàng)建、遍歷、修改JDOM文檔。在org.jdom.output中,提供了DOMOutputter、XMLOutputter,用于處理JDOM樹的DOM樹形式、XML文檔形式輸出、打印等。通過URL請求wms操作返回一個xml文檔,然后以inputstream的形式將xml形成jdom中的Document。我們主要解析<service>中的服務信息和<layer>,<style>中的圖層名稱,圖層坐標,圖層格式和圖層樣式等。圖.WMS服務信息的解析4.3.2網(wǎng)格服務包裝發(fā)布過程構(gòu)建符合WSRF規(guī)的WSDL服務描述文檔和資源屬性文檔WSDL描述WEB服務的公共接口。這是一個基于XML的關(guān)于如何與Web服務通訊和使用的服務描述;也就是描述與目錄中列出的Web服務進行交互時需要綁定的協(xié)議和信息格式。通常采用抽象語言描述該服務支持的操作和信息,使用的時候再將實際的網(wǎng)絡協(xié)議和信息格式綁定給該服務。WSDL文檔的構(gòu)建可以利用java2wsdl或者GDT4工具。在wsdl文檔中主要是定義服務的輸入輸出參數(shù),操作方法。在網(wǎng)格服務的wsdl文檔中最重要的是資源屬性文檔的定義REF_Ref262071866\r\h[50]。WSRP(WS-ResourceProperties)使用資源屬性文檔來描述資源的屬性,它是一個代表資源屬性元素邏輯組合的XML文檔。資源屬性文檔是資源狀態(tài)的一個映射,并與WSDL的portType相關(guān)聯(lián)。同時WSRP還定義了一系列的消息交換格式,用于操作資源的狀態(tài):如獲取、插入和修改屬性等。由于WSRF框架已經(jīng)提供了服務與資源之間統(tǒng)一的交互模型,在設(shè)計與開發(fā)網(wǎng)格地圖服務時,只需要按照WSRF的要求對WMS中定義的接口進行合理的設(shè)計與改造,將操作狀態(tài)以與服務結(jié)果作為資源從無狀態(tài)的服務中分離出來,以供其他服務使用。然而在普通的WSDL語言中并沒有定義資源類型,本文采用了GlobusToolkit的擴展WSDL對WMS中的接口進行了重新定義,并采用Singleton單態(tài)設(shè)計模式來說明符合WSRF規(guī)的OGC服務的設(shè)計與實現(xiàn)方法。在單態(tài)模式的網(wǎng)絡服務設(shè)計中,網(wǎng)絡服務由一個無狀態(tài)的WebService與表達對應實例的相關(guān)屬性的一個有狀態(tài)的資源類組成REF_Ref262109743\r\h[56]。在該步驟中我們將資源屬性文檔定義在網(wǎng)格服務的WSDL中。如下就是定義網(wǎng)格環(huán)境下WMS服務的資源屬性文檔:<xsd:elementname="WMSResourceProperties"> <xsd:complexType> <xsd:sequence> <xsd:elementref="tns:Width"minOccurs="1"maxOccurs="1"/> <xsd:elementref="tns:Height"minOccurs="1"maxOccurs="1"/> <xsd:elementref="tns:Layers"minOccurs="1"maxOccurs="1"/> <xsd:elementref="tns:Styles"minOccurs="1"maxOccurs="1"/> <xsd:elementref="tns:Format1"minOccurs="1"maxOccurs="1"/> <xsd:elementref="tns:Srs"minOccurs="1"maxOccurs="1"/> <xsd:elementref="tns:Host"minOccurs="1"maxOccurs="1"/> <xsd:elementref="tns:Port1"minOccurs="1"maxOccurs="1"/> </xsd:sequence> </xsd:complexType> </xsd:element>該xml片段定義了網(wǎng)格地圖服務的資源,例如:圖層,地圖寬和高,坐標系等。用戶可以通過服務來操作這些資源。構(gòu)建實現(xiàn)服務的實體類這些java類主要有:QNames.java,提供一個接口訪問資源屬性;Resources.java為資源屬性的初始化和操作方法(get、set方法);Resourceshome.java為資源的管理類;Service.java為主要的服務功能實現(xiàn)類,返回用戶需求的數(shù)據(jù)。構(gòu)建WSDD和JNDI文件部署服務WSDD部署文件實現(xiàn)服務命名空間和java類之間的映射,把服務制作中的文件路徑映射成為服務的命名空間,并且引用了wsdl文件REF_Ref262072247\r\h[58]。JNDI是web服務注冊文件,完成服務的注冊。WSDD構(gòu)建方法:該文件的制作只需要把示例服務的WSDD中服務名稱和類名稱、WSDL文件位置做更改。WSDD作用:該文件負責讓GlobusContainer容器實現(xiàn)部屬,實際上據(jù)我理解該文件就是告訴服務是什么,由什么類負責提供服務。JNDIREF_Ref262072486\r\h[59]在J2EE中的角色就是“交換機”—J2EE組件在運行時間接地查找其他組件、資源或服務的通用機制,所有與系統(tǒng)外部的資源的引用,都可以通過JNDI定義和引用。服務文件歸檔該步驟中,我們將使用globus自帶的編譯命令文件globus-build-service.py,并且引用wsdl文件將wsdl文件,java實體類,部署文件歸檔成一個gar文件。它其實是一個壓縮文件,將服務描述文件和部署文件進行歸納,其過程如下圖。圖.生成網(wǎng)格服務歸檔文件部署服務到服務容器運行g(shù)lobus-deploy-gard:/gt4/org_globus_examples_services_core_first.gar命令將歸檔服務發(fā)布的GlobusContainer中。服務調(diào)用過程在NetBeans過編譯后生成的樁文件,找到服務的引用端點(Endpoint),從porttype中調(diào)用服務方法得到需要結(jié)果。最后客戶端通過創(chuàng)建EndpointReferenceType的一個對象來表示對服務端點的引用,接著根據(jù)服務地址產(chǎn)生portType并生成服務對象,用戶即可對該服務進行調(diào)用REF_Ref262108514\r\h[54]。EndpointReferenceTypeendpoint=newEndpointReferenceType();endpoint.setAddress(newAddress(serviceURI));WMSServicePortTypeWMS=locator.getWMSServicePortTypePort(endpoint);WMS=locator.getWMSServicePortTypePort(endpoint);StringmapURL=WMS.GetMap();圖.客戶端從容器訪問服務4.3.3WMS服務網(wǎng)格化的研究與實現(xiàn)圖1空間信息服務網(wǎng)格化封裝架構(gòu)REF_Ref262072363\r\h[59]網(wǎng)格地圖服務生成方法和Globus網(wǎng)格服務開發(fā)步驟基本一致,主要是根據(jù)GlobusToolkits4官方指南中的底層操作方法,需要完成下面的五個主要步驟:(1)創(chuàng)建WSDL文件,在其中定義服務接口。(2)為WSDL生成服務實現(xiàn)類。(3)建立服務配置部署文件(JNDI,WSDD)。(4)編譯生成gar文件。(5)部署服務到網(wǎng)格容器。圖:GridMapService構(gòu)建流程開發(fā)步驟中的關(guān)鍵是如何定義空間服務的接口,在此試驗中把OGCWMS中的Getmap,Getcapability方法的相應功能封裝為網(wǎng)格服務功能接口。為構(gòu)建符合WSRF規(guī)的網(wǎng)格服務,把請求地圖的參數(shù)(Layer,Bbox,Format,Srs等)做為ResourcesProperty(如代碼xx)。用戶可以通過操作資源屬性來查詢服務狀態(tài)或更改服務狀態(tài)。Getmap實現(xiàn)地圖服務地址的發(fā)現(xiàn)功能,即它只是返回一個網(wǎng)絡服務器地址,具體圖層通過操作資源屬性形成符合規(guī)的地圖請求字符串;Getcapability方法返回地圖的元數(shù)據(jù),然后利用jDom對元數(shù)據(jù)進行解析,獲得地圖服務的圖層、坐標系、地圖圍等信息,客戶端用戶就可以對這些數(shù)據(jù)有選擇的進行調(diào)用。 <xsd:elementname="Width"type="xsd:int"/><xsd:elementname="Height"type="xsd:int"/> <xsd:elementname="Layers"type="xsd:string"/> <xsd:elementname="GridMapServiceResourceProperties"> <xsd:complexType> <xsd:sequence> <xsd:elementref="tns:Width"minOccurs="1"maxOccurs="1"/> <xsd:elementref="tns:Height"minOccurs="1"maxOccurs="1"/> <xsd:elementref="tns:Layers"minOccurs="1"maxOccurs="1"/> </xsd:sequence> </xsd:complexType></xsd:element>代碼段:wsrf資源屬性文檔在wsdl文件中的表示4.3.4WFS網(wǎng)格化探索在網(wǎng)格環(huán)境下建立WFS服務,需要在WSDL文件中對其接口進行改造,以符合網(wǎng)格服務的規(guī)。WFS是根據(jù)用戶請求,通過get/post方式返回特定的GML數(shù)據(jù),如圖,然后讓用戶根據(jù)需要使用獨立的地圖客戶端展示地圖要素。在WSRF網(wǎng)格環(huán)境下的WFS探索,就是把WFS的GetCapabilities,GetFeature操作在webservice的WSDL文件中進行實現(xiàn),用戶調(diào)用時,只需要找到對應的服務端點,各種操作的參數(shù)可以作為網(wǎng)格資源屬性REF_Ref262113435\r\h[59],調(diào)用形式如圖。圖.WFS基于xml的服務請求圖.WSRF環(huán)境下的WFS服務請求<wsdl:bindingname="wfs-SOAP"type="wfs-req:wfs"><wsdl:documentation>WFSinterfaceboundtoSOAPover/1.1.</wsdl:documentation><soap:bindingstyle="document"transport="/soap/"/><wsdl:operationname="wfs.getCapabilities"><soap:operation/><wsdl:input><soap:bodyuse="literal"/></wsdl:input><wsdl:output><wsdl:faultname="ServiceExceptionReport"><soap:faultname="ServiceExceptionReport"use="literal"/></wsdl:fault></wsdl:operation>…</wsdl:binding>代碼段:用SOAP協(xié)議綁定WFS操作接口在對WFS網(wǎng)格化的研究中,首先重要的是將WFS的操作接口如getCapabilities,getGMLObject等實現(xiàn)到SOAP的WSDL綁定,使其成為普通網(wǎng)絡服務的形式可以訪問的功能。在網(wǎng)格WFS中,我們只需要將綁定的WSDL文件添加資源屬性即可,這是與普通網(wǎng)絡服務僅有的差別。4.5網(wǎng)格空間服務互操作與工作流技術(shù)4.5.1WPS互操作的不足在地理空間信息領(lǐng)域中,以統(tǒng)一的標準和規(guī)來實現(xiàn)各種GIS功能間的互操作,是分布式計算環(huán)境下進行共享與服務化的關(guān)鍵問題。開放地理信息系統(tǒng)協(xié)會(OGC)一直在推進相關(guān)應用互操作規(guī)和協(xié)議的制定,目前處于RFC階段的OGC最新成果是WebProcessingService(WPS)協(xié)議,WPS致力于實現(xiàn)GIS功能的服務化調(diào)用,在獲得廣泛認可后作為新的標準發(fā)布。WPS有別與已有用于實現(xiàn)Web地圖訪問和查詢的WMS和WFS規(guī),其最大的創(chuàng)新之處在于可以通過網(wǎng)絡為客戶端提供一系列GIS操作的服務調(diào)用接口,可以實現(xiàn)從簡單的空間分析操作到復雜的全球氣候變化模型計算的幾乎所有功能REF_Ref262110462\r\h[59]。WPS是基于XML的傳輸協(xié)議,通過Web為客戶端提供空間數(shù)據(jù)處理相關(guān)的GIS函數(shù)功能。雖然基于XML的方法調(diào)用有利于跨平臺,但是服務器和客戶端直接對xml消息的處理會大大降低傳輸?shù)乃俾屎头展δ?。OGC服務的消息傳遞沒有經(jīng)過SOAP的包裝,通過URL的直接訪問不能達到大圍大數(shù)據(jù)量的操作。而網(wǎng)格服務的消息傳輸編碼則是基于SOAP的,網(wǎng)格的發(fā)現(xiàn)、描述、傳輸機制都和OGC服務有很大區(qū)別,如圖4.5.1。4.5.2網(wǎng)格地理信息互操作研究為實現(xiàn)WPS的網(wǎng)格環(huán)境下的互操作,首先要定義網(wǎng)格處理(GridProcess)的規(guī),其容要整合網(wǎng)格計算框架。整合的方法包括:建立高性能計算基礎(chǔ)規(guī)為網(wǎng)格運算提供簡單的API接口支持Globus-DAI支持WSRF本文只探索在WSRF框架下網(wǎng)格互操作的設(shè)計。實現(xiàn)WSRF服務的關(guān)鍵還是狀態(tài)資源的封裝和具體服務的分離。WPS并沒有定義支持的具體過程,而是每個WPS實現(xiàn)定義其支持的過程,同其關(guān)聯(lián)的輸入輸出一樣。WPS可以看做是Web服務的抽象模型,其profile需要被開發(fā)成支持使用和標準化以支持互操作。WPS與WSDL,SOAP都兼容,并且在規(guī)中定義了如何用一些標準使用WPS。SOAP可以用于包裝WPS的請求和響應。SOAP描述了消息交換機制,包含了一個env:body元素,但是沒有描述body的容,如負載。WPS描述了消息交換機制,如果SOAP不需要,但是它通過詳細說明負載如何呈現(xiàn)而超出了SOAP。WPS支持WSDL,WSDL定義了服務如何被描述,但沒有定義服務接口應該是什么。WPS描述了一個重要部分-常用的部分-服務應該是什么。WSDL提供了較泛泛但被廣泛采用的WPS接口規(guī)中另一種發(fā)布機制方法。通過WSDL,WPS提供了比發(fā)布還多的文檔,更復雜的服務鏈能力。通過改造WPS的WSDL文件,增加狀態(tài)資源屬性,可以完成WFS到網(wǎng)格環(huán)境的遷移,如圖4.5.2。實現(xiàn)WSRF的WPS本質(zhì)還是SOAP\WSDL的綁定(binding)操作。圖4.5.2WSRF與WPS整合一個典型的簡單的WPS的緩沖操作可以按照如下方法進行WSRF的封裝:<types><xsd:schematargetNamespace="example.ns"><xsd:complexTypename=”BufferIOType”><xsd:sequence><xsd:elementname="identifier"type=”ows:CodeType”/><xsd:elementname="value"type=”xs:string”/></xsd:sequence></xsd:complexType><xsd:elementname="BufferInput"type=”tns:BufferIOType”/><xsd:elementname="BufferParameters"><xsd:complexType><xsd:sequence><xsd:elementref="tns:BufferInput"minOccurs="0"/></xsd:sequence></xsd:complexType></xsd:element><xsd:elementname="BufferOutput"type=”tns:BufferIOType”/><xsd:elementname="BufferResponse"><xsd:complexType><xsd:sequence><xsd:elementref="tns:BufferOutput"minOccurs="0"/></xsd:sequence></xsd:complexType></xsd:element><xsd:elementname="WPSResourceProperties"><xsd:complexType><xsd:sequence><xsd:elementref="tns:BufferInput"minOccurs="0"/><xsd:elementref="tns:BufferOutput"minOccurs="0"/></xsd:sequence></xsd:complexType></xsd:element></xsd:schema><types>...<portTypename="WPSPortType"wsrp:ResourceProperties="tns:WPSResourceProperties"><operationname="Execute_buffer"><inputname="Execute_bufferRequest"message="tns:Execute_bufferRequest"/><outputname="Execute_bufferResponse"message="tns:Execute_bufferResponse"/></operation></portType>在此WSDL文件中處理操作的輸入輸出作為WS-Resource,如果存在一個沒有指定輸入輸出參數(shù)的處理請求,就可以從此駐留的網(wǎng)格資源中取的參數(shù)。4.5.3網(wǎng)格服務工作流實驗網(wǎng)格工作流是一個網(wǎng)格服務自動化處理的過程,它根據(jù)一系列的過程規(guī)則,能夠完全或部分地把運行在網(wǎng)格環(huán)境下的各種互相作用的網(wǎng)格服務有機地結(jié)合在一起,其間的文檔、信息或數(shù)據(jù)在不同的網(wǎng)格服務之間傳遞和執(zhí)行。此外,網(wǎng)格工作流是一個運行在網(wǎng)格環(huán)境中的基本活動單元,并能夠集成其它的網(wǎng)格工作流元素,建立更高級的網(wǎng)格服務。網(wǎng)格工作流可以分為抽象的工作流和具體的工作流。WSRF制定了通過網(wǎng)絡互操作的形式訪問和操作有狀態(tài)資源的規(guī)則,在網(wǎng)絡服務調(diào)用中的消息交換時,這種資源是通過在消息頭部加入endpointreference(WS-Address)。包含的EPR為消息交換提供上下文環(huán)境,這樣服務調(diào)用就會在制定的資源上下文環(huán)境中進行。在本實驗中,我們采用開源工作流軟件Triana構(gòu)建網(wǎng)格工作流。首先我們制定一個EPR作為服務的上下文環(huán)境,它可以應用在多種服務中。因為Triana上下文框架不僅只有WSRF的上下文類型,還擴展了其他類型的上下文,比如WS-Security上下文。圖4.5.1展示了利用Triana實現(xiàn)的一個基于WSRF的網(wǎng)格工作流。該工作流的基本處理功能是通過CounterFactory網(wǎng)絡服務生成一個有狀態(tài)的計數(shù)器資源。一旦該有狀態(tài)計數(shù)器創(chuàng)建,一個add的網(wǎng)絡服務可以在計數(shù)器上下文中調(diào)用來增加計數(shù)器的數(shù)值。圖4.5.1Triana中的WSRF工作流,用工廠模式生成計數(shù)器資源,然后在資源上下文中調(diào)用一個加法服務該示例工作流可以兩個獨立的處理過程:第一步生成計數(shù)器資源,然后在此資源的上下文中應用具體操作。以下任務用于生產(chǎn)計數(shù)器資源:WSTypeGen:該工具自動生成CounterFactory網(wǎng)絡服務需求的輸入的表單。在Common.WebServices工具箱中可以找到此工具。CounterFactory:這是一個工廠服務,用來生成計數(shù)器資源。從這個服務發(fā)出的響應包含生成資源的EPR。CounterResource:這是一個Common.Context工具實例。它接受來自CounterFactory服務的響應,并將相應中包含的EPR和一個上下文名稱相聯(lián)系。在該示例中,上下文名稱是。此示例中在工廠服務是輸出和加法操作之間并沒有數(shù)據(jù)的依賴關(guān)系。實際上,只有在計數(shù)器資源創(chuàng)建以后加法任務才能執(zhí)行。兩者之間是控制依賴的關(guān)系。以下的任務是該工作流的第二部分,在計數(shù)器資源上下文中應用加法操作。WSTypeGen1:這是WSTypeGen1的第二個實例,為加法操作的輸入自動生成表單。Add:這是一個用來增加計數(shù)器資源的WSRF網(wǎng)絡服務。這個操作通過從工廠返回的和EPR相關(guān)聯(lián)的名稱在計數(shù)器資源上下文中調(diào)用。也就是說它為我們在工作流第一部分生產(chǎn)的計數(shù)器增加數(shù)目。WSTypeViewer:該工具用來顯示add操作的響應。該實驗存在問題:按這種方式實現(xiàn)的工作流是基于數(shù)據(jù)流的,前一步是輸出才會引發(fā)下一步的操作。在WSRF工作流中經(jīng)常會有不需要數(shù)據(jù)依賴的任務,為了實現(xiàn)這種情況下的工作流,可以在任務節(jié)點間直接傳輸觸發(fā)控制信號(triggercontrolsignal)。5網(wǎng)格空間信息服務集成平臺Lgrid5.1系統(tǒng)概述目前各種基礎(chǔ)空間數(shù)據(jù)的使用現(xiàn)狀是:多數(shù)應用系統(tǒng)從數(shù)據(jù)到應用程序往往自成一體,缺少橫向聯(lián)系,不能實現(xiàn)數(shù)據(jù)共享,形成重復建設(shè)。因此,建立相對統(tǒng)一的基礎(chǔ)空間數(shù)據(jù)服務平臺來管理、分發(fā)各種基礎(chǔ)空間數(shù)據(jù),并為政府各相關(guān)單位提供基于網(wǎng)絡(政府專網(wǎng))的基礎(chǔ)空間數(shù)據(jù)服務,具有明確的現(xiàn)實意義,同時又是數(shù)字城市建設(shè)的前提和基礎(chǔ)。空間信息網(wǎng)格服務平臺Lgrid集中解決城市空間地理信息資源集成問題,為城市空間信息資源開發(fā)利用提供基礎(chǔ)平臺和技術(shù)保障。同時建立城市空間地理信息資源共享、交換機制和相關(guān)的規(guī)標準體系,實現(xiàn)城市空間地理信息共享服務平臺??稍诖藬?shù)據(jù)和平臺技術(shù)基礎(chǔ)上,完成一系列政府部門業(yè)務空間應用系統(tǒng),形成城市空間地理信息資源深度開發(fā)和綜合利用的體系框架。圖5.2空間信息服務平臺Lgrid該系統(tǒng)基于Netbeans的RCP(RichClientPlatform)富客戶端平臺進行開發(fā)。Netbeans是Sun公司出品的優(yōu)秀的模塊化跨平臺的集成開發(fā)環(huán)境,有各種功能強大的插件可對IDE進行擴展,模塊式的編程模型使程序保持健壯性和擴展性REF_Ref262025241\r\h[59]。圖5.3為Lgrid空間信息服務集成管理平臺的整體結(jié)構(gòu)。5.2系統(tǒng)總體設(shè)計5.2.1系統(tǒng)體系結(jié)構(gòu)Lgird平臺實現(xiàn)數(shù)據(jù)網(wǎng)格環(huán)境下的空間數(shù)據(jù)訪問與集成,將空間數(shù)據(jù)網(wǎng)格節(jié)點監(jiān)控與服務管理、分布式空間數(shù)據(jù)訪問與集成、空間對象分布式查詢、空間計算任務分治與歸約策略、空間計算任務分布式處理等不同層面涉與的關(guān)鍵技術(shù)建立關(guān)聯(lián)并進行了有效整合。目前空間信息服務的形式多種多樣,服務容也各不一樣。Lgrid平臺主要處理符合OGC規(guī)和WebService方式發(fā)布的服務,通過服務搜索引擎來發(fā)現(xiàn)可用的空間信息服務,經(jīng)過服務的解析來獲取相關(guān)信息,并建立服務信息數(shù)據(jù)庫,并把豐富的服務信息進行重新發(fā)布。本文探索在WSRF網(wǎng)格框架下的空間信息服務實際是對OGC服務的網(wǎng)格封裝,為服務增加狀態(tài)屬性資源,解決OGC服務的瞬時性問題。利用強類型的網(wǎng)格服務生成工具LgridToolkit,支持更多的數(shù)據(jù)類型兼容不同架構(gòu)的網(wǎng)格服務,使網(wǎng)格服務有更好的跨平臺性。網(wǎng)格技術(shù)與OGCWebServices的結(jié)合將可以發(fā)揮二者的優(yōu)勢,有利于計算資源與空間信息資源的共享。5.2.2系統(tǒng)功能模塊結(jié)構(gòu)Lgrid空間信息網(wǎng)格服務平臺由服務搜索模塊、服務信息解析、信息整理入庫、空間信息服務網(wǎng)格化包裝模塊、可視化地圖客戶端等組成。其整體架構(gòu)如圖5.2。在底層數(shù)據(jù)庫端,Lgrid采用開源數(shù)據(jù)庫MySQL進行服務信息存儲,地圖應用服務器采用Tomcat+Geoserver,地圖顯示客戶端采用開源地圖類庫Geotools和簡單地圖客戶端JumpREF_Ref262072019\r\h[59]相結(jié)合。在服務信息管理模塊中,采用了先進的MVC設(shè)計模式,實現(xiàn)后臺數(shù)據(jù)和前端顯示的分離,避免了復雜混沌的數(shù)據(jù)存儲訪問模式。圖5.2空間信息服務平臺Lgrid體系架構(gòu)5.3網(wǎng)格空間信息服務訪問與集成5.3.1深度網(wǎng)絡服務信息搜索根據(jù)服務的關(guān)鍵字來搜索相關(guān)服務信息:平臺結(jié)合商業(yè)搜索引擎Goole來搜索服務的初級信息,在此基礎(chǔ)上來獲取服務深度搜索種子信息,將種子信息進行再次深度的搜索就能獲取豐富的、直接的OGC和WSDL服務信息,并存儲在臨時服務信息庫。在本模塊中使用網(wǎng)絡爬蟲HeritrixREF_Ref262071070\r\h[60]來對網(wǎng)絡服務資源進行搜索聚集。Heritrix是個"ArchivalCrawler"--用來獲取完整的、精確的、站點容的深度復制。包括獲取圖像以與其他非文本容。抓取并存儲相關(guān)的容。對容來者不拒,不對頁面進行容上的修改。重新爬行對一樣的URL不針對先前的進行替換。爬蟲通過Web用戶界面啟動、監(jiān)控、調(diào)整,允許彈性的定義要獲取的URL。其原理是深度遍歷的資源,將這些資源抓取到本地,使用的方法都是分析每一個有效的URI,并提交請求,從而獲得相應結(jié)果,生成本地文件與相應的日志信息等。圖.網(wǎng)絡爬蟲抓取OGC服務5.3.2服務信息的解析和處理模塊搜索而來的服務信息只是獲取了服務發(fā)布的相關(guān)地址和一般性的文字信息,具體的服務操作和輸入輸出接口信息不能依靠搜索得來,所以需要對搜索而來的服務地址進行解析,并把解析出來的信息存儲到服務信息庫。本解析模塊中,獲得的信息都是基于xml的,設(shè)計了利用jDom對xml信息流進行處理,具體過程參見第四章信息解析。解析得到的OGC網(wǎng)絡服務的信息,可以通過網(wǎng)格服務管理員的操作,作為WSRF網(wǎng)格空間信息服務的資源屬性包裝到WSDL文件中,在服務的執(zhí)行過程中可以維持其狀態(tài)REF_Ref262108916\r\h[55]。圖5.3.2空間信息服務解析處理5.3.3服務信息庫的建立與服務信息發(fā)布經(jīng)過解析的服務具有豐富的信息,需要建立數(shù)據(jù)庫進行管理,同時在數(shù)據(jù)庫還能存儲其它相關(guān)說明性信息。將收集處理過的服務信息進行再次的發(fā)布,從而將分散的服務信息集中為一個信息豐富、訪問便捷的服務信息平臺,并提供相關(guān)管理功能。服務信息量大而且復雜,在對網(wǎng)絡爬蟲搜索后的信息,我們用LuceneREF_Ref262031789\r\h[59]檢索工具對搜索結(jié)果建立索引。Lucene是一個基于Java的全文信息檢索工具包,它不是一個完整的搜索應用程序,而是為應用程序提供索引和搜索功能。Lucene目前是ApacheJakarta家族中的一個開源項目。也是目前最為流行的基于Java開源全文檢索工具包。5.3.3空間信息服務入庫和發(fā)布5.4網(wǎng)格空間信息服務自動化生成模塊5.4.1網(wǎng)格服務生成工具的設(shè)計利用GT4自帶工具生成服務有利于深入理解網(wǎng)格服務的實現(xiàn)機制和細節(jié),缺點是太過于底層的復雜操作不利于快速批量的生成服務。本文利用開源網(wǎng)格服務工具Introduce的設(shè)計思想,并基于NetBeansIDE對其進行改進,改造為LgridServiceToolkit(Introduce遵循GPL開源協(xié)議可以自由改進)實現(xiàn)空間信息服務制作的快速化簡單化。圖.網(wǎng)格服務自動生成框架5.4.2服務制作工具框架設(shè)計LgridServiceToolkit是一個可視化的網(wǎng)格服務開發(fā)環(huán)境,用來開發(fā)符合WSRF規(guī)的網(wǎng)格服務。采用組件繼承機制使網(wǎng)格服務可以提供服務安全元數(shù)據(jù)或者資源屬性訪問等功能。服務元數(shù)據(jù)可以注冊到預配置的服務組索引服務。功能模塊包括:創(chuàng)建服務框架,修改服務,部署服務,卸載服務,其功能完全滿足網(wǎng)格服務的需求。其功能實現(xiàn)步驟如下圖:首先利用模板程序生成網(wǎng)格服務框架,生成成功后用戶可以在修改模塊中為服務添加方法和參數(shù)類型(xmlschema),服務修改引擎可以自動的把修改后的服務相關(guān)的類和WSDL文件進行同步。生成服務框架模板引擎服務修改服務同步引擎服務部署(可進一步注冊MDS中)生成服務框架模板引擎服務修改服務同步引擎服務部署(可進一步注冊MDS中)圖5.4.1:LgridService框架生成服務框架部分以模板引擎為驅(qū)動,將網(wǎng)格服務所需的java類,生成文件(BuildFile),部署文件(JNDI,WSDD)做為模板庫(templates),在可視化界面中用戶只需要輸入服務名稱和命名空間等參數(shù)即可生成服務框架,其原理如圖5.4.2。服務修改模塊是該工具的主體,進行網(wǎng)格服務開發(fā)的首要任務是發(fā)現(xiàn)和添加服務操作的輸入和輸出參數(shù)類型。開發(fā)者可以在預定義的xmlschema庫為參數(shù)查找數(shù)據(jù)類型,該模塊也支持用戶導入xmlschema形式的自定義數(shù)據(jù)類型。模板默認為服務生成GetMultipleResourceProperties,GetResourceProperty,GetResourceProperties三種方法來操作資源屬性操作。為構(gòu)造符合WSRF規(guī)的網(wǎng)格服務,在服務修改模塊提供添加資源屬性文檔功能,用戶自己定義資源文檔的xml片段REF_Ref262113043\r\h[58],如圖5.4.3,點擊保存后該片段會自動添加到WSDL文件中。圖5.4.2LgridServiceToolkit自動生成服務框架圖5.4.3自動化工具為網(wǎng)格空間服務添加資源屬性5.4.3Lgrid生成網(wǎng)格地圖服務按照上述生成網(wǎng)格服務的設(shè)計思想,利用LgridServiceToolkit實現(xiàn)一個網(wǎng)格地圖服務。試驗服務名稱為GridMapService,然后如圖5.4.3依次定義服務文件夾、java代碼包和WSDL命名空間。服務框架生成后會自動彈出修改模塊,在該模塊中用樹狀圖表示服務的操作和資源屬性。在operations節(jié)點添加服務操作Getmap和Getcapability方法,在ResourceProperties添加資源屬性xml片段。到此一個網(wǎng)格服務的骨架基本完成。確認保存后需要到java包中為操作方法添加代碼實體。完成服務框架以后,就可以將網(wǎng)格服務部署到容器(Globus,Tomcat,oss)。本試驗把GridMapService部署的globus容器,啟動容器后在默認的服務列表中會發(fā)現(xiàn)GridMapService服務。圖5.4.3:生成服務框架圖5.4.4:部署自動生成的網(wǎng)格地圖服務GridMapService服務部署以后,工具會同時生成服務端和客戶端的代碼,服務端代碼會自動部署到Globus文件夾。編寫客戶端相對繁瑣一些,在Netbeans建立一個應用程序,將工具生成的網(wǎng)格客戶端API添加到依賴庫,調(diào)用客戶端類與類方法就可以。用getmap返回的地圖服務地址,Getcapability解析圖層,用戶就可以調(diào)用具體圖層,實現(xiàn)效果如圖5.4.5。GridMapServiceClientgridMapServiceClient=newGridMapServiceClient(gridServiceURL);gridMapServiceClient.getMap();代碼段5.4.3客戶端請求地圖服務代碼圖5.4.5.網(wǎng)格地圖服務調(diào)用結(jié)果5.5網(wǎng)格空間數(shù)據(jù)訪問集成與分布式查詢數(shù)據(jù)網(wǎng)格面向異構(gòu)分布式數(shù)據(jù)源,以數(shù)據(jù)服務方式對異構(gòu)數(shù)據(jù)資源進行訪問集成與查詢檢索,通過數(shù)據(jù)服務整合實現(xiàn)資源的共享與互操作。在空間數(shù)據(jù)網(wǎng)格環(huán)境中,以服務化方式提供空間數(shù)據(jù)訪問接口,在屏蔽后端復雜異構(gòu)數(shù)據(jù)源的同時,通過分布式對象查詢響應并處理用戶的數(shù)據(jù)訪問與處理請求,實現(xiàn)后端數(shù)據(jù)庫中矢量柵格等空間數(shù)據(jù)資源的共享與互操作。在網(wǎng)格節(jié)點的分布監(jiān)控中,使用NetBeansRCP富客戶端工具VisualLibrary,開發(fā)了網(wǎng)格節(jié)點的動態(tài)布局監(jiān)控,可以形象高效的對不同節(jié)點的數(shù)據(jù)庫和服務容器進行監(jiān)控。如圖5.5.1.圖5.5.1.網(wǎng)格服務節(jié)點監(jiān)控模塊5.5.1網(wǎng)格數(shù)據(jù)訪問與集成結(jié)構(gòu)組織空間數(shù)據(jù)網(wǎng)格訪問與集成系統(tǒng)實現(xiàn)數(shù)據(jù)網(wǎng)格環(huán)境下的空間數(shù)據(jù)訪問與集成平臺,將空間數(shù)據(jù)網(wǎng)格節(jié)點監(jiān)控與服務管理、分布式空間數(shù)據(jù)訪問與集成、空間對象分布式查詢、空間計算任務分治與歸約策略、空間計算任務分布式處理等不同層面涉與的關(guān)鍵技術(shù)建立關(guān)聯(lián)并進行了有效整合。此研究中Globus-DAI部署在Tomcat中,通過擴展OGSA-DAI實現(xiàn)網(wǎng)格數(shù)據(jù)的訪問與集成。OGSA-DAI具有良好的擴展能力,開發(fā)者可以根據(jù)需求編寫不同的Activity活動,來實現(xiàn)對資源或功能的擴展REF_Ref262022879\r\h[33]。Activity(活動)是OGSA-DAI的基本工作模塊,由一些離散的Java程序包組成,實現(xiàn)數(shù)據(jù)查詢、數(shù)據(jù)轉(zhuǎn)換、數(shù)據(jù)傳輸?shù)染唧w的功能。多個Activity之間通過管道(Pipeline)相互連接,通常一個Activity的輸出對應另一個Activity的輸入。編寫一個Activity首先通過OGSA-DAI提供的模板來定義一個XML-Schema,用來描述Activity的XML元素結(jié)構(gòu),以與Activity的輸入、輸出和其他一些配置;之后編寫該Activity相應的功能實現(xiàn)類,也就是服務端類;接著編寫Activity的客戶端代理類以與客戶端調(diào)用類;最后使用OGSA-DAI提供的工具將該Activity部署到相應的服務上,即可實現(xiàn)對新功能的擴展。5.5.2空間數(shù)據(jù)服務查詢、更新、轉(zhuǎn)換和傳輸數(shù)據(jù)訪問與集成中間件面向數(shù)據(jù)網(wǎng)格基礎(chǔ)設(shè)施搭建提供異構(gòu)數(shù)據(jù)查詢、更新、轉(zhuǎn)換和傳輸功能。中間件的分布式服務資源集成架構(gòu)可根據(jù)特定數(shù)據(jù)訪問需求進行伸縮擴展,對數(shù)據(jù)資源和數(shù)據(jù)存取處理進行有效的組織與管理。5.5.3空間數(shù)據(jù)分布式查詢在此平臺中采用OGSA-DQPREF_Ref262029140\r\h[45]數(shù)據(jù)訪問與集成中間件在設(shè)計上針對通用數(shù)據(jù)資源執(zhí)行查詢操作,實現(xiàn)網(wǎng)格環(huán)境下分布式異構(gòu)地理空間數(shù)據(jù)的服務化發(fā)布,需要在中間件基礎(chǔ)上進行對象查詢和空間查詢函數(shù)拓展,以實現(xiàn)空間數(shù)據(jù)對象查詢操作。圖.DQP分布式查詢的流程5.6本章小結(jié)本章主要描述了基于網(wǎng)格的地理空間信息訪問集成系統(tǒng)的設(shè)計和實現(xiàn),將前面研究的成果基于Netbeans富客戶端平臺開發(fā),在一些原有的工具和中間件上進行擴展,實現(xiàn)了分布式地理空間的訪問、集成和操作?;谠撓到y(tǒng)的實驗表明網(wǎng)格技術(shù)作為分布式GIS的解決方案是可行的,并且論證了本文設(shè)計的網(wǎng)絡地圖服務的網(wǎng)格化研究達到了設(shè)計需求,具有很強的應用前景。參考文獻FosterI,KesselmanC.TheGrid:BlueprintforaNewComputingInfrastructure[M].California:MorganKaufmann,1999IanFoster,CarlKesselman,JeffreyM.Nick,StevenTuecke,“ThePhysiologyoftheGrid”,./alliance/publications/papers/ogsa.pdf德仁,易華蓉,江志軍.論網(wǎng)格技術(shù)與其與空間信息技術(shù)的集成[J].大學學報QingfengGuan,TongZhang,andKeithC.Clarke;GeoComputationintheGridComputingAge;叢書 LectureNotesinComputerScience; SpringerBerlin/Heidelberg;ISSN 0302-9743(Print)1611-3349(Online);卷 Volume4295/2006;圖書 WebandWirelessGeographicalInformationSystems;DOI 10.1007/11935148鵬.網(wǎng)格體系結(jié)構(gòu)標準的演變與分析[J],信息技術(shù)與標準化,2005,(8):20-25.駱劍承,周成虎,蔡少華等.基于中間件技術(shù)的網(wǎng)格GIS體系結(jié)構(gòu)[J].地球信息科學.2002(9):17-25.王家耀,祝玉華,吳明光.論網(wǎng)格與網(wǎng)格地理信息系統(tǒng)[J].測繪科學技術(shù)學報,2006,23(1):1-7.德仁,朱欣焰.從數(shù)字地圖到空問信息網(wǎng)格一空間信息多級網(wǎng)格理論思考;大學學報信息科學版2003,28(6):642一649.OGC[EB/OL]:.正林,王汝傳.從WebServices到GridServices[J].數(shù)據(jù)通信,2006(2):26-28.建兵.基于網(wǎng)格的空間信息服務關(guān)鍵技術(shù)研究:[博士學位論文〕.:中國科學院遙感應用研究所,2006.WorldWideWebConsortium,Simpleobjectaccessprotocol(SOAP)1.1,./TR/soap/.峰,基于網(wǎng)格服務的地理空間信息共享平臺關(guān)鍵技術(shù)研究.博士學位論文.科技大學,2007.Bellwood,T.,Clement,L.,andvonRiegen,C.(eds)(2003),UDDIVersion3.0.1:UDDISpecTechnicalCommitteeSpecification.Available/pubs/uddi-v3.0.1-20031014.htm.ThomasH.Hinke,“GridTechnologyasaCyberinfrastructureforEarthScienceApplications”,EarthScienceTechnologyConference(ESTC),CA,USA,June2004.宋關(guān)福,羅靈軍.面向服務的地理信息共享技術(shù)[J].,2009(2):97-100.王少波,解建倉,王曉輝.基于OGCWMS規(guī)的WebGIS開發(fā)與應用[J].計算機工程與應用,2006,35(39):12-15.deLaBeaujardiere,Jeff(2004),WebMapService,OGCprojectdocumentreferencenumberOGC04-024.Vretanos,P(ed.)(2002),WebFeatureServiceImplementationSpecification,OpenGISprojectdocument:OGC02-058,version1.0.0.云翔,景寧,犖,等.空間信息網(wǎng)格SIG:新一代的空間信息基礎(chǔ)設(shè)施和服務框架[J].地理信息世界.2007,5(4):22-27.AijunChen,LiPingDi,YaxingWei,YuqiBai,andYangLiu.AnoptimizedGrid-based,OGCstandards-compliantcollaborativesoftwaresystemforservingNASAgeospatialdata.2ndIEEESystemsandSoftwareWeek(SASW2006),30thAnnualSoftwareEngineeringWorkshop.LoyolaCollegeGraduateCenter,Columbia,MD,USA.25-27April2006.GT4.0WSMDSTriggerService,./toolkit/docs/4.0/info/trigger/index.pdfGT4.0:InformationServices:Aggregator,./toolkit/docs/4.0/info/aggregator/index.pdfGT4.0WSMDSWebMDS,./toolkit/docs/4.0/info/webmds/index.pdfGlobus,.GT4.0WSGRAM,./toolkit/docs/4.0/execution/wsgram/index.pdf廣學,東,等.網(wǎng)格技術(shù)與空間信息共享和服務.測繪科學,2005,30(1):42~44TheOGSA-DAIGroup.OGSA-DAIUserDocumentation[EB/OL].HYPERLINK"
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 45216-2025危險貨物自反應物質(zhì)和有機過氧化物包裝件爆燃試驗方法
- 共用墻合同范本
- 兼職防疫保安合同范本
- 出售吊車合同范例
- 加裝電梯托管合同范本
- 光伏銷售質(zhì)保合同范本
- 單位二手房交易合同范本
- 勞動合同范例 河南
- 買賣交易正規(guī)合同范本
- 個人買賣住房合同范本
- 樂沛LOTSPLAY德國HABA邏輯思維課程介紹手冊
- 高中化學人教版一輪復習-晶體結(jié)構(gòu)與性質(zhì)(復習課件)
- GB/T 22919.3-2008水產(chǎn)配合飼料第3部分:鱸魚配合飼料
- 劉半農(nóng)《教我如何不想她》課件
- 前行第07節(jié)課(僅供參考)課件
- 船舶涂裝課件
- 界面砂漿檢測報告
- 浙江鞋業(yè)出口貿(mào)易研究
- (完整版)環(huán)境科學與工程-專業(yè)英語詞匯
- 中考形容詞副詞專題復習市公開課一等獎省名師優(yōu)質(zhì)課賽課一等獎課件
- 甲醛優(yōu)質(zhì)課件
評論
0/150
提交評論