魏爽 吳書成 楊明 張馳 劉熔熔
(浙江省氣象信息網(wǎng)絡(luò)中心 浙江省杭州市 310017)
氣象資料存儲檢索系統(tǒng)是氣象部門開展業(yè)務(wù)工作的基礎(chǔ)。目前,伴隨著氣象資料服務(wù)需求的不斷提升,國內(nèi)各級氣象部門都相繼建立了存儲與檢索系統(tǒng),提供實時更新的常規(guī)及特色氣象服務(wù)。國家氣象局[1]依托“短期氣候業(yè)務(wù)系統(tǒng)工程建設(shè)項目”,采用數(shù)據(jù)庫和文件系統(tǒng)相結(jié)合的方式,分別建立了實時數(shù)據(jù)庫和綜合數(shù)據(jù)庫以解決氣象資料的規(guī)范化存儲和實時業(yè)務(wù)使用需求。河南省氣候中心[2]根據(jù)本省實際業(yè)務(wù)需求,構(gòu)建了氣候業(yè)務(wù)數(shù)據(jù)庫系統(tǒng),保證了氣象資料的安全性和一致性。廣東省氣候中心[3]以優(yōu)化任意時段累年氣候數(shù)據(jù)統(tǒng)計檢索效率為切入點,提出了優(yōu)化的數(shù)據(jù)邏輯分解流程,應(yīng)用于廣東省農(nóng)業(yè)氣象業(yè)務(wù)系統(tǒng),優(yōu)化了用戶體驗。劉櫻等[4]基于Spring Boot 框架,建立了氣象風(fēng)參數(shù)的查詢服務(wù)平臺,為重大基建工程中的抗風(fēng)設(shè)計提供有效的數(shù)據(jù)服務(wù)。浙江省各級單位[5-7]都建立了滿足各級業(yè)務(wù)需求的資料存儲檢索系統(tǒng),但各數(shù)據(jù)庫分散存儲、表結(jié)構(gòu)類型不統(tǒng)一等問題約束了氣象業(yè)務(wù)、科研查詢與服務(wù)的發(fā)展。因此,本文以地面資料為基礎(chǔ),采用云存儲技術(shù),建立地面日、旬、月、年統(tǒng)計應(yīng)用數(shù)據(jù)庫,在此基礎(chǔ)上,構(gòu)建氣象地面實時與歷史資料查詢服務(wù)系統(tǒng),提供任意時段統(tǒng)計、實況快報、在線生成等值線圖等功能,為氣象業(yè)務(wù)應(yīng)用提供數(shù)據(jù)服務(wù)。
本文以支撐氣象數(shù)據(jù)查詢統(tǒng)計及預(yù)報、科研應(yīng)用需求為目標(biāo),歷史地面資料查詢服務(wù)系統(tǒng)采用四層設(shè)計框架,分別為數(shù)據(jù)層、業(yè)務(wù)層、服務(wù)層和表現(xiàn)層,如圖1 所示。
梳理省級歷史基礎(chǔ)數(shù)據(jù)資源,設(shè)計統(tǒng)一的數(shù)據(jù)存儲環(huán)境,根據(jù)業(yè)務(wù)需求存儲3 類數(shù)據(jù),包括國家站建站以來,經(jīng)過臺站級、省級質(zhì)控后的日、侯、旬、月、年統(tǒng)計數(shù)據(jù)及1971-2000年、1981-2010年30年整編數(shù)據(jù);區(qū)域站建站以來的小時原始觀測數(shù)據(jù);外省共享的國家站和區(qū)域站小時觀測數(shù)據(jù)。所有數(shù)據(jù)均經(jīng)過統(tǒng)一的存儲和管理,采用SQL Server 數(shù)據(jù)庫進(jìn)行存儲。
根據(jù)相應(yīng)業(yè)務(wù)需求對存儲數(shù)據(jù)進(jìn)行清洗和加工處理,形成滿足各類業(yè)務(wù)場景的成品數(shù)據(jù)。對省級氣象資料業(yè)務(wù)系統(tǒng)質(zhì)控結(jié)果同步至數(shù)據(jù)庫中,剔除地面降水、氣溫、氣壓、相對濕度、能見度等要素錯誤數(shù)據(jù),完成數(shù)據(jù)清洗。在此基礎(chǔ)上,完成區(qū)域站日、旬、月、年可靠數(shù)據(jù)的加工,根據(jù)標(biāo)準(zhǔn)統(tǒng)計算法規(guī)范進(jìn)行實時統(tǒng)計更新。提供任意時段各類統(tǒng)計值的查詢和服務(wù)、歷史同期對比和評估、年值變化情況、各類氣候值查詢等實現(xiàn)邏輯,發(fā)送數(shù)據(jù)查詢請求。

圖1:系統(tǒng)總體框架

