淺談基于公有云平臺ArcgisOnline的WebGIS實(shí)現(xiàn)論文
引言
傳統(tǒng)網(wǎng)絡(luò)地理信息系統(tǒng)架構(gòu)主要基于某一地理信息服務(wù)提供商的軟件平臺構(gòu)建,因此在數(shù)據(jù)存儲結(jié)構(gòu)、數(shù)據(jù)庫訪問方式以及服務(wù)的調(diào)用方式等方面都與特定的底層技術(shù)架構(gòu)藕合在一起,降低了系統(tǒng)的互操作性,各個系統(tǒng)之間封閉性強(qiáng),因此難以共享和擴(kuò)展.為了探索輕量級低成本可擴(kuò)展的網(wǎng)絡(luò)地理信息系統(tǒng)的開發(fā)方案,探討基于公有云GIS ( Geographic Information SystemGIS)平臺ArcgisOnline以及REST ( Representa-tional StateTransfer)服務(wù)搭建輕量級的WebGIS應(yīng)用的技術(shù)路線和可行性.
1傳統(tǒng)系統(tǒng)架構(gòu)與云平臺架構(gòu)對比
現(xiàn)在國內(nèi)主要的地理信息服務(wù)器軟件有超圖公司的SuperMapiServer 7C,通過SDX+空間數(shù)據(jù)庫引擎支持發(fā)布OGC的WMS, WFS,WMTS, WCS, WPS, CSW, I}ML等服務(wù)和ESRI公司的Arcgis forServer,提供多種遵循REST,SOAP及OGC標(biāo)準(zhǔn)的Web服務(wù),包括二三維地圖服務(wù)、影像服務(wù)、要素服務(wù)、地理處理服務(wù)等多種服務(wù)類型.
云平臺包括超圖公司的SuperMapiPortal 7 C以及ESRI公司的ArcgisOnline公有云平臺以及Portalfor Arcgi、私有云平臺.
1. 1傳統(tǒng)地理信息系統(tǒng)架構(gòu)優(yōu)缺點(diǎn)
地理信息系統(tǒng)由于其處理數(shù)據(jù)主要面向矢量數(shù)據(jù),柵格數(shù)據(jù),無論在網(wǎng)絡(luò)傳輸負(fù)載,數(shù)據(jù)庫查詢方式以及前端數(shù)據(jù)渲染方面都與一般的互聯(lián)網(wǎng)應(yīng)用程序有所區(qū)別因此整個系統(tǒng)的服務(wù)器端架構(gòu)主要包括應(yīng)用程序服務(wù)器,關(guān)系數(shù)據(jù)庫服務(wù)器,地理數(shù)據(jù)庫服務(wù)器,地理服務(wù)引擎.
(1)傳統(tǒng)的分布式GIS應(yīng)用的地理信息數(shù)據(jù)分布在不同組織的不同地理數(shù)據(jù)引擎架構(gòu)基礎(chǔ)上具有不同的數(shù)據(jù)存儲結(jié)構(gòu)和訪問方式.通常需要利用不同數(shù)據(jù)服務(wù)層技術(shù)如SuperMap公司的SDX + ( Spatial Database Extension Plus)以及ES-RI公司的SDE ( Spatial Database Engine)訪問地理數(shù)據(jù)庫,擴(kuò)展的關(guān)系型數(shù)據(jù)庫上的矢量數(shù)據(jù)、柵格數(shù)據(jù)以及業(yè)務(wù)數(shù)據(jù),這導(dǎo)致了數(shù)據(jù)具有明顯的異構(gòu)性,使得數(shù)據(jù)和應(yīng)用的互操作性降低.
(2)數(shù)據(jù)的存儲格式主要依賴于平臺設(shè)計(jì)時采用的地理信息服務(wù)提供商的地理數(shù)據(jù)庫結(jié)構(gòu)如常見的ShapeFile, KML, DXF, DWG, TIF等矢量柵格數(shù)據(jù)結(jié)構(gòu).由于各地理信息廠商提供采用的底層技術(shù)差異使得各平臺下的數(shù)據(jù)結(jié)構(gòu)都不一致,在開發(fā)過程中要花費(fèi)大量的精力用于數(shù)據(jù)格式的轉(zhuǎn)換,通過中間數(shù)據(jù)格式實(shí)現(xiàn)數(shù)據(jù)的傳遞,這種數(shù)據(jù)格式間的轉(zhuǎn)換在增加系統(tǒng)開發(fā)難度的同時也降低了系統(tǒng)的運(yùn)行性能.
(3) GIS應(yīng)用隨著系統(tǒng)運(yùn)行時間的增長以及特殊業(yè)務(wù)的需求使得要處理的地理數(shù)據(jù)量將會達(dá)到GB甚至TB級別,無論是在數(shù)據(jù)存儲空間還是運(yùn)算能力上都對硬件資源有很高的要求,但是這種大數(shù)據(jù)的處理并非在系統(tǒng)運(yùn)行期間始終存在因此在硬件資源配置上很難找到一個平衡點(diǎn),而這種對數(shù)據(jù)存儲能力和計(jì)算性能的動態(tài)調(diào)整需求也是限制GIS發(fā)展的重要原因.
傳統(tǒng)地理信息系統(tǒng)架構(gòu)的優(yōu)勢在于GIS服務(wù)器的本地部署使得數(shù)據(jù)的安全性以及資源的調(diào)度具有高度的可控性.因而提供對數(shù)據(jù)、安全性和服務(wù)質(zhì)量的最有效控制.公司或組織擁有基礎(chǔ)設(shè)施,并可以控制在此基礎(chǔ)設(shè)施上部署應(yīng)用程序的方式和外部的訪問權(quán)限.
1.2基于公有云平臺地理信息系統(tǒng)架構(gòu)優(yōu)缺點(diǎn)
公有云服務(wù)平臺AregisOnline不同于傳統(tǒng)的WebGIS的本地化部署策略以及面向數(shù)據(jù)的系統(tǒng)開發(fā)架構(gòu),平臺基于亞馬遜的AWS和微軟的WindowsAzure搭建而成,充分利用了云技術(shù)的資源池化和資源的動態(tài)配置特性.公有云是目前通用的云計(jì)算利用方式.在這種模型下用戶使用的資源和服務(wù)都是云計(jì)算服務(wù)提供商以云服務(wù)的方式提供,用戶無需管理和維護(hù)直接使用.也就說AregisOnline。將傳統(tǒng)架構(gòu)模式中的數(shù)據(jù)庫引擎統(tǒng)一為服務(wù)通過提供WebService將信息資源包裝成統(tǒng)一的REST接口形式,在空間數(shù)據(jù)訪問、傳輸和存儲的過程中使用JSON等數(shù)據(jù)格式作為的標(biāo)準(zhǔn)格式,用面向服務(wù)的思想代替面向數(shù)據(jù)的思想屏蔽了數(shù)據(jù)多源異構(gòu)的特點(diǎn)實(shí)現(xiàn)了異構(gòu)資源的集成,使開發(fā)的應(yīng)用具有高度的互操作性[}z}.按需自服務(wù),利用云計(jì)算算法自動地按實(shí)際需求分配計(jì)算資源和服務(wù)以及硬件資源,通過標(biāo)準(zhǔn)的網(wǎng)絡(luò)接入和數(shù)據(jù)訪問協(xié)議可以同時對不同類型的網(wǎng)絡(luò)終端提供支持.資源池化,具備動態(tài)的資源配置以及釋放計(jì)算資源的能力;同時平臺的使用安裝按需付費(fèi).節(jié)約系統(tǒng)建設(shè)開支,縮短了GIS應(yīng)用系統(tǒng)開發(fā)部署周期.
公有云平臺的劣勢在于所有的數(shù)據(jù)和服務(wù)都托管在云服務(wù)提供商的服務(wù)器上,企業(yè)或組織對資源的控制性降低.
2 ArcgisOnline云平臺分析
AregisOnlin。是基于公有云技術(shù)的地理信息平臺同時是ESRI(美國環(huán)境研究所)產(chǎn)品AreGIS系統(tǒng)的組成部分.通過這個云平臺無論是組織機(jī)構(gòu),專業(yè)GIS人員還是普通用戶都可以實(shí)現(xiàn)使用、創(chuàng)建和共享地圖、應(yīng)用程序和數(shù)據(jù),這種開放式的互操作模式充分利用了眾包的思想即每個人既是數(shù)據(jù)和服務(wù)的使用者同時也是提供者.此外由于具有了訪問平臺上既有的權(quán)威性底圖和AreGIS即用型應(yīng)用節(jié)省了自建基礎(chǔ)數(shù)據(jù)和投資硬件環(huán)境的成本.通過AreGIS Online的安全云可將采集的地理數(shù)據(jù)在云端以web圖層的方式進(jìn)行管理、創(chuàng)建和存儲.基于AreGIS的擴(kuò)展功能ArcGIS for Desktop,ArcGISfor Server ,ArcGIS WebAPI和AreGIS RuntimeSDK可以低成本的方式創(chuàng)建分享地理數(shù)據(jù)并輕松創(chuàng)建輕量級以及企業(yè)級地理信息系統(tǒng).
2. 1 ArcgisOnline Web地圖服務(wù)
使用AreGIS Online創(chuàng)建的ArcGIS Web地圖以詳細(xì)記錄的JavaScript對象標(biāo)記法(JSON)格式存儲,各種應(yīng)用程序和設(shè)備都可對這些地圖進(jìn)行訪問.每個地圖使用唯一的ID進(jìn)行存儲,可通過任何Web地圖客戶端對其進(jìn)行訪問.平臺上擁有多種高精度的底圖和專題地圖數(shù)據(jù).包括全球各種經(jīng)度的DEM ( Digital Elevation Model)、地圖和影像以及地質(zhì)圖等.
2.2 ArcgisOnline地理處理工具和服務(wù)
AregisOnline通過SOAP和REST協(xié)議提供了基于地理信息的分析服務(wù),這就使得用戶和開發(fā)人員通過URL的方式就可以獲得,包括緩沖區(qū)分析,流域分析,路線導(dǎo)航,打印地圖服務(wù),地名地址服務(wù)等.開發(fā)人員可以基于Aregis API開發(fā)WebGIS應(yīng)用以異步或者同步的方式訪問這些服務(wù)并獲得返回的數(shù)據(jù),由于AregisOnline,的面向服務(wù)的架構(gòu)模式是的調(diào)用這些服務(wù)的過程與加載Web地圖服務(wù)的體驗(yàn)是一致的`降低了開發(fā)的時間成本具有很高的易用性[3].地理處理工具在云端以服務(wù)的方式提供給用戶,改變了傳統(tǒng)GIS系統(tǒng)地理處理本地化執(zhí)行的局限性實(shí)現(xiàn)了真正的多用戶工作協(xié)同和內(nèi)容的共享.
2.3 ArcgisOnline應(yīng)用程序
AregisOnline提供了除自己開發(fā)Web應(yīng)用外的另一種利用平臺資源的可能性.訪問基于Mashup思想調(diào)用并組合遵循了開放地理框架協(xié)議的所有服務(wù)和資源以及ESRI提供的應(yīng)用模板引擎自定義一個可配置的Web應(yīng)用保存后并最終部署到AregisOnline云平臺上供具有訪問權(quán)限的用戶訪問.當(dāng)然下載模板后配置應(yīng)用并托管在自己的Web服務(wù)器上也是一種不錯的選擇.總之這種基于GIS云平臺的開發(fā)方式是的應(yīng)用具有很強(qiáng)的擴(kuò)展性和靈活性.
3基于ArcgisOnline的WebGIS開發(fā)
AregisOnline是一種面向服務(wù)的公有云架構(gòu),在平臺上創(chuàng)建,管理,共享的地圖,要素,分析工具,應(yīng)用都統(tǒng)一的以REST API的方式訪問.基于Html5和JavaScript API進(jìn)行WebGIS開發(fā)是一個很好的選擇.因?yàn)镴avaScript是世界上開發(fā)輕量級應(yīng)用最廣泛的客戶端語言己經(jīng)被各廠商瀏覽器很好的支持無需安裝額外的插件開發(fā)的程序即可運(yùn)行.
3. 1地圖控件創(chuàng)建及服務(wù)的調(diào)用
基于WebGIS API開發(fā)的應(yīng)用的核心組件就是地圖對象即下面代碼創(chuàng)建的map變量.地圖對象組件是整個WebGIS前端界面的核心.地圖是以圖層的方式組織底圖數(shù)據(jù)和專題數(shù)據(jù),而地圖對象Map就是負(fù)責(zé)渲染服務(wù)器傳輸?shù)角岸说牡貓D數(shù)據(jù)和地理處理工具生成的結(jié)果.才外地圖導(dǎo)航組件以及底圖庫都是依賴于Map對象實(shí)現(xiàn)其功能. 由于訪問的資源全部以REST接口封裝,在開發(fā)過程用對云端資源的調(diào)用具有了高度的一致性.無論是傳統(tǒng)的地圖、影像等地圖服務(wù)還是用于處理特定地理處理任務(wù)的工具開發(fā)人員都可以通過URL的方式從云端訪問.
3.2 WebGIS開發(fā)中HTML5 /CSS的新特性
由于HTML的語言特性對WebGIS開發(fā)的限制,使得相當(dāng)一段時間內(nèi),基于Flex和Silver-Light等富客戶端技術(shù)實(shí)現(xiàn)WebGIS是系統(tǒng)開發(fā)人員的首選,但是富客戶端技術(shù)都是基于瀏覽器插件實(shí)現(xiàn)客戶端交互這也對系統(tǒng)的適用性產(chǎn)生了限制.隨著HTML5技術(shù)的成熟開發(fā)人員現(xiàn)在可以基于HTML5和JavaSeript API實(shí)現(xiàn)WebGIS的二三維展示和交互.
(1)大部分對REST資源的訪問都是通過AJAX實(shí)現(xiàn)的,但是AJAX技術(shù)存在跨域資源訪問限制的問題,利用HTML5在基于AregisOnline的開發(fā)過程中,首先要解決的問題就是AJAX資源跨域訪問的問題.以往都是通過Proxy解決這個問題.現(xiàn)在AregisOnline利用HTML5的新特性只需要少量的配置以及代碼就可以解決這個問題.這樣做可以提升程序的性能.因?yàn)榭蛻舳酥苯釉L問跨域的資源而非以往需要服務(wù)器去請求特定的資源并將處理結(jié)果返回到客戶端. esri. eonfig. defaults. in. eorsEnabledServers(`servieebeta. esri. eom ' );/ /URL參數(shù)為要跨域訪問域名
(2)利用CSS3()實(shí)現(xiàn)地圖層級間過度
利用CSS3的過度效果而非簡單的地圖瓦片的增加刪除無論在視覺美感還是程序性能上都會獲得極佳的體驗(yàn),尤其當(dāng)程序通過移動客戶端訪問時可以調(diào)用瀏覽器的硬件加速功能.
(3)利用HTMLS Web存儲實(shí)現(xiàn)地圖客戶端緩存
優(yōu)化WebGIS使用體驗(yàn)的方式之一就是將不需要經(jīng)常變更的數(shù)據(jù)提前制作成地圖瓦片減少網(wǎng)絡(luò)傳輸壓力.以往的客戶端緩存主要通過Cookie實(shí)現(xiàn),但是由于Cookie要在Http請求中傳遞因此其對大數(shù)據(jù)的緩存支持的并不好.利用HTML5提供的Web存儲功能可以實(shí)現(xiàn)地圖的客戶端緩存.
3. 3基于OGC協(xié)議的互操作
系統(tǒng)對其他平臺的多源異構(gòu)地理信息數(shù)據(jù)的互操作對于系統(tǒng)的健壯性和擴(kuò)展性十分重要,利用MashUp以及面向服務(wù)編程思想可以充分利用互聯(lián)網(wǎng)資源開發(fā)應(yīng)用.Arcgis API for JavaScript己經(jīng)在底層提供了很好的支持.下面的代碼訪問了復(fù)合OGC的地圖服務(wù).
4結(jié)束語
ArcgisOnline是基于云計(jì)算的公有云GIS平臺,以面向服務(wù)的架構(gòu)提供各種地圖服務(wù),分析工具以及應(yīng)用.通過HTML5和Arcgis API forJavaScript開發(fā)的應(yīng)用程序可以通過多終端訪問這些云端的資源和服務(wù),相較于傳統(tǒng)的WebGIS架構(gòu)和部署方式,基于ArcgisOnline的WebGIS在硬件資源和開發(fā)成本上都有很大的優(yōu)勢,因?yàn)樵朴?jì)算的特性使得程序和數(shù)據(jù)所占用的資源是動態(tài)按需分配的,這樣在程序訪問的高峰期不會出現(xiàn)負(fù)載過高,同樣在低谷期也不會存在資源浪費(fèi).
通過對比分析可以發(fā)現(xiàn)在對數(shù)據(jù)本地化部署需求不大的情況下可以在系統(tǒng)架構(gòu)設(shè)計(jì)階段充分考慮對公有云GIS平臺的利用實(shí)現(xiàn)程序的互操作性和擴(kuò)展性.
【淺談基于公有云平臺ArcgisOnline的WebGIS實(shí)現(xiàn)論文】相關(guān)文章:
基于WebGIS的稅務(wù)征管系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)10-07
基于SuperMap IS Java技術(shù)楊凌WebGIS實(shí)現(xiàn)07-08
基于WebGIS的稅務(wù)征管系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)07-10
基于COM+的WebGIS系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)07-19
基于ArcIMS的校園WebGIS系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)07-11
基于多服務(wù)器的WebGIS的設(shè)計(jì)與實(shí)現(xiàn)08-08
基于.NET的教學(xué)平臺的設(shè)計(jì)與實(shí)現(xiàn)10-05
淺談基于SOA架構(gòu)的客運(yùn)調(diào)度系統(tǒng)的研究與實(shí)現(xiàn)論文10-15