鄭建功,許有田,高紅心,崔軍
(西安市勘察測繪院,陜西西安 710054)
隨著計算機技術、網絡技術、空間數據庫技術、空間技術的飛速發展,地理信息技術的發展已經進入一個嶄新的時代,已經開始向社會和大眾方向延伸。GIS技術也經歷了傳統GIS、WebGIS、分布式GIS、三維GIS等不同發展階段。然而當前基于服務的GIS,逐漸脫穎而出,成為引領GIS發展的一個重要方向標。
近年來,不同部門、不同行業通過遙感、航攝、GPS、LIDAR、傳統測繪等生產了海量的二維、三維空間地理數據,建立了大量的空間地理信息系統和空間數據庫。但是由于空間地理數據的多樣性和復雜性,傳統的表現方法缺陷日益凸顯。各個系統彼此封閉、孤立、缺乏統一標準,不同的數據格式、數據結構、存儲方法,數據系統和“孤島數據庫”難以實現信息共享和交流,無法實現空間地理信息數據和服務的最大共享[1]。而Web Services的引入將能夠改變GIS數據訪問和網絡互操作,實現真正網絡環境下的空間地理信息共享,于是基于服務的空間地理信息共享平臺研究和設計,已經成為當前GIS界研究的一個重要方向。本文重點討論基于ArcGIS Server平臺建立空間地理信息共享平臺的相關研究設計和實現方法。
傳統的WebGIS主要使用CGI、ActiveX和DCOM技術、java、GIS插件等技術建立WebGIS的應用。這些技術各有優缺點,當前流行的 WebGIS平臺,如 ArcIMS、MapXtreme、MapGuide分別選用了這些技術,但是使用這些技術開發的WebGIS應用系統升級和移植比較困難,尤其是缺乏對分布式地理信息數據處理的能力[2]。
進入上世紀90年代,分布對象技術成為分布計算發展的主流方向。分布式WebGIS是以網絡為基礎平臺,“分布”為突出特點,即實現數據和功能的分布,能夠管理多分辨率的、海量的和多源的空間數據的技術系統。所使用的主要代表技術有OMG的CORBA,Microsoft的 COM/DCOM 和 SUN 的 EJB[3]。
筆者在《測繪科學》2009年第5期上,論述了從底層采用AJAX+J2EE構建的4層分布式DragonMapWeb系統的技術設計和實現方法。
Web Services是在Internet上進行分布式計算的基本構造塊,是組件對象技術在Internet中的延伸,是一種部署在Web上的組件。Web Services是通過一系列標準和協議來保證程序之間的動態連接的。可以認為功能成熟全面的Web Services平臺是HTTP+XML+SOAP+WSDL+UDDI。
基于Web的地理信息服務的主要目標就是發揮GIS自身特點和優勢的同時,利用Web通過Internet為GIS應用提供一個開放、標準的信息獲取、管理、存儲、共享、分析和系統性的交互操作的環境[4]。基于Web服務的GIS服務鏈如圖1所示。

圖1 地理信息Web服務鏈[5]
ArcGIS Server是一個發布企業級GIS應用程序的綜合平臺,提供了創建和配置GIS應用程序和服務的框架,可以滿足客戶端的各種需求。它是基于ArcObject組件開發的服務器端產品,能在企業和分布式計算框架中建立以服務器為中心、集中式管理并以計算機網絡為核心支持多用戶的GIS應用,通過ArcGIS Server提供的 Server API可構建在標準的.NET和J2EE Web服務器中的Web應用和Web Services以及其他企業級應用,功能涵蓋GIS的基本服務、數據訪問、地圖查詢、地圖分析、地圖查詢等[6]。
ArcGIS Server主要提供兩種Web服務方式:基于SOAP的Web服務和基于REST的Web服務。但是REST服務更具有一定的優勢,如:
①無需引入SOAP消息傳輸層,輕量級和高效率的HTTP格式可被直接應用。
②更加靈活和易用。
③可以不使用任何語言就能訪問REST服務。
④更好的性能和緩存支持。
⑤可擴展性和無狀態性。
⑥易于被索引和發現。

基于REST風格的Web服務和基于SOAP的Web服務比較 表1
本平臺主要采用ArcGIS Server平臺,數據庫管理采用ArcSDE引擎管理的Oracle數據庫集中管理空間地理信息數據庫。客戶端采用REST風格的Silver-Light開發方式。
眾所周知,數據建模在整個系統建設中占了很大部分,耗時、耗力、投資較大。GIS地理信息數據建模是建立該系統關鍵的一環。這主要涉及我們有什么數據?向客戶提供什么數據?這些都是我們如何表現這些數據的基礎[7]。
建立統一的標準規范、數據更新維護和運行管理機制,實現各類空間地理信息資源的整合,提供縱向多級、橫向多庫的空間地理數據服務體系,具備標準的多類型地理信息服務接口,讓各級部門或單位可以在發布的綜合空間地理數據庫上開展地理信息業務,促進空間地理信息服務共享。

圖2 空間地理信息平臺數據模型
(1)建立空間地理數據庫標準規范和數據交換共享制度,為“數字城市”提供權威、標準的數據與應用服務平臺。
(2)建立市級空間地理信息數據交換中心和目錄服務中心。
(3)建立二維、三維一體化的空間地理信息共享服務平臺。
(3)提供面向公眾的地理空間信息服務,促進地理空間信息建設向實用化、共享化、大眾化、產業化方向發展。
該平臺采用ESRI系列產品:ArcGIS Server等支撐整個基于服務的地理信息共享平臺建設。該平臺建設涉及面廣,其最終目標是實現所有二維、三維數據的網絡服務共享應用,為政府、企事業單位搭建一個基礎空間地理信息共享服務平臺。空間地理信息服務平臺體系架構如圖3所示。

圖3 空間地理信息服務平臺體系架構

圖4 共享服務平臺界面
市場經濟的發展和行業內的激烈競爭都要求我們必須以“服務”的理念和姿態做事,這種服務也必須與時俱進、動態變化。這將是傳統測繪服務方式的巨大革命。具體到我們測繪單位來說,那就是不再以傳統的數據加工——交付使用——更新這種模式,而是轉化成服務提供——遠程調用這種模式。本文重點提出了基于ArcGIS Server的空間地理信息共享平臺建設的關鍵技術、系統設計目標、系統架構、數據建模以及實現方法。
[1]孫立堅,劉紀平,王亮等.基于Web Services技術的GIS體系結構研究[J].地理信息世界,2005(6):21~22
[2]陳靜,龔健雅,朱欣焰等.基于J2EE的分布式Web GIS[J].測繪通報,2004(2):27~30
[3]鄭建功,張轉,劉楊等.基于AJAX和J2EE的WebGIS分布式系統設計與實現[J].測繪科學,2009(5):210~211
[4]王建濤.基于Web的地理信息服務研究與實踐[D].鄭州:解放軍信息工程大學博士論文,2005
[5]ESRI,ArcWeb Service.http://www.gegraphynetwork.com/webserviees/gateway.html
[6]王建濤.基于ArcGIS Server的地圖網絡服務系統設計與實現[D].西安:西安科技大學碩士論文,2009
[7]鄭建功,高紅心,李楠等.基于SuperMap IS.NET的城市投資項目管理系統設計與實現[J].城市勘測,2009(4):19~21