表1:各要素統(tǒng)計精度表
該層提供包括氣象要素區(qū)域分布、空間插值、等值線圖、歷史統(tǒng)計等主要功能,可以為歷史地面資料查詢系統(tǒng)提供多種服務(wù)形式。并且,提供生成多種要素實況快報功能,及時提供氣象要素最新動態(tài)。
采用HTML +CSS + Javascript 技術(shù),提供常規(guī)統(tǒng)計、歷史同期統(tǒng)計、任意時段統(tǒng)計等功能,并實現(xiàn)定制服務(wù)系統(tǒng)、用戶管理等內(nèi)容。
另外,日志系統(tǒng)和監(jiān)控系統(tǒng)作為服務(wù)系統(tǒng)不可或缺的組成部分,同樣承擔(dān)了重要的角色。日志系統(tǒng)生成各環(huán)節(jié)日志記錄,并可以在線查看錯誤日志,當(dāng)發(fā)現(xiàn)系統(tǒng)中出現(xiàn)錯誤日志記錄時,將發(fā)送報警提示,保證每個處理環(huán)節(jié)的正常運行。監(jiān)控系統(tǒng)包含檢測服務(wù)器CPU、內(nèi)存、數(shù)據(jù)相應(yīng)時間、SQL 語句查詢時間等,通過監(jiān)控檢測信息,能夠清晰定位到系統(tǒng)的問題點。
為獲得高質(zhì)量的區(qū)域站統(tǒng)計資料,除了需要保證數(shù)據(jù)的完整性之外,也需保證統(tǒng)計方法的合理性、科學(xué)性和一致性[8]。本研究中統(tǒng)計方法的制定參考中央氣象局編寫的《全國地面氣候資料(1961-1990)統(tǒng)計方法》[6]和2004年版《地面氣象觀測規(guī)范》中有關(guān)地面氣象觀測資料的統(tǒng)計方法和不完整記錄的處理規(guī)定。

表2:實時統(tǒng)計表結(jié)構(gòu)
建立統(tǒng)一標(biāo)準(zhǔn)的歷史地面觀測數(shù)據(jù)與統(tǒng)計應(yīng)用數(shù)據(jù)存儲規(guī)范,將原來分散各數(shù)據(jù)庫存儲、表結(jié)構(gòu)類型不統(tǒng)一的歷史地面數(shù)據(jù)整合遷移上云,滿足其他業(yè)務(wù)系統(tǒng)和用戶對數(shù)據(jù)的各類應(yīng)用需求。
針對結(jié)構(gòu)化的歷史地面數(shù)據(jù),設(shè)計云存儲策略和云關(guān)系型數(shù)據(jù)庫存儲方法及DRDS 分庫分表技術(shù),由每個分庫負(fù)責(zé)數(shù)據(jù)讀寫操作,有效分散整體訪問壓力,從而提高數(shù)據(jù)存儲和服務(wù)效率。
時制是氣象觀測項目所采用的記錄時間,常用的時制有:真太陽時、地方平均太陽時、北京時。不同的氣象要素采用了不同的時制,因而也有不同的日界。為了觀測方便和應(yīng)用需要,一般以北京時20 時為日界,對于降水,也用北京時08 時為日界。
數(shù)據(jù)的統(tǒng)計精度遵守《地面氣象觀測規(guī)范》規(guī)定,存儲各要素值不含小數(shù)點,統(tǒng)計值尾數(shù)均四舍五入,具體規(guī)定如表1 所示。
為滿足氣象決策服務(wù)、氣象預(yù)警信息、農(nóng)業(yè)氣象、氣候評價等業(yè)務(wù)領(lǐng)域?qū)?zāi)害性天氣,如臺風(fēng)、暴雨、干旱、寒潮等對區(qū)域站氣象資料的應(yīng)用統(tǒng)計需求,以實時統(tǒng)計表為例,表結(jié)構(gòu)如表2 所示,日、旬、月、年表結(jié)構(gòu)類似。
本文基于四層設(shè)計架構(gòu)介紹了氣象地面資料歷史查詢服務(wù)系統(tǒng)的模塊設(shè)計和實現(xiàn)方法,并提出了區(qū)域站關(guān)鍵統(tǒng)計實現(xiàn)算法。實際業(yè)務(wù)應(yīng)用后發(fā)現(xiàn),該系統(tǒng)能夠為氣象業(yè)務(wù)和科研人員提供便捷的數(shù)據(jù)統(tǒng)計和查詢服務(wù),提高了氣象地面數(shù)據(jù)的支撐服務(wù)能力。在下一步的工作中,要繼續(xù)加強(qiáng)統(tǒng)計場景、算法的積累,研發(fā)多源數(shù)據(jù)快速質(zhì)控加工算法,針對各類業(yè)務(wù)服務(wù)工作需求,增加新的查詢算法和數(shù)據(jù)種類。