華韻子 林紅
摘 要:以上海市氣象局分區(qū)預(yù)警系統(tǒng)為例,探討基于富互聯(lián)網(wǎng)應(yīng)用(RIA)的WebGIS在氣象業(yè)務(wù)系統(tǒng)中的應(yīng)用。通過對WebGIS的架構(gòu)模式在氣象行業(yè)中的典型應(yīng)用的分析,重點(diǎn)闡述了在分區(qū)預(yù)警系統(tǒng)中如何利用RIA技術(shù)以解決海量氣象數(shù)據(jù)實(shí)時(shí)顯示分析的問題,并提出了一種基于RIA的通用氣象WebGIS架構(gòu),研發(fā)基于RIA的上海市氣象局分區(qū)預(yù)警系統(tǒng);利用該架構(gòu)可實(shí)現(xiàn)大容量氣象數(shù)據(jù)在GIS上的顯示分析,交互性強(qiáng),更加適合氣象業(yè)務(wù)系統(tǒng)使用。
關(guān)鍵詞:WebGIS;RIA;預(yù)警信號
中圖分類號:TP399 文獻(xiàn)標(biāo)識碼:A
1 引言(Introduction)
GIS(地理信息系統(tǒng))近年來在氣象行業(yè)中得到越來越多的應(yīng)用,為氣象信息的展示、分析與發(fā)布發(fā)揮了極大的作用。其從桌面GIS軟件發(fā)展到如今的WebGIS[1,2] ,雖然經(jīng)過不斷的發(fā)展,仍不能完全滿足氣象業(yè)務(wù)對于高度互動性、豐富用戶體驗(yàn)以及復(fù)雜計(jì)算功能等方面的需求,因此基于RIA(Rich Internet Applications富互聯(lián)網(wǎng)應(yīng)用)的氣象GIS技術(shù)是當(dāng)前的發(fā)展方向。本文通過對WebGIS的架構(gòu)模式在氣象行業(yè)中的應(yīng)用及優(yōu)缺點(diǎn)的研究,探討了在分區(qū)預(yù)警系統(tǒng)中如何應(yīng)用RIA技術(shù);設(shè)計(jì)了基于RIA的通用氣象WebGIS架構(gòu),并研發(fā)基于RIA的上海市氣象局分區(qū)預(yù)警系統(tǒng)。
2 應(yīng)用現(xiàn)狀(Application status)
根據(jù)WebGIS的架構(gòu)種類以及數(shù)據(jù)傳輸形式,WebGIS在當(dāng)前氣象行業(yè)中的應(yīng)用主要存在三種模式:瘦客戶端模式、胖客戶端模式和混合模式。
瘦客戶端模式,也稱為服務(wù)器模式。該模式是以柵格數(shù)據(jù)作為數(shù)據(jù)返回對象,工作流程如圖1所示。使用該模式開發(fā)的系統(tǒng)如:中國氣象科學(xué)研究院研發(fā)的中尺度災(zāi)害天氣分析與預(yù)報(bào)系統(tǒng)(MWAFS)[3]。使用瘦客戶端模式的優(yōu)點(diǎn)是瀏覽便捷,利用服務(wù)器的性能可以完成大量的復(fù)雜分析,但其缺點(diǎn)是所有計(jì)算匯聚在服務(wù)器端,計(jì)算壓力過大。
第二種模式為胖客戶端模式,也稱為客戶端模式。該模式是以矢量格式的數(shù)據(jù)作為數(shù)據(jù)返回對象。其工作流程如圖2所示。其典型應(yīng)用是國家氣象中心開發(fā)的決策氣象服務(wù)系統(tǒng)(MESIS)[4]。胖客戶端模式可以利用客戶端完成多種氣象要素的檢索與分析,響應(yīng)速度較快、圖形繪制功能強(qiáng)大,但是其數(shù)據(jù)交換量比瘦客戶端大,且復(fù)雜計(jì)算均需在客戶端完成,對客戶機(jī)性能要求較高。
混合模式是指利用以上兩種模式的優(yōu)點(diǎn)進(jìn)行組合,取長補(bǔ)短的一種結(jié)構(gòu)模式。當(dāng)需要進(jìn)行復(fù)雜空間分析,例如繪制等值線圖時(shí)則采用瘦客戶端模式;而當(dāng)需要進(jìn)行統(tǒng)計(jì)分析生成圖表且對響應(yīng)時(shí)效要求較高時(shí)可采用胖客戶端模式。這種混合組織模式既能充分利用服務(wù)器強(qiáng)大的計(jì)算能力,又能避免客戶端資源浪費(fèi),其工作流程如圖3所示。
當(dāng)前混合模式的發(fā)展趨勢是利用RIA技術(shù)來實(shí)現(xiàn)。RIA是新一代的網(wǎng)絡(luò)應(yīng)用程序[5,6]?;谠摷夹g(shù)的WebGIS具有許多傳統(tǒng)WebGIS所不具備的特點(diǎn):(1)擁有豐富的數(shù)據(jù)模型,可以將部分原本需要在后臺程序處理的過程轉(zhuǎn)至客戶端處理,且查詢結(jié)果能夠被緩存在客戶端,從而提高系統(tǒng)響應(yīng)效率。(2)擁有與桌面軟件類似的豐富控件,更符合預(yù)報(bào)人員的使用習(xí)慣。這些特質(zhì)使其能夠滿足氣象GIS對于數(shù)據(jù)實(shí)時(shí)性、高度互動性及海量數(shù)據(jù)顯示分析的需求。
3 關(guān)鍵技術(shù)(Key technology)
3.1 RIA的實(shí)現(xiàn)技術(shù)
GoogleMap是最早提出使用RIA切片技術(shù)的WebGIS系統(tǒng)。其核心技術(shù)是將空間數(shù)據(jù)事先按照不同比例尺進(jìn)行切片,并生成柵格圖片存儲在服務(wù)器端;當(dāng)瀏覽器提交地圖顯示任務(wù)時(shí),系統(tǒng)直接從服務(wù)器端下載當(dāng)前比例尺下的切片圖片,并通過瀏覽器端的腳本完成圖片排列后顯示地圖[7]。利用GoogleMap提供的API可以實(shí)現(xiàn)一些簡單的地圖顯示功能。但是這種開發(fā)方式難以滿足大容量氣象數(shù)據(jù)分析需求,而且無法進(jìn)行自定義的分析操作。近幾年ESRI公司推出ArcGIS API for Flex和ArcGIS API for Sliverlight技術(shù)不僅提供了RIA的開發(fā)方式,并且能夠開發(fā)氣象空間數(shù)據(jù)的存儲、發(fā)布、查詢、分析甚至在線編輯功能,這使得基于RIA的氣象WebGIS可以個(gè)性化的進(jìn)行實(shí)時(shí)分析顯示,其功能更加強(qiáng)大,在氣象部門得到廣泛應(yīng)用[8-11]。
3.2 海量氣象數(shù)據(jù)實(shí)時(shí)顯示分析
在氣象WeGIS系統(tǒng)設(shè)計(jì)中,海量數(shù)據(jù)的實(shí)時(shí)顯示一直是個(gè)難題[12]。其中最主要的問題在于顯示這些氣象數(shù)據(jù)效率太低,導(dǎo)致用戶等待時(shí)間過長。將RIA技術(shù)應(yīng)用于氣象WebGIS的系統(tǒng)設(shè)計(jì)之后,可以充分利用RIA的優(yōu)勢來解決這個(gè)問題。首先將所有的氣象數(shù)據(jù)劃分為靜態(tài)圖層和動態(tài)圖層兩個(gè)部分。通常情況下,在氣象業(yè)務(wù)應(yīng)用系統(tǒng)中有很大一部分?jǐn)?shù)據(jù)都是可以作為靜態(tài)圖層存在。這類氣象數(shù)據(jù)通常數(shù)據(jù)量大且生成產(chǎn)品后一般不會再需要進(jìn)行二次統(tǒng)計(jì)計(jì)算,例如雷達(dá)組合反射率產(chǎn)品、數(shù)值預(yù)報(bào)6小時(shí)累積雨量產(chǎn)品等,而類似自動站這類經(jīng)常需要統(tǒng)計(jì)計(jì)算的數(shù)據(jù)則可作為動態(tài)圖層。將數(shù)據(jù)分類后,可以將靜態(tài)圖層利用切片技術(shù)在服務(wù)器端定時(shí)按比例尺生成切片;而動態(tài)圖層部分可以直接根據(jù)當(dāng)前地圖范圍請求相應(yīng)的矢量數(shù)據(jù)傳輸?shù)娇蛻舳?,由瀏覽器端進(jìn)行繪制。靜態(tài)圖層和動態(tài)圖層在瀏覽器端利用RIA技術(shù)進(jìn)行疊加,靜態(tài)圖層的顯示就是將相應(yīng)范圍內(nèi)的地圖切片顯示在Web頁面中,而動態(tài)圖層的矢量數(shù)據(jù)由于在瀏覽器端還可利用RIA進(jìn)行空間數(shù)據(jù)緩存,以避免重復(fù)從數(shù)據(jù)庫調(diào)用同一數(shù)據(jù),從而減少網(wǎng)絡(luò)負(fù)載。具體原理如圖4所示。
4 基于RIA的氣象GIS架構(gòu)設(shè)計(jì)(Architecture
design of meteorological WebGIS based on RIA)
基于RIA設(shè)計(jì)的氣象GIS架構(gòu)適用于各類對電子地圖有需求的氣象信息系統(tǒng),其具有一定的通用性。系統(tǒng)在邏輯上設(shè)計(jì)為三層架構(gòu),即前臺氣象空間信息應(yīng)用層、中間件地理信息及氣象業(yè)務(wù)分析服務(wù)層和后臺氣象數(shù)據(jù)層。架構(gòu)圖如圖5所示。
4.1 應(yīng)用層
前臺氣象空間信息應(yīng)用層通過Silverlight、Flash Player等RIA客戶端在瀏覽器上顯示、查詢和分析氣象信息。簡單的系統(tǒng)功能可以利用RIA技術(shù)直接在應(yīng)用層完成,如異步刷新、空間數(shù)據(jù)緩存,圖形渲染疊加顯示等;而復(fù)雜的應(yīng)用則通過中間件應(yīng)用服務(wù)器的Web組件服務(wù)來實(shí)現(xiàn)。由于客戶端采用RIA技術(shù),保證了用戶操作得到及時(shí)響應(yīng),確保類似桌面端的用戶體驗(yàn)。
4.2 服務(wù)層
中間件地理信息及氣象業(yè)務(wù)分析服務(wù)層是整個(gè)系統(tǒng)的核心,所有氣象地理信息系統(tǒng)功能在該層實(shí)現(xiàn)。該層可分為三大類服務(wù):基礎(chǔ)服務(wù)、核心服務(wù)和接口服務(wù)。基礎(chǔ)服務(wù)包括坐標(biāo)轉(zhuǎn)換模塊、影像信息發(fā)布模塊、氣象專題信息發(fā)布模塊等;核心服務(wù)包括由目錄服務(wù)、氣象空間數(shù)據(jù)服務(wù)、電子地圖服務(wù)等模塊組成的數(shù)據(jù)服務(wù)和由查詢?yōu)g覽服務(wù)、空間分析服務(wù)組成的功能服務(wù);接口服務(wù)則由應(yīng)用級接口和平臺及接口組成。
4.3 數(shù)據(jù)層
數(shù)據(jù)層可分為數(shù)據(jù)存儲管理和數(shù)據(jù)處理工具兩部分,主要完成基礎(chǔ)地理空間數(shù)據(jù)和氣象專題數(shù)據(jù)的存儲和管理。各種氣象信息以數(shù)據(jù)庫的形式或文件形式存儲在服務(wù)器上。數(shù)據(jù)存儲管理提供數(shù)據(jù)備份、數(shù)據(jù)存檔、數(shù)據(jù)服務(wù)、數(shù)據(jù)安全等機(jī)制。數(shù)據(jù)處理工具則包括氣象數(shù)據(jù)采集、數(shù)據(jù)轉(zhuǎn)換、靜態(tài)圖層切片、符號化等模塊。
4.4 架構(gòu)應(yīng)用
根據(jù)基于RIA的氣象GIS架構(gòu)設(shè)計(jì)研發(fā)了上海市氣象局分區(qū)預(yù)警系統(tǒng)。該系統(tǒng)使用Macromedia Flash/Flex作為RIA核心開發(fā)技術(shù);使用ArcGIS API for Flex 2.4作為WebGIS應(yīng)用開發(fā)框架。客戶端利用Flash Player實(shí)現(xiàn)氣象分區(qū)預(yù)警的分析、制作、查詢顯示等功能。系統(tǒng)采用功能模塊化開發(fā)方式,主要包括以下三大模塊,如圖6所示。
(1)實(shí)況和預(yù)報(bào)數(shù)據(jù)顯示模塊:實(shí)現(xiàn)自動站、雷達(dá)、閃電定位等實(shí)況數(shù)據(jù)及快速循環(huán)同化更新系統(tǒng)STI-WARR的數(shù)值預(yù)報(bào)格點(diǎn)數(shù)據(jù)在瀏覽器端利用RIA技術(shù)進(jìn)行疊加顯示分析。其中雷達(dá)及格點(diǎn)數(shù)據(jù)作為靜態(tài)數(shù)據(jù)預(yù)先在服務(wù)端進(jìn)行切片,生成柵格圖像;而自動站和閃電定位數(shù)據(jù)則作為動態(tài)圖層直接將矢量數(shù)據(jù)傳輸?shù)娇蛻舳耍蔀g覽器端進(jìn)行繪制。
(2)預(yù)警制作與發(fā)布模塊:利用RIA技術(shù)高互動性及數(shù)據(jù)易于緩存的優(yōu)勢,實(shí)現(xiàn)分區(qū)域的預(yù)警發(fā)布、更新、解除等功能。用戶可在地圖上繪制預(yù)警落區(qū),系統(tǒng)利用空間分析技術(shù)計(jì)算預(yù)警落區(qū)覆蓋的行政區(qū)并生成圖像及Word文檔。
(3)系統(tǒng)管理模塊:實(shí)現(xiàn)了系統(tǒng)中各類配置信息及權(quán)限的設(shè)置。系統(tǒng)可進(jìn)行發(fā)布單位管理、預(yù)報(bào)員管理、預(yù)報(bào)首席管理、值班臺長管理等,不同的用戶可設(shè)置不同的瀏覽及制作權(quán)限,且不同區(qū)縣的用戶預(yù)警制作范圍也有所不同。中心臺可制作全市的預(yù)警信號,而各個(gè)區(qū)縣只能制作本區(qū)縣的預(yù)警。
5 結(jié)論(Conclusion)
基于RIA技術(shù)的上海市氣象局分區(qū)預(yù)警系統(tǒng)具有以下幾方面的特點(diǎn):(1)解決了系統(tǒng)跨平臺的問題,可移植性增強(qiáng);(2)架構(gòu)簡單,可模塊化開發(fā),代碼重復(fù)利用率高;(3)利用該架構(gòu)可實(shí)現(xiàn)大容量氣象數(shù)據(jù)在GIS上的顯示分析,交互性強(qiáng),更加適合氣象業(yè)務(wù)系統(tǒng)使用。
參考文獻(xiàn)(References)
[1] 肖衛(wèi).GIS在電力行業(yè)中的應(yīng)用[J].軟件工程師,2001(6):38-40.
[2] 胡瑞鵬,王剛,祁勉.GIS在城市服務(wù)熱線領(lǐng)域的研究應(yīng)用[J].軟
件工程師,2013(10):50-52.
[3] 高梅,等.中尺度災(zāi)害天氣分析與預(yù)報(bào)系統(tǒng)綜合顯示平臺[J].
應(yīng)用氣象學(xué)報(bào),2011,22(5):621-630.
[4] 吳煥萍,等.GIS技術(shù)在決策氣象服務(wù)系統(tǒng)建設(shè)中的應(yīng)用[J].應(yīng)
用氣象學(xué)報(bào),2008,19(3):380-384.
[5] 王林.RIA技術(shù)概覽[J].程序員,2005,(2):64-66.
[6] 張臻.基于ArcGISServer與RIA技術(shù)的WebGIS研究與實(shí)現(xiàn)
[D].南京農(nóng)業(yè)大學(xué),2009.
[7] 張寶才.RIA技術(shù)在GeoWeb中的應(yīng)用研究[D].中國地質(zhì)大學(xué),
2009.
[8] 蘭紅平,等.深圳市氣象災(zāi)害分區(qū)預(yù)警系統(tǒng)研究[J].氣象科
技,2010,38(5):629-634.
[9] 李強(qiáng),等.基于GIS的小區(qū)域氣象災(zāi)害精細(xì)化預(yù)警系統(tǒng)[J].氣象
科技,2014,42(1):89-93.
[10] 黃亮,等.全球增暖背景下中國干濕氣候帶變化規(guī)律研究[J].
氣象科學(xué),2013,33(5):570-576.
[11] 甄計(jì)國,陳全功,韓濤.甘肅省各流域降水量的GIS模塊插值
估計(jì)與改進(jìn)[J].氣象科學(xué),2009,29(4):467-474.
[12] 崔楊,羅兵,胡爭光.基于地理信息服務(wù)的海量氣象信息網(wǎng)絡(luò)
發(fā)布[J].氣象科技,2013,41(3):476-479.
作者簡介:
華韻子(1981-),女,碩士,工程師.研究領(lǐng)域:氣象行業(yè)軟件
研發(fā).
林 紅(1966-),女,碩士,高級工程師.研究領(lǐng)域:氣象行業(yè)
軟件研發(fā).