WebGIS技術
隨著計算機技術、網絡技術、數據庫技術等的發展以及應用的不斷深化,GIS技術的發展呈現出新的特點和趨勢,基于互聯網的Web GIS就是其中之一。Web GIS除了應用于傳統的國土、資源、環境等政府管理領域外,也正在促進與老百姓生活息息相關的車載導航、移動位置服務、智能交通、搶險救災、城市設施管理、現代物流等產業的迅速發展。
Web開發技術的發展
Web開發技術的發展可以粗略劃分成以下幾個階段:
(1)靜態內容階段
在這個最初的階段,使用Web的主要是一些研究機構。Web由大量的靜態HTML文檔組成,其中大多是一些學術論文。Web服務器可以被看作是支持超文本的共享文件服務器。
(2)CGI程序階段
在這個階段,Web服務器增加了一些編程API。通過這些API編寫的應用程序,可以向客戶端提供一些動態變化的內容。Web服務器與應用程序之間的通信,通過CGI(Common Gateway Interface)協議完成,應用程序被稱作CGI程序。
(3)腳本語言階段
在這個階段,服務器端出現了ASP、PHP、JSP、ColdFusion等支持會話(Session)的腳本語言技術,瀏覽器端出現了Java Applet、Javascript等技術。使用這些技術,可以提供更加豐富的動態內容。
(4)瘦客戶端應用階段
在這個階段,在服務器端出現了獨立于Web服務器的應用服務器。同時出現了Web MVC開發模式,各種Web MVC開發框架逐漸流行,并且占據了統治地位。基于這些框架開發的Web應用,通常都是瘦客戶端應用,因為它們是在服務器端生成全部的動態內容。
(5)RIA應用階段
在這個階段,出現了多種富互聯網應用(Rich Internet Application,RIA)技術,大幅改善了Web應用的用戶體驗。應用最為廣泛的RIA技術是DHTML和Ajax。Ajax技術支持在不刷新頁面的情況下動態更新頁面中的局部內容。同時誕生了大量的Web前端DHTML開發庫,例如Prototype、Dojo、ExtJS、jQuery/jQuery UI等等,很多開發庫都支持單頁面應用(Single Page Application)的開發。其他的RIA技術還有Adobe公司的Flex、微軟公司的Silverlight、Sun公司的JavaFX(現在為Oracle公司所有)等等。
(6)移動Web應用階段
在這個階段,出現了大量面向移動設備的Web應用開發技術。除了Android、iOS、Windows Phone等操作系統平臺原生的開發技術之外,基于HTML5的開發技術也變得非常流行。
從上述Web開發技術的發展過程看,Web從最初其設計者所構思的主要支持靜態文檔的階段,逐漸變得越來越動態化。Web應用的交互模式,變得越來越復雜:從靜態文檔發展到以內容為主的門戶網站、電子商務網站、搜索引擎、社交網站,再到以娛樂為主的大型多人在線游戲、手機游戲。
WebGIS發展
由于Internet 技術和Web技術的成熟與大規模普及應用,GIS開始面向傳統行業和廣大民眾,WebGIS開始出現和發展,并逐漸成為GIS應用的一種重要方式。WebGIS是將Web技術應用于GIS開發的產物,是一個交互式的、分布式的、動態的地理信息系統,是由多臺主機、多個數據庫和無數終端,并由客戶機與服務器(HTTP 服務器及應用服務器)相連接所組成的。WebGIS中,空間信息應用主要采取的是瀏覽器/服務器(B/S)方式。圖8-1展示了GIS的網絡化的發展趨勢。

GIS的網絡化的發展趨勢
Web服務技術也一直處于發展之中。在Web服務發展的初期,XML格式化消息的第一個主要用途是應用于XML-RPC協議,其中RPC(Remote Procedure Call)代表遠程過程調用。在XML遠程過程調用(XML-RPC)中,客戶端發送一條特定消息,該消息中必須包括名稱、運行服務的程序以及輸入參數。
之后為了標準化,跨平臺又產生了基于SOAP的消息通信模型。SOAP是在XML-RPC基礎上,使用標準的XML描述RPC的請求信息(URI/類/方法/參數/返回值)。XML-RPC只能使用有限的數據類型種類和一些簡單的數據結構,SOAP能支持更多的類型和數據結構。優點是跨語言,非常適合異步通信和針對松耦合的C/S。
但隨著時間的推移和SOAP的推廣情況,SOAP的一些缺陷也不斷暴露。雖然SOAP使得進程間通信變得簡單易用,但并不是每個廠商都愿意將自己的老系統再升級為支持SOAP,而且SOAP的解析也并不是每種語言都內置支持,比如Javascript。為解決這些問題,HTTP協議重回開發者的視野。HTTP是世界上已經存在的一個最為開放、最為通用的應用協議,通過設計一種使用HTTP協議來完成服務端與客戶端通信的方法,可以完美解決SOAP的問題。至此,表達性狀態轉移(Representational State Transfer,REST)應運而生。REST一般用來和SOAP做比較,它采用簡單的URL方式來代替一個對象,優點是輕量,可讀性較好,不需要其他類庫支持,缺點是URL可能會很長,不容易解析。
WebGIS 2.0
早期的WebGIS是依據當時的網絡環境提出的,近年來由于Web 2.0(主要包括Web服務、REST與AJAX等技術)的迅速發展,原本Web GIS中所依賴的方法與技術也不斷在更新,表8-1顯示了WebGIS 1.0與WebGIS2.0之間的一些重要區別。

