李新慶 陳海波 樊寬



摘要:針對寧夏氣象觀測站建設(shè)管理不足的問題,本文研究基于LAMP技術(shù)構(gòu)建寧夏氣象站網(wǎng)信息管理系統(tǒng)。系統(tǒng)面向氣象行業(yè)用戶使用,采用B/S框架,集成Web GIS、PostgreSQL/PostGIS技術(shù),實現(xiàn)氣象觀測站的顯示、統(tǒng)計、審批和管理。應(yīng)用結(jié)果表明該系統(tǒng)能夠提升自動站管理的自動化和信息化水平。
關(guān)鍵詞:自動氣象站;氣象業(yè)務(wù);LAMP;Web GIS
中國分類號:TP391 文獻標識碼:A
Abstract: Aiming at the deficiency of management Ningxia automatic weather station, this paper studies the construction of Ningxia Meteorological Station Management Information System based on LAMP technology. Mainly provided for the meteorological business users, the system applies B/S framework and integrated uses Web GIS, PostgreSQL, PostGIS techniques, etc, which comprehensively realizes the AWS distribution display, statistics, approval and management. The application results show that the system can improve automation and informationization level of AWS management .
Key words: automatic weather station; meteorological service; LAMP; Web GIS
0 引言
寧夏全區(qū)已經(jīng)建成各類氣象觀測站(AWS,Automatic Weather Station)共計893個,站網(wǎng)平均密度達7公里以內(nèi),實現(xiàn)鄉(xiāng)鎮(zhèn)全覆蓋,行政村覆蓋率25.6%。已建成并投入業(yè)務(wù)運行的區(qū)域自動氣象站在氣象服務(wù)工作中發(fā)揮了一定作用,為地方防災(zāi)減災(zāi)提供實時、準確、科學、高效的決策依據(jù),進一步提高了災(zāi)害性天氣的監(jiān)測預(yù)警能力和服務(wù)水平[1]。
然而,隨著經(jīng)濟社會的快速發(fā)展,各行各業(yè)和社會公眾對氣象探測數(shù)據(jù)的需求越來越高。全區(qū)氣象部門和其它行業(yè)、單位委托或自主建設(shè)的各類氣象探測站點、設(shè)施的種類和數(shù)量逐年增加。但是氣象探測站點和設(shè)施的布設(shè)缺乏統(tǒng)一規(guī)劃,氣象探測行為缺乏監(jiān)管,氣象資料的使用、發(fā)布較為混亂,造成了資源的浪費,給氣象信息安全帶來了隱患[2-3]。
因此,為了切實規(guī)范全區(qū)氣象探測設(shè)施建設(shè),提高觀測站管理效率,迫切需要采用Web技術(shù)、Web GIS技術(shù)和數(shù)據(jù)庫技術(shù)等建立寧夏氣象觀測站網(wǎng)信息管理系統(tǒng),規(guī)范寧夏氣象觀測站的管理和審批流程,為授權(quán)用戶提供查詢、檢索、統(tǒng)計、臺站環(huán)境顯示和GIS地圖展示等功能。該系統(tǒng)能夠提高業(yè)務(wù)部門對觀測站站管理的規(guī)范性,對于寧夏氣象管理信息化具有一定的促進作用[4]。
1 需求分析
目前,寧夏氣象部門對氣象觀測站點信息的管理,還停留在傳統(tǒng)的、人工的、零散數(shù)據(jù)的層面上,還沒有實現(xiàn)氣象觀測站點的自動化、信息化和規(guī)范化的信息管理,一些統(tǒng)計工作需要靠手工來進行統(tǒng)計,統(tǒng)計結(jié)果不夠快速準確,影響了氣象決策需求。另外,氣象預(yù)報、公共服務(wù)等業(yè)務(wù)工作人員對站點信息缺乏直觀了解,影響了站點觀測數(shù)據(jù)的應(yīng)用和服務(wù)。為此,需要構(gòu)建一個服務(wù)于區(qū)、市、縣三級氣象部門業(yè)務(wù)銜接的觀測站網(wǎng)信息管理系統(tǒng),實現(xiàn)區(qū)域自動站審批、查詢、統(tǒng)計的服務(wù)功能,并且系統(tǒng)應(yīng)當具備以下特征:
1)標準規(guī)范、方便擴充
對所管理的氣象信息在管理方式、格式及質(zhì)量等方面制定標準規(guī)范并在項目建設(shè)過程中認真遵循,使本系統(tǒng)能夠隨著業(yè)務(wù)、和政策法規(guī)的變化方便地擴展和升級,保證系統(tǒng)的可持續(xù)發(fā)展。
(1) 注重部門間業(yè)務(wù)系統(tǒng)兼容
觀測站網(wǎng)審批涉及到多個職能部門之間的合作[5],因此,在設(shè)計時必須考慮各部門的業(yè)務(wù)系統(tǒng)兼容性和互操作,根據(jù)實際需求確定系統(tǒng)各項功能,以滿足實際需求為最終目的。
2)系統(tǒng)穩(wěn)定、安全可靠
系統(tǒng)要做到性能穩(wěn)定、安全可靠,并保證氣象觀測站基礎(chǔ)數(shù)據(jù)的安全性。系統(tǒng)應(yīng)滿足區(qū)、市、縣三級用戶在線訪問和審批工作,并做到24小時不間斷業(yè)務(wù)運行要求。
2 系統(tǒng)設(shè)計
2.1 系統(tǒng)總體框架
按照氣象部門氣象探測設(shè)施建設(shè)的管理和審批流程,依托寧夏氣象信息基礎(chǔ)設(shè)施虛擬化平臺建設(shè),按照分層設(shè)計、集中部署原則,并遵循氣象探測設(shè)施安全管理規(guī)范和氣象設(shè)施運維保障體系,構(gòu)建寧夏氣象觀測站信息網(wǎng)管理系統(tǒng)。系統(tǒng)的架構(gòu)圖如1所示。
系統(tǒng)架構(gòu)采用成熟的三層體系架構(gòu)[6]:表示層(Browser)、服務(wù)層(Web Service)和數(shù)據(jù)層(Data Service)。表示層屏蔽技術(shù)細節(jié)、應(yīng)用軟件的差異性,面向用戶提供基于Web和Web GIS的氣象觀測站點信息的展示、查詢服務(wù)。服務(wù)層針對用戶的具體操作,采用AJAX的異步交互模式,為表示層返回用戶所需的JSON封裝數(shù)據(jù),從而減輕服務(wù)端負擔,提高系統(tǒng)工作效率。數(shù)據(jù)層包括GIS空間地理數(shù)據(jù)庫和氣象觀測站網(wǎng)管理數(shù)據(jù)庫,為系統(tǒng)提供區(qū)域自動氣象站站點基礎(chǔ)數(shù)據(jù)、觀測站網(wǎng)審批管理數(shù)據(jù)。
2.2 功能設(shè)計
本系統(tǒng)主要解決寧夏氣象部門各級業(yè)務(wù)用戶對氣象,全區(qū)氣象觀測站的查詢、統(tǒng)計、Web GIS展示的應(yīng)用實現(xiàn)[7],并提供觀測站的網(wǎng)上申請、審核、批準功能。系統(tǒng)以氣象探測設(shè)施構(gòu)建中依循的各類法律法規(guī)為依據(jù),并結(jié)合寧夏氣象部門自動站審批工作中的實際情況對內(nèi)部業(yè)務(wù),系統(tǒng)功能做出適當?shù)恼{(diào)整。
基于區(qū)級站網(wǎng)信息數(shù)據(jù)庫,獲取本縣范圍內(nèi)所有站網(wǎng)類型的標志信息,并以GIS圖形化與表格化相結(jié)合的方式向用戶進行可視化展示。在此,給出系統(tǒng)功能設(shè)計概述如下。
1)站點的審批管理。實現(xiàn)區(qū)域自動觀測站站點信息、自動站設(shè)備信息、設(shè)備廠家信息等審批過程的自動化管理,提供所有業(yè)務(wù)流程的數(shù)據(jù)錄入、處理功能。同時,更進一步用戶對申報站點處理過程和申報結(jié)果的查詢和追蹤,并可查看申請辦理每個環(huán)節(jié)的具體情況。
2)站點查詢。通過站號、站名、所屬地市、縣區(qū)、觀測站類型等條件進行查詢,并以表格和Web GIS的方式為用戶實現(xiàn)有效展示。
3)站點統(tǒng)計。通過觀測站設(shè)備類型、觀測要素、所屬地市等條件進行統(tǒng)計,并以表格和圖形的方式為用戶提供有效展示。
4)系統(tǒng)管理。主要包括對用戶的登錄權(quán)限、審批權(quán)限進行修改、刪除和增加。并設(shè)計建立用戶登錄日志,另外,根據(jù)業(yè)務(wù)需求,可做審批流程的動態(tài)調(diào)整。
3 系統(tǒng)實現(xiàn)
3.1 氣象觀測站基礎(chǔ)數(shù)據(jù)庫設(shè)計
系統(tǒng)包含審批管理流程,且涉及多個部門的聯(lián)合審批,審批過程中隨時需要查詢各自部門原有的數(shù)據(jù)[8],因此,系統(tǒng)基礎(chǔ)數(shù)據(jù)庫表結(jié)構(gòu)與區(qū)級原有的站網(wǎng)信息數(shù)據(jù)庫保持一致,為系統(tǒng)提供了自動氣象觀測站基礎(chǔ)數(shù)據(jù)支持。
以觀測站點設(shè)施表為例,需要存儲建設(shè)單位、上級主管部門、建設(shè)地址、站點類型、站點用途、項目來源、經(jīng)緯度、海拔高度、探測要素、設(shè)備型號、生產(chǎn)廠家、氣象裝備許可證號、站點8個方位照片等信息,其數(shù)據(jù)庫表結(jié)構(gòu)如表1所示。
3.2 地理信息數(shù)據(jù)庫
系統(tǒng)采用PostGIS存儲寧夏空間地理信息,PostGIS在對象關(guān)系型數(shù)據(jù)庫PostgreSQL上增加了存儲管理空間數(shù)據(jù)的能力[9],該數(shù)據(jù)庫能夠?qū)⒖臻g地理信息存儲為WKT(Well Known Text、熟知文本)格式,并對圖片和多媒體等以BLOB方式存儲[10]。另外,PostGIS支持使用C++、.NET、PHP、Python以及其他各類開源數(shù)據(jù)引擎的調(diào)用,方便數(shù)據(jù)管理和系統(tǒng)調(diào)用。
系統(tǒng)中所使用的GIS數(shù)據(jù)主要包括寧夏全區(qū)、地市、縣區(qū)、鄉(xiāng)鎮(zhèn)、行政村的點、多邊形等矢量數(shù)據(jù),數(shù)據(jù)描述統(tǒng)一設(shè)定為Shapefile文件格式,本文使用PostGIS自帶的shapefile Loader工具將各類數(shù)據(jù)導(dǎo)入寧夏氣象空間地理數(shù)據(jù)庫[10],并使用pgAdmin圖形化的工具來對數(shù)據(jù)進行管理。另外,還可以使用uDig直接連接該數(shù)據(jù)庫,對GIS數(shù)據(jù)進行修改。
3.3 MapGIS地圖服務(wù)器
MapGIS IGServer基于MapGIS微內(nèi)核為基礎(chǔ),是新一代的互聯(lián)網(wǎng)地理信息服務(wù)平臺[11],采用面向服務(wù)的分布式多層體系架構(gòu),提供跨平臺的開放式的Web GIS服務(wù)體系和二次開發(fā)框架,具有GIS服務(wù)發(fā)布共享與行業(yè)應(yīng)用的功能。因此,系統(tǒng)采用MapGIS作為地圖服務(wù)器,為系統(tǒng)提供Web GIS地圖服務(wù)。
MapGIS IGServer采用面向服務(wù)的體系架構(gòu),構(gòu)建整套Web GIS服務(wù)體系(IG Server服務(wù)層),提供SOAP、REST服務(wù)訪問方式,基于OGC標準的MapGISOGCWebService服務(wù),遵循WMS、WFS、WCS服務(wù)規(guī)范,支持XML、GML和GeoRSS JSON數(shù)據(jù)格式。
基于IG Server的Web服務(wù)體系,融合主流的RIA(Rich Internet Applications,豐富互聯(lián)網(wǎng)程序)技術(shù),Web GIS功能模塊采用基于IGServer API for JavaScript二次開發(fā)庫架構(gòu)設(shè)計實現(xiàn),通過對OpenLayers框架進行了封裝和優(yōu)化,使系統(tǒng)具有良好的兼容性和擴展性。IG Server主要分為3個部分,即數(shù)據(jù)層、GIS服務(wù)和客戶端。其中,對應(yīng)于MapGIS IGServer平臺的體系架構(gòu),GIS服務(wù)層可分為IGServer基礎(chǔ)內(nèi)核服務(wù)與IGServer Web服務(wù),該結(jié)構(gòu)將數(shù)據(jù)的存儲管理、GIS服務(wù)與應(yīng)用分開,可方便地實現(xiàn)數(shù)據(jù)庫系統(tǒng)對各類數(shù)據(jù)的管理、應(yīng)用和發(fā)布,從而保證了數(shù)據(jù)的安全性,并能及時響應(yīng)用戶的服務(wù)請求。
3.4 站點申請及審批流程
根據(jù)氣象行業(yè)探測設(shè)施建設(shè)規(guī)范流程,系統(tǒng)采用縣、市、區(qū)局三級部門審批和管理。當申請和審批一個流程時,系統(tǒng)需要通過表單接收各級用戶填寫的自動氣象站信息和上級審批意見[12]。
承建單位上報觀測站點的建設(shè)申請,按照縣、市、區(qū)三級業(yè)務(wù)主管部門進行審核,最終由區(qū)級批準,并使各用戶能夠查看審批流程節(jié)點信息[13]。觀測站點申請錄入界面如圖所示。
3.5 系統(tǒng)框架實現(xiàn)
系統(tǒng)框架采用jQuery EasyUI設(shè)計實現(xiàn),該框架為用戶封裝了AJAX(Asynchronous Javascript And XML,異步JavaScript和XML)異步請求,將業(yè)務(wù)邏輯和用戶界面設(shè)計劃分開來,較好地解決如事務(wù)處理、Web安全、數(shù)據(jù)流控制等問題[14],同時因其具有開發(fā)簡單、開源免費、容易擴展等特點,非常適合中小型項目的快速開發(fā)。
AJAX使用異步客戶端/服務(wù)器通信模型,連接后端應(yīng)用服務(wù)器,接收服務(wù)器處理后的結(jié)果,并返回JSON格式數(shù)據(jù),進行屬性數(shù)據(jù)和地圖數(shù)據(jù)的顯示和疊加,最終以GIS圖形化與表格化相結(jié)合的方式為用戶生成視圖展示。設(shè)計實現(xiàn)的關(guān)鍵代碼如下所示。
3.6 Web GIS模塊
Web GIS顯示模塊采用IGServer API for JavaScript客戶端呈現(xiàn), Web GIS服務(wù)器采用MapGIS地圖服務(wù)器,為用戶提供基于Web GIS的全區(qū)氣象觀測站網(wǎng)分布功能。
IGServer API for JavaScript客戶端是對OpenLayers進行了封裝和優(yōu)化,OpenLayers是一個功能強大的開源WebGIS的客戶端JavaScript框架,能夠?qū)崿F(xiàn)在瀏覽器中瀏覽、漫游與縮放地圖等基本功能[15]。Web GIS系統(tǒng)界面如圖3所示。
3.7 統(tǒng)計展示模塊
為滿足氣象業(yè)務(wù)人員對氣象觀測站的統(tǒng)計需求,系統(tǒng)采用HighCharts實現(xiàn)觀測站的統(tǒng)計繪圖功能,HighCharts是一個運用Javascript腳本編寫構(gòu)建的繪圖庫,可以制作折線圖、柱狀圖、餅圖等多種圖表類型,具有界
面美觀、兼容性強、不受開發(fā)語言約束等特點[16],而且能為用戶提供較好的可視化效果,系統(tǒng)統(tǒng)計展示模塊如圖4所示。
4 結(jié)束語
本文結(jié)合寧夏氣象行業(yè)特點,提出采用LAMP架構(gòu)實現(xiàn)氣象觀測站網(wǎng)信息管理系統(tǒng),并對系統(tǒng)實現(xiàn)中所涉及的關(guān)鍵技術(shù)進行了闡述。目前,該系統(tǒng)已經(jīng)在寧夏氣象部門投入業(yè)務(wù)試運行,面向?qū)幭膮^(qū)、市、縣三級業(yè)務(wù)人員提供可視化的自動氣象站查詢、統(tǒng)計服務(wù)。系統(tǒng)運行穩(wěn)定、功能完整、界面友好、操作簡便,能夠滿足氣象行業(yè)用戶對觀測站網(wǎng)的管理需求。
參考文獻
[1] 徐世廷. WebGIS在氣象預(yù)測中的應(yīng)用研究[D]. 長春:吉林大學, 2010.
[2] 郎東梅. 氣象裝備供應(yīng)信息管理系統(tǒng)的研究[D]. 北京:北京郵電大學, 2011.
[3] 向晉良, 王洪愷. 氣象裝備信息管理系統(tǒng)的設(shè)計及應(yīng)用[J]. 氣象與環(huán)境科學, 2007, 30(z1):195-196.
[4] 楊濤, 王磊, 張常亮. 氣象裝備保障信息管理系統(tǒng)的設(shè)計與實現(xiàn)[J]. 成都信息工程學院學報, 2014, 29(6):635-643.
[5] 潘剛. 網(wǎng)上行政審批系統(tǒng)的設(shè)計與實現(xiàn)[J]. 云南民族大學學報(自然科學版), 2013, 22(2):150-152.
[6] 董迎璽. 基于SOA架構(gòu)的省級氣象業(yè)務(wù)集成平臺設(shè)計與實現(xiàn)[D]. 成都:電子科技大學, 2008.
[7] 萬文慧, 陳維華, 劉敏. WebGIS在氣象業(yè)務(wù)系統(tǒng)建設(shè)中的應(yīng)用研究[J]. 計算機與現(xiàn)代化, 2013(1):110-111.
[8] 黃建瓊. 網(wǎng)上行政審批系統(tǒng)的設(shè)計與研究[J]. 安陽工學院學報, 2013,12(6):50-52,114.
[9] 劉小飛, 胡珂, 關(guān)昆. 基于PostGIS的異構(gòu)地理空間數(shù)據(jù)組織與應(yīng)用開發(fā)[J]. 測繪與空間地理信息, 2014,37(9):63-65,68.
[10] 鐘遠軍, 李照, 林澍哲,等. 基于PostGIS的地名數(shù)據(jù)庫設(shè)計與應(yīng)用研究[J]. 測繪與空間地理信息, 2011, 34(3):100-103,107.
[11] 王峰, 侯平. 基于MapGIS下空間數(shù)據(jù)處理的應(yīng)用研究[J]. 測繪與空間地理信息, 2012, 35(5):134-137.
[12] 馬翔. 基于.NET的工作流程審批系統(tǒng)設(shè)計與實現(xiàn)[J]. 計算機工程與設(shè)計, 2012, 33(11):4187-4190,4254.
[13] 張建忠, 盧華君. 基于MOSS 2007的項目審批管理系統(tǒng)的設(shè)計與開發(fā)[J]. 南開大學學報(自然科學版), 2011,44(3):56-61.
[14] 李志鵬, 胡佳軍, 張瑋,等. 基于RIA的WebGIS自動氣象站數(shù)據(jù)服務(wù)系統(tǒng)[J]. 江西師范大學學報(自然科學版), 2013, 37(1):60-64.
[15] 李光師. 基于OpenLayers和AJAX的WebGIS客戶端開發(fā)[J]. 鞍山師范學院學報, 2010, 12(4):49-51.
[16] 劉超慧, 張森, 聶榮. 基于RFID和開源框架的資產(chǎn)管理系統(tǒng)設(shè)計與實現(xiàn)[J]. 實驗室研究與探索, 2015,34(5):252-255,270.