信息工程大學測繪學院 王連備 賁 進
北京望神州科技有限公司 吳 英
徠卡測量新技術應用專欄
面向服務的空間數(shù)據(jù)共享技術研究
信息工程大學測繪學院 王連備 賁 進
北京望神州科技有限公司 吳 英
1.面向服務的體系架構
面向服務的體系結構 (service-oriented architecture,SOA)是為解決網(wǎng)絡應用環(huán)境下分布式異構系統(tǒng)集成并進而實現(xiàn)資源共享問題而逐步發(fā)展起來的一種系統(tǒng)架構設計思想。它將傳統(tǒng)應用的不同功能單元封裝為符合Web Services技術體系的Web服務,服務之間通過明確定義的接口互相關聯(lián)。接口采用中立的方式進行定義,獨立于實現(xiàn)服務的硬件平臺、操作系統(tǒng)和編程語言。這使得系統(tǒng)中的服務可以以一種統(tǒng)一和通用的方式進行交互。
面向服務的體系架構包含三種角色:服務使用者(service consumer)、服務提供者(service provider)和服務注冊中心(service registry)。其中服務使用者是使用服務的客戶端,可能是客戶應用程序或另一個服務。它通過服務注冊中心查詢所需的服務,通過接口來綁定并請求服務;服務提供者是一個實現(xiàn)了某種功能服務實體,它接受和執(zhí)行來自使用者的請求;服務注冊中心實現(xiàn)了服務的注冊,是服務發(fā)現(xiàn)的前提和基礎。
與傳統(tǒng)系統(tǒng)架構思想相比,面向服務的系統(tǒng)架構思想最大的特點是其用動態(tài)發(fā)現(xiàn)、動態(tài)綁定和執(zhí)行的松耦合模式代替了傳統(tǒng)軟件組件之間的緊耦合方式,從而容易實現(xiàn)異構系統(tǒng)的集成和資源的共享。
2.OGC OW S
面向服務的系統(tǒng)架構思想引起了地理信息領域相關組織和機構的廣泛關注,基于面向服務的架構思想和Web Services技術實現(xiàn)空間數(shù)據(jù)的共享已成為一個重要的研究領域。
ISO/TC211明確提出了地理信息服務的概念并發(fā)布了《Geographic Infor mation-Services》(ISO 19119:2005)標準,對地理信息服務進行了詳細的定義和闡述。而開放地理信息聯(lián)盟 (Open Geospatial Consortium,OGC)則進一步結合Web Seriveces技術開展了空間數(shù)據(jù)資源集成和互操作問題的專門研究,提出了OWS(OGCWeb Services)框架。該框架是一個基于開放標準的在線信息服務框架,能夠無縫集成各種在線空間信息服務,使得各種分布式空間處理系統(tǒng)能夠通過X ML和HTTP技術進行交互,并為各種在線空間數(shù)據(jù)資源提供基于Web的發(fā)現(xiàn)、整合和互操作機制。
此外,OGC還定義了一系列支持空間數(shù)據(jù)共享的服務規(guī)范,包括網(wǎng)絡目錄服務 (catalogue service for theWeb,CS W)規(guī)范、Web要素服務 (Web feature service,WFS)規(guī)范、Web柵格服務 (Web coverage service,WCS)規(guī)范和Web地圖服務 (Web map service,WMS)規(guī)范等。OGC系列服務規(guī)范定義了在Web上共享數(shù)據(jù)和服務的標準接口?;诮涌跇藴?WMS、WCS等空間數(shù)據(jù)服務可以作為任何一個支持該標準的客戶應用系統(tǒng)的數(shù)據(jù)源,換而言之,任何客戶應用都可以基于接口標準實現(xiàn)與空間數(shù)據(jù)服務的集成和互操作,從而屏蔽了對異構數(shù)據(jù)源訪問的復雜性,實現(xiàn)分布式異構空間數(shù)據(jù)的共享。
總的說來,面向服務的思想及Web Services技術的發(fā)展在空間地理信息領域產(chǎn)生了極大的影響,促使空間信息的應用模式從封閉的地理信息系統(tǒng)走向了標準、開放的地理信息服務。
空間數(shù)據(jù)共享技術的發(fā)展同樣也引起了產(chǎn)業(yè)界的關注和響應,OGC所定義的系列地理信息服務規(guī)范已經(jīng)得到了許多地理信息軟件廠商的支持。ERDAS已在其推出的 APOLLO系列軟件中實現(xiàn)了OGC CS W、WMS和WCS等。
1.ERDAS APPLLO Essentials-SD I簡介
ERDASAPOLLO是集地理空間數(shù)據(jù)的處理、管理、發(fā)布和共享等各項功能為一體的系統(tǒng)級解決方案。其中 ERDAS APOLLO Essentials-SD I軟件提供了可管理和分發(fā)空間數(shù)據(jù)的基礎設施。在支持空間數(shù)據(jù)共享方面,該軟件具有如下特點。
(1)采用標準和開放的系統(tǒng)架構
ERDAS APOLLO Essentials-SD I完全兼容 OGC和 ISO等空間地理信息領域的相關標準,是一個支持服務互操作的平臺,允許數(shù)據(jù)所有者在其組織內部或與第三方以Web服務的方式實現(xiàn)數(shù)據(jù)共享。
(2)支持數(shù)據(jù)集成和互操作
能將空間數(shù)據(jù)發(fā)布為OWS,如WMS、WCS、WFS等。結合成熟的 G ML和 ISO 19115/19139元數(shù)據(jù)標準,使得 ERDASAPOLLO Essentials-SD I能夠和任何支持這些標準的客戶應用程序集成并實現(xiàn)互操作。
(3)支持對數(shù)據(jù)和服務的編目管理
SD I提供空間數(shù)據(jù)集及空間數(shù)據(jù)服務的注冊和編目管理,任何遵循OGC/ISO空間元數(shù)據(jù)標準的空間數(shù)據(jù)集和兼容OGC數(shù)據(jù)服務規(guī)范的服務都可以注冊到 ERDASAPOLLO Catalog服務中進行編目管理,任何兼容OGC CS W協(xié)議的客戶端都可以基于該服務進行數(shù)據(jù)和服務檢索。
2.基于 ERDAS APOLLO的空間數(shù)據(jù)共享
平臺設計
本文基于面向服務的思想,將數(shù)據(jù)共享過程中數(shù)據(jù)發(fā)現(xiàn)、數(shù)據(jù)獲取等行為抽象為服務,以 ERDAS APOLLO Essentials-SD I系列軟件為基礎,設計了空間數(shù)據(jù)共享平臺。該平臺采用面向服務的體系架構,分為應用層、空間數(shù)據(jù)服務層和數(shù)據(jù)資源層,如圖1所示。
圖 1 面向服務的空間數(shù)據(jù)共享平臺架構
數(shù)據(jù)資源層:由各種空間數(shù)據(jù)及其管理系統(tǒng)構成,在共享平臺中是原始數(shù)據(jù)源。
空間數(shù)據(jù)服務層:包括空間元數(shù)據(jù)服務和空間數(shù)據(jù)服務兩部分,在共享平臺中是數(shù)據(jù)使用者查詢和獲取數(shù)據(jù)的接口,是數(shù)據(jù)提供者提供數(shù)據(jù)的代理。
空間元數(shù)據(jù)服務層:包括數(shù)據(jù)集和數(shù)據(jù)服務的元數(shù)據(jù)注冊服務,以及數(shù)據(jù)集查詢服務。注冊服務由數(shù)據(jù)提供者使用,用于注冊和更新有關數(shù)據(jù)內容和數(shù)據(jù)服務的元數(shù)據(jù);查詢服務由客戶應用程序調用,用于搜索滿足要求的數(shù)據(jù)及數(shù)據(jù)服務。
空間數(shù)據(jù)服務是數(shù)據(jù)所有者在線提供數(shù)據(jù)的具體形式,是數(shù)據(jù)使用者獲取數(shù)據(jù)的接口,由使用數(shù)據(jù)的客戶應用程序調用以獲取所需的數(shù)據(jù)。
為使共享平臺具有開放性和兼容性,空間數(shù)據(jù)服務層中的服務均遵循空間地理信息領域的相關標準。其中空間元數(shù)據(jù)服務基于APOLLO Essential-SD ICatalog軟件實現(xiàn),該功能基于 OGC CS W規(guī)范實現(xiàn)且支持 ISO 19115/19139元數(shù)據(jù)標準??臻g數(shù)據(jù)服務基于APOLLO Essentials-SD I,遵循OGC規(guī)范的WMS、WCS、WFS等服務標準。
應用層:由各種使用空間數(shù)據(jù)的行業(yè)應用程序構成,在共享平臺中是數(shù)據(jù)服務的使用者。
3.基于面向服務架構的空間數(shù)據(jù)共享模式
在上述共享架構下,空間數(shù)據(jù)共享的實現(xiàn)模式如圖2所示。
1)數(shù)據(jù)服務提供者向元數(shù)據(jù)服務 (APOLLO Catalog服務)注冊數(shù)據(jù)集元數(shù)據(jù)和數(shù)據(jù)服務元數(shù)據(jù);
2)客戶應用程序向元數(shù)據(jù)服務發(fā)出數(shù)據(jù)查詢請求;
3)元數(shù)據(jù)服務 (APOLLO Catalog服務)搜索后向客戶應用程序返回滿足條件的數(shù)據(jù)服務 (WCS/ WMS/WFS服務)元數(shù)據(jù);
4)客戶應用程序綁定數(shù)據(jù)服務并向數(shù)據(jù)服務發(fā)出數(shù)據(jù)請求;
5)數(shù)據(jù)服務從數(shù)據(jù)存儲系統(tǒng)中提取數(shù)據(jù),按照OGC相應數(shù)據(jù)服務規(guī)范的要求對數(shù)據(jù)進行封裝后返回給客戶應用程序;
6)客戶應用程序解析服務響應消息,獲取所需的數(shù)據(jù)。
圖 2 基于面向服務架構的空間數(shù)據(jù)共享模式
為驗證本文所提出的面向服務的空間數(shù)據(jù)共享模式的可行性,本文依據(jù)上述設計,依托 ERDAS APOLLO Essentials-SD I軟件實現(xiàn)了 CS W、WMS和WCS,同時基于OGC規(guī)范和 Geotools工具包設計和開發(fā)了客戶端軟件,以此為基礎構建了面向服務的空間數(shù)據(jù)共享實驗平臺,并基于該平臺進行了空間數(shù)據(jù)共享試驗,試驗環(huán)境如圖 3所示。
圖3 試驗環(huán)境
試驗所采用的數(shù)據(jù)為某地區(qū) 1∶20萬的矢量數(shù)據(jù)及 10m分辨率的 SPOT影像數(shù)據(jù),上述兩類數(shù)據(jù)基于區(qū)域范圍劃分為了多個數(shù)據(jù)集。矢量數(shù)據(jù)集發(fā)布為WMS,影像數(shù)據(jù)集發(fā)布為WCS。依據(jù)OGC CS W規(guī)范核心元信息模型及 ISO 19115/19139元數(shù)據(jù)標準定義了數(shù)據(jù)集元數(shù)據(jù)和數(shù)據(jù)服務元數(shù)據(jù)并注冊到了試驗平臺的目錄服務中。
試驗中,客戶端將查詢參數(shù)封裝為符合OGC目錄服務接口規(guī)范的 SOAP消息,通過 HTTP協(xié)議發(fā)送給元數(shù)據(jù)服務 (Catalog Server);元數(shù)據(jù)服務查詢后將滿足條件的數(shù)據(jù)服務接口元數(shù)據(jù)封裝為 SOAP響應消息返回給客戶端。當需要矢量數(shù)據(jù)時,客戶端按照WMS接口操作的要求構造數(shù)據(jù)請求消息,通過 HTTP協(xié)議發(fā)送給WMS Server;需要影像數(shù)據(jù)時,客戶端按照WCS接口操作的要求構造數(shù)據(jù)請求消息,通過 HTTP協(xié)議發(fā)送給WCS Server;客戶端解析服務響應消息并獲取數(shù)據(jù),其界面如圖 4所示。
圖 4 空間數(shù)據(jù)共享試驗客戶端界面截圖
試驗結果表明,依托Web Services技術跨平臺的特征及空間信息領域的相關標準,本文所提出的面向服務的空間數(shù)據(jù)共享模式能夠集成分布式、異構的空間數(shù)據(jù)資源,改善數(shù)據(jù)發(fā)現(xiàn)的效率,實現(xiàn)空間數(shù)據(jù)資源的有效共享。
試驗中發(fā)現(xiàn),OGC WCS、WMS等數(shù)據(jù)服務協(xié)議基于XML和HTTP協(xié)議來傳輸空間數(shù)據(jù),在傳輸遙感影像等大數(shù)據(jù)量數(shù)據(jù)集時的效率較低,進一步的研究將圍繞這一問題而展開。
(本專欄由徠卡測量系統(tǒng)和本刊編輯部共同主辦)