WebGIS1.0與WebGIS2.0之間的重要區別
WebGIS 1.0(2005年以前的Web GIS技術)主要關注的是靜態二維地圖,WebGIS 2.0主要關注二維動態地圖和對三維地圖的研究(例如Google地球、Microsoft Bing地圖和 ESRI ArcGIS Explorer)。這些WebGIS 2.0新增的技術提升了用戶體驗,而且將使用地理網絡技術的用戶拓展了一個數量級。WebGIS獲取地理信息的方式同時也發生了轉變,從使用FTP(文件傳輸協議)來傳輸地理信息方式,轉變為直接使用XML格式數據流的Web服務和一組API(SOAP/XML)。另一個重要變換是使用融入式技術。
融入式技術指整合網絡上多個資料來源或功能,以創造新服務的網絡應用程序。該詞源自于流行音樂將兩種不同風格的音樂混合,以產生新的趣味的作法。雖然在古老的HTML 2.0版本中早有這個概念(將圖片提供視為一種服務,一個網頁中的文字與圖片可以來自不同的網站,一個圖文并茂的網頁就是一種原始的混搭),一般還是將融入式技術視為Web 2.0的特性之一。Web技術的這種發展,為GIS的實施提供了一種新的模式。一個用戶可以從一個服務器獲得一層信息,再從另一個服務中獲取其他數據或專業模型,將它們融合在一起,進而產生基于 Web的新的GIS應用模式。這種新的模式,將極大地拓展GIS的應用范疇和服務領域。
在地理信息融入式方面有著許多應用。特別是因為Google等公司推出屬于自己的API,降低開發電子地圖的門檻,讓許多以Google地圖等電子地圖為顯示底圖的應用網站如雨后春筍般誕生。Programmableweb網站上列出了超過1400個地理信息融入式應用(http://www.programmableweb.com/tag/mapping)。最為成功的是24歲的AdrianHolovaty,他把芝加哥警察局的犯罪統計信息覆蓋在Google地圖上(www.chicagocrime.org)。這樣,人們在地圖上就可以精確查明30天的時段內,發生性侵犯犯罪的地點。在地圖上,每一個犯罪地點都用一個圖釘符號標出,芝加哥人能迅速獲知應該避開哪些危險的火車站、街區。社區活動家 JamesCappleman對Holovaty的網絡地圖印象深刻,因為這樣居民們就不會再輕信那些街區安全的說法了。而包括舊金山在內的其他一些城市希望Holovaty也能為它們開發犯罪定位網站。同樣,佛羅里達性犯罪網(MapSexOffender.com)把Google地圖和被宣判的性犯罪者的資料結合起來。訪問者可以調閱所在社區地圖,點擊圖標查看每一個犯罪者的姓名、最新地址和照片。而美國的駕車者如果要找最便宜的加油站,只需點擊結合了Google地圖和汽油伙伴網站(Gas-buddy.com)加油站價格的數據庫的鏈接就可以了。同樣的,購房者可以利用Google的地圖,精確查明適合的房源地點。以搜索房源的Housingmaps.com網站為例,Google地圖剛發布,電腦動畫工程師PaulRademacher隨即開發了 Hous-ingmaps.com。他將Google地圖和全美所有在Craigslist上公布的公寓名單對接。此外還有提供飛機航班即時信息的fboweb.com,結合天氣信息的Weather Underground等等。
基于REST風格Web服務的WebGIS系統架構
基于REST風格Web服務的Web GIS系統架構(如圖8-2)是在數字城市建設中普遍使用的系統架構,在該架構中GIS服務與其他中間層的功能(例如用戶管理、日志等)都部署在同一個應用中。只有這樣的架構才能很好地解決數據共享與互操作,并節省開發成本與縮短開發周期。

GIS服務與其他功能合并部署的系統架構
但是為了更大程度地方便地理信息數據及GIS功能的共享,以及方便二次開發,通常將GIS服務單獨部署,這時的系統架構如圖

GIS服務單獨部署的系統架構
在上述系統架構中,可以利用現有的GIS服務,例如Google、Microsoft、百度、高德的地圖服務,也可以利用ArcGIS Server等地理信息服務軟件,將地理信息發布為服務,在系統客戶端利用Javascript調用這些服務,從而在系統中集成地圖及GIS功能。
圖文摘錄于《走向大數據——從數字北京到智慧北京》一書
如需本書,請在微信平臺留言聯系我們