哈艷麗++黃本峰++袁海豹+徐立君
摘要:該文以新型自動(dòng)氣象站數(shù)據(jù)上傳機(jī)制為基礎(chǔ),針對(duì)大監(jiān)站數(shù)據(jù)在市一級(jí)存儲(chǔ)存在的問(wèn)題,對(duì)數(shù)據(jù)流程、數(shù)據(jù)獲取、數(shù)據(jù)解析、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)糾錯(cuò)等各環(huán)節(jié)開(kāi)展了有針對(duì)性的研究。通過(guò)研究實(shí)現(xiàn)了大監(jiān)站分鐘數(shù)據(jù)、小時(shí)數(shù)據(jù)、日數(shù)據(jù)在市一級(jí)的自動(dòng)入庫(kù),為各項(xiàng)應(yīng)用提供了基礎(chǔ)。
關(guān)鍵詞:煙臺(tái);新型自動(dòng)氣象站;數(shù)據(jù);存儲(chǔ)
中圖分類(lèi)號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)14-0193-03
近年來(lái),新型自動(dòng)氣象站在各地布設(shè)完成,成為基準(zhǔn)站、基本站和一般站的標(biāo)配。隨著新型站的運(yùn)行以及工作流程的完善,與以前類(lèi)型測(cè)站運(yùn)行產(chǎn)生了若干差異:數(shù)據(jù)存儲(chǔ)差異,新型站B文件不能直接讀??;訂正差異,異常數(shù)據(jù)的訂正流程改變;數(shù)據(jù)傳輸差異,以單個(gè)文件的形式上傳數(shù)據(jù)等。新型站數(shù)據(jù)傳輸機(jī)制是直傳到省局服務(wù)器,這些都使得地市無(wú)法實(shí)時(shí)方便地直接從各臺(tái)站獲取到大監(jiān)站數(shù)據(jù)。之前,煙臺(tái)市在獲取各大監(jiān)站小時(shí)數(shù)據(jù)時(shí),是靠同步省局服務(wù)器上的數(shù)據(jù)查詢(xún)頁(yè)面完成,日數(shù)據(jù)是靠在各站計(jì)算機(jī)上安裝軟件,自動(dòng)獲取B文件數(shù)據(jù)來(lái)完成,但這樣獲取數(shù)據(jù)在穩(wěn)定性和可靠性均存在不足,對(duì)觀測(cè)數(shù)據(jù)糾錯(cuò)流程設(shè)計(jì)等方面考慮不夠等問(wèn)題。基于此,也就需要對(duì)新型站上傳、糾錯(cuò)、存儲(chǔ)的流程及規(guī)律進(jìn)行詳細(xì)了解,以便于找到切實(shí)可行的辦法。本文就是對(duì)此流程進(jìn)行分析、研究,找出其規(guī)律,并就數(shù)據(jù)如何下載、處理、存儲(chǔ)等提出了解決方案。
1 設(shè)計(jì)思路
目前,山東省各級(jí)臺(tái)站通過(guò)寬帶網(wǎng)絡(luò)將實(shí)時(shí)數(shù)據(jù)傳輸?shù)绞【址?wù)器,當(dāng)遇有網(wǎng)絡(luò)故障時(shí),則自動(dòng)啟動(dòng)3G網(wǎng)卡,進(jìn)行數(shù)據(jù)傳輸。數(shù)據(jù)到省局后,經(jīng)過(guò)一體化平臺(tái)的審核,對(duì)有疑問(wèn)的數(shù)據(jù)直接反饋給臺(tái)站,由臺(tái)站進(jìn)行確認(rèn)或訂正,訂正后的數(shù)據(jù)再由原路由上傳,或由臺(tái)站直接登錄MDOS平臺(tái)進(jìn)行修改。當(dāng)MDOS平臺(tái)審核通過(guò)后,則存放于省局172.18.200.251服務(wù)器的對(duì)應(yīng)的質(zhì)控目錄下,供各單位訪問(wèn),如圖1所示。從中我們可看出,各臺(tái)站到省局一體化質(zhì)控部分,這部分流程是比較完整的,因此研究點(diǎn)的選擇要從質(zhì)控后的數(shù)據(jù)入手比較合適。
2 技術(shù)實(shí)現(xiàn)
2.1 文件名命名及數(shù)據(jù)結(jié)構(gòu)
目前新型站傳輸數(shù)據(jù)文件名及結(jié)構(gòu)符合《地面氣象要素?cái)?shù)據(jù)文件格式(V1.0)》的命名要求和存儲(chǔ)要求,其中常用的長(zhǎng)Z文件格式如下:
Z_SURF_I_IIiii_yyyyMMddhhmmss_O_AWS_FTM[-CCx].txt
其各代碼含義以及文件內(nèi)容結(jié)構(gòu)參見(jiàn)文件格式規(guī)定。
2.2 數(shù)據(jù)傳輸及解析處理
我們通過(guò)ftp方式獲取251服務(wù)器中一體化目錄以及數(shù)據(jù)質(zhì)控后存放的目錄(ST_QC、ST_DAY_QC、SS_DAY_QC)下的數(shù)據(jù)。
2.2.1 本地實(shí)時(shí)數(shù)據(jù)的獲取
1)本地?cái)?shù)據(jù)的識(shí)別。由于一體化目錄存放的是全省123個(gè)大監(jiān)站每5分鐘的實(shí)時(shí)數(shù)據(jù),若每次傳輸所有站點(diǎn)數(shù)據(jù)文件,會(huì)因無(wú)效站數(shù)據(jù)多造成運(yùn)行的效率低下,因此我們?cè)谙螺d時(shí)增加了本地站點(diǎn)的篩選功能。
2)最新數(shù)據(jù)的識(shí)別。下載過(guò)程還會(huì)遇到一個(gè)問(wèn)題:由于一體化目錄存放多天的數(shù)據(jù),若每次都同步獲取指定臺(tái)站數(shù)據(jù),也會(huì)造成大量已傳輸?shù)臄?shù)據(jù)被重復(fù)下載。因此我們?cè)诒镜卦O(shè)置一個(gè)下載過(guò)的歷史文件列表,當(dāng)系統(tǒng)獲取一體化ftp目錄文件列表后和本地列表核對(duì),若為新文件,則下載,否則跳過(guò),這樣就保證了只獲取最新的記錄,提高了運(yùn)行效率。
3)列表的定時(shí)清理。當(dāng)運(yùn)行一段時(shí)間后,本地列表文件會(huì)變得很龐大,增加了系統(tǒng)檢索比對(duì)的時(shí)間,因此設(shè)定每旬檢查一次列表文件,只保存最新的10萬(wàn)個(gè)文件記錄。
2.2.2 解析與處理
1)數(shù)據(jù)文件的排序處理。大監(jiān)站數(shù)據(jù)生成都是按時(shí)間順序進(jìn)行的,但數(shù)據(jù)通過(guò)轉(zhuǎn)存,會(huì)造成文件的修改時(shí)間的變化,因此,只通過(guò)文件的修改時(shí)間來(lái)確定處理順序會(huì)存在問(wèn)題。唯一可行的就是通過(guò)文件名排序后,按照文件名順序依次處理。我們通過(guò)讀取最新文件列表,再根據(jù)列表內(nèi)容排序,然后按順序來(lái)處理,以避免站點(diǎn)數(shù)據(jù)在先后次序上出現(xiàn)問(wèn)題。
2)數(shù)據(jù)的解析處理。對(duì)每次獲取的最新的文件,根據(jù)時(shí)序進(jìn)行打包,通過(guò)每次解析打包文件中的內(nèi)容來(lái)實(shí)現(xiàn)要素的識(shí)別,最后存儲(chǔ)到相應(yīng)的數(shù)據(jù)庫(kù)中。數(shù)據(jù)的解析按照處理文件的種類(lèi)分三種:5分鐘(小時(shí))數(shù)據(jù)文件,日數(shù)據(jù)文件、日照數(shù)據(jù)文件。每種數(shù)據(jù)文件根據(jù)所含的要素不同,解析出對(duì)應(yīng)的值,若數(shù)據(jù)有問(wèn)題,則以“-9999”進(jìn)行標(biāo)注處理。解析后的數(shù)據(jù)根據(jù)內(nèi)容存放到分鐘數(shù)據(jù)表、小時(shí)數(shù)據(jù)表和日數(shù)據(jù)表中。
2.3 數(shù)據(jù)存儲(chǔ)設(shè)計(jì)
當(dāng)前各地新型站上傳省局的實(shí)時(shí)數(shù)據(jù)文件主要分三種:分鐘數(shù)據(jù)文件、日數(shù)據(jù)文件、日照數(shù)據(jù)文件,小時(shí)數(shù)據(jù)與分鐘數(shù)據(jù)相同。為能夠方便存儲(chǔ)和識(shí)別,我們建立了分鐘數(shù)據(jù)表、小時(shí)數(shù)據(jù)表和日數(shù)據(jù)表,這樣就保證了分類(lèi)存儲(chǔ),很方便的實(shí)現(xiàn)有序訪問(wèn)。
2.3.1 分鐘數(shù)據(jù)表設(shè)計(jì)
表名為obserRealTimeDataMinuteAWS,存放各站每5分鐘的數(shù)據(jù),其數(shù)據(jù)源來(lái)自各站的分鐘長(zhǎng)Z文件。其表結(jié)構(gòu)設(shè)計(jì)時(shí),考慮最大限度的提取長(zhǎng)Z文件的要素?cái)?shù)據(jù),為今后的應(yīng)用提供基礎(chǔ),其中對(duì)無(wú)效數(shù)據(jù)冠以“-9999”進(jìn)行標(biāo)注,除經(jīng)緯度以浮點(diǎn)形式存放,觀測(cè)時(shí)間、寫(xiě)入時(shí)間以日期型存放外,其余均設(shè)置為字符型,這樣能更方便的應(yīng)對(duì)一些特殊數(shù)據(jù)的處理,如風(fēng)速的PPC等。具體的表結(jié)構(gòu)如下:
各站的整點(diǎn)長(zhǎng)Z文件,表結(jié)構(gòu)同分鐘數(shù)據(jù)表。
2.3.3 日數(shù)據(jù)表設(shè)計(jì)
表名為obserRealDayDataAWS,存放的是各站的日數(shù)據(jù)。數(shù)據(jù)表中包含了08-08時(shí)的數(shù)據(jù),如高低溫、降水量,這部分為預(yù)報(bào)質(zhì)量評(píng)定提供數(shù)據(jù);日照數(shù)據(jù)和蒸發(fā)數(shù)據(jù),這是根據(jù)可能會(huì)涉及到的服務(wù)增加的;在日平均氣溫、最大、極大風(fēng)挑取時(shí)增加了統(tǒng)計(jì)時(shí)次,以方便查閱統(tǒng)計(jì)數(shù)據(jù)的完整程度。日數(shù)據(jù)表中的數(shù)據(jù)可分別由以下途徑來(lái)獲?。?
(1)08時(shí)和20時(shí)小時(shí)長(zhǎng)Z文件。如降水量、高低溫等;
(2)日數(shù)據(jù)文件。如天氣現(xiàn)象等;
(3)日照數(shù)據(jù)文件。如蒸發(fā)、日照數(shù)據(jù)等;
(4)程序自動(dòng)統(tǒng)計(jì)。如平均氣溫取各站02、08、14和20時(shí)干球溫度均值;最大風(fēng)、極大風(fēng)的風(fēng)向、風(fēng)速取各站24個(gè)整點(diǎn)時(shí)次的相應(yīng)數(shù)值進(jìn)行挑取。
其表結(jié)構(gòu)如下:
2.4 數(shù)據(jù)的備份及糾錯(cuò)機(jī)制設(shè)計(jì)
2.4.1 備份機(jī)制設(shè)計(jì)
當(dāng)對(duì)獲取的數(shù)據(jù)文件處理完畢后,系統(tǒng)會(huì)自動(dòng)打包備份到分鐘數(shù)據(jù)、小時(shí)數(shù)據(jù)和日照數(shù)據(jù)單獨(dú)的文件夾內(nèi),作為歷史文件資料保存,也為以后數(shù)據(jù)的查閱和系統(tǒng)測(cè)試提供數(shù)據(jù)源。
2.4.2 糾錯(cuò)機(jī)制設(shè)計(jì)
數(shù)據(jù)處理若要保證正確無(wú)誤,就要考慮、設(shè)計(jì)進(jìn)糾錯(cuò)或完整性設(shè)計(jì)。在系統(tǒng)處理過(guò)程中,對(duì)這部分的考慮如下:
1)數(shù)據(jù)統(tǒng)計(jì)的規(guī)范性。在日數(shù)據(jù)統(tǒng)計(jì)中,涉及到平均值、極值的挑取,其算法和規(guī)則,均按照《地面氣象觀測(cè)規(guī)范》以及報(bào)表規(guī)定進(jìn)行設(shè)計(jì),保持結(jié)果的統(tǒng)一。
2)數(shù)據(jù)處理的時(shí)序性。在1.2.2的1中提及,數(shù)據(jù)處理時(shí)必須按照時(shí)間先后順序進(jìn)行。
3)數(shù)據(jù)的即傳即處理。系統(tǒng)處理中,會(huì)自動(dòng)撿取最新的上傳文件,依據(jù)時(shí)間進(jìn)行處理,并將插入或重新改寫(xiě)數(shù)據(jù)庫(kù)中的原有記錄,這就保證了數(shù)據(jù)的即時(shí)處理。
4)數(shù)據(jù)的人工補(bǔ)傳。當(dāng)各站檢查數(shù)據(jù)有疑誤時(shí),可單獨(dú)上傳到本地服務(wù)器的指定目錄下,系統(tǒng)會(huì)自動(dòng)進(jìn)行挑取處理,這樣就彌補(bǔ)了數(shù)據(jù)意外缺失造成的問(wèn)題。
5)數(shù)據(jù)完整性檢查。這體現(xiàn)在兩方面,其一是在日數(shù)據(jù)統(tǒng)計(jì)中,均給出有效時(shí)次的記錄,便于核對(duì);其二,在每天的19時(shí)后,對(duì)全天記錄進(jìn)行核查,若記錄數(shù)不足,則啟動(dòng)數(shù)據(jù)回傳機(jī)制,重新補(bǔ)錄、處理數(shù)據(jù),這樣就盡可能的避免了數(shù)據(jù)處理過(guò)程中造成的不完整。
6)數(shù)據(jù)的人工檢查。在研究過(guò)程中,先后3次下文,要求各站對(duì)處理后的數(shù)據(jù)進(jìn)行人工核查,對(duì)出現(xiàn)的問(wèn)題進(jìn)行匯總,并提出盡可能的解決方案,我們對(duì)反饋的信息注意查找,最終實(shí)現(xiàn)問(wèn)題的解決。
3 應(yīng)用
通過(guò)研究形成的大監(jiān)站數(shù)據(jù)庫(kù),在煙臺(tái)市的以下方面進(jìn)行了應(yīng)用:數(shù)據(jù)用于預(yù)報(bào)質(zhì)量對(duì)比和評(píng)定,有助于隨時(shí)掌握市局的預(yù)報(bào)質(zhì)量情況,以及對(duì)各縣市區(qū)的指導(dǎo),對(duì)提高預(yù)報(bào)準(zhǔn)確率比較有利;在農(nóng)氣旬月報(bào)編輯上為農(nóng)氣周報(bào)、旬報(bào)、月報(bào)、季度及年度氣候影響評(píng)價(jià)的提供了數(shù)據(jù)支持,為各站積溫等各類(lèi)數(shù)據(jù)統(tǒng)計(jì)提供了便利。替代了各站原有的手工上傳日數(shù)據(jù)工作,大大減輕了基層的工作量。另外在氣象證明開(kāi)具、氣象信息服務(wù)等方面均提供了數(shù)據(jù)支持。