高鵬 付杰 張春燕 劉昊
摘要:開(kāi)展全國(guó)氣象災(zāi)害綜合風(fēng)險(xiǎn)普查是黨中央、國(guó)務(wù)院安排部署,交由氣象部門(mén)承擔(dān)的重要任務(wù),是國(guó)情國(guó)力調(diào)查的重要內(nèi)容,是提升氣象防災(zāi)減災(zāi)能力的基礎(chǔ)性工作。開(kāi)展建站至2020年甘肅省暴雨、大風(fēng)、冰雹、雪災(zāi)所需的81個(gè)氣象站點(diǎn)及區(qū)域自動(dòng)氣象站各要素(逐小時(shí)氣溫、降水、風(fēng)速、風(fēng)向;積雪、降雪日數(shù)、積雪深度、冰雹直徑、最大風(fēng)速、極大風(fēng)速等)數(shù)據(jù)的統(tǒng)計(jì)分析。
關(guān)鍵詞:災(zāi)害普查? 數(shù)據(jù)分析? 自動(dòng)站? 氣象數(shù)據(jù)? 數(shù)據(jù)處理
Meteorological Disaster Census data Processing
GAO Peng? FU Jie? ZHANG Chunyan? LIU Hao
(Gansu Meteorological Information And Technical Equipment Support Center, Lanzhou, Gansu Province, 730000 China)
Abstract:Carrying out the national comprehensive risk survey of meteorological disasters is an important task arranged and deployed by the Party Central Committee and the State Council and entrusted to the meteorological department. It is an important content of the investigation of national conditions and national strength, and a basic work to improve the ability of meteorological disaster prevention and reduction. Carry out statistical analysis on the data of 81 meteorological stations and regional automatic meteorological stations (hourly temperature, precipitation, wind speed, wind direction; snow, snow days, snow depth, hail diameter, maximum wind speed, maximum wind speed, etc.) required for rainstorm, gale, hail and snow disasters in Gansu Province from the establishment of the station to 2020.
Key Words:Disaster survey; Data analysis; Automatic station;Meteorological data;Data processing.
中圖分類(lèi)號(hào):P409? 文獻(xiàn)標(biāo)識(shí)碼:A
1總體框架
數(shù)據(jù)處理軟件開(kāi)發(fā),主要5層架構(gòu)進(jìn)行設(shè)計(jì),主要為資源層、支撐層、應(yīng)用接口層、應(yīng)用交互層和用戶層構(gòu)成,具體如圖1所示。
系統(tǒng)架構(gòu)圖用以說(shuō)明整個(gè)系統(tǒng)的組成部分,并從邏輯上說(shuō)明了各層內(nèi)部組成元素、層與層之間的邏輯關(guān)系,系統(tǒng)體系的構(gòu)成包括用戶體系、應(yīng)用交互體系、應(yīng)用接口體系、數(shù)據(jù)支撐層和資源存儲(chǔ)體系,這些不同的組成部分,都具有明確的定位和分工,它們從不同方面、不同層次發(fā)揮著特定的應(yīng)用作用,這些組成部分互相配合,共同協(xié)作完成整體應(yīng)用功能。
2 主要功能
2.1 數(shù)據(jù)庫(kù)設(shè)計(jì)
風(fēng)險(xiǎn)普查項(xiàng)目中數(shù)據(jù)庫(kù)采用MySQL,采用MySQL 數(shù)據(jù)庫(kù)原因?yàn)镸ySQL具有以下優(yōu)勢(shì):
(1)使用C和C++編寫(xiě),并使用多種編譯器進(jìn)行測(cè)試,保證源代碼的可移植性。
(2)支持 AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows 等多種操作系統(tǒng)。
(3)為多種編程語(yǔ)言提供了API。這些編程語(yǔ)言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。
(4)支持多線程,充分利用CPU資源。
(5)優(yōu)化的SQL查詢(xún)算法,有效地提高查詢(xún)速度。
(6)既能夠作為一個(gè)單獨(dú)的應(yīng)用程序應(yīng)用在客戶端服務(wù)器網(wǎng)絡(luò)環(huán)境中,也能夠作為一個(gè)庫(kù)而嵌入其他的軟件中。
(7)提供多語(yǔ)言支持,常見(jiàn)的編碼如中文的GB 2312、BIG 5,日文的Shift_JIS等都可以用作數(shù)據(jù)表名和數(shù)據(jù)列名。
(8)提供TCP/IP、ODBC和JDBC等多種數(shù)據(jù)庫(kù)連接途徑。
(9)提供用于管理、檢查、優(yōu)化數(shù)據(jù)庫(kù)操作的管理工具。
(10)支持大型的數(shù)據(jù)庫(kù)??梢蕴幚?yè)碛猩锨f(wàn)條記錄的大型數(shù)據(jù)庫(kù)。
(11)支持多種存儲(chǔ)引擎。
根據(jù)氣象災(zāi)害綜合風(fēng)險(xiǎn)普查業(yè)務(wù)需求,累計(jì)70年日資料一個(gè)站的理論記錄數(shù)量約為25 600條,小時(shí)資料理論記錄數(shù)量約為614 800條,由于各縣項(xiàng)目需求中可能涉及到區(qū)域站數(shù)據(jù),因此數(shù)據(jù)量級(jí)將會(huì)很大,為避免后續(xù)工作開(kāi)展不受數(shù)據(jù)量級(jí)影響,數(shù)據(jù)設(shè)計(jì)采用分庫(kù)分表存儲(chǔ)[1-3]。
暴雨、大風(fēng)、冰雹、雪災(zāi)相關(guān)數(shù)據(jù)產(chǎn)品服務(wù)工作采用SQLServer數(shù)據(jù)庫(kù)技術(shù),完成了以下4種資料數(shù)據(jù)庫(kù)的建設(shè)工作,如圖2所示。
第一,完成了全省所有氣象站實(shí)時(shí)資料數(shù)據(jù)庫(kù):所有數(shù)據(jù)均由省局CIMISS平臺(tái)提供,并通過(guò)MUSIC API數(shù)據(jù)接口實(shí)時(shí)獲取,實(shí)現(xiàn)本地化數(shù)據(jù)沉淀存儲(chǔ)。
第二,下載省局智能網(wǎng)格分布式數(shù)據(jù),通過(guò)后臺(tái)自動(dòng)化調(diào)度任務(wù)實(shí)現(xiàn)動(dòng)態(tài)獲取。
2.2數(shù)據(jù)處理
由于各縣氣象資料需求不統(tǒng)一,數(shù)據(jù)處理無(wú)法做到程序自動(dòng)化處理,所有需求均需要通過(guò)人工干預(yù)才能正常處理,因此,在該項(xiàng)工作中,安排了專(zhuān)人對(duì)各縣提供的數(shù)據(jù)進(jìn)行審核,將整理完的需求統(tǒng)一編碼,同步開(kāi)發(fā)數(shù)據(jù)下載及程序,完成數(shù)據(jù)入庫(kù)工作。截至目前項(xiàng)目涉及到的數(shù)據(jù)有兩大類(lèi),分別為CIMISS接口數(shù)據(jù)和閃電資料,由于數(shù)據(jù)無(wú)法做到程序自動(dòng)校驗(yàn),因此數(shù)據(jù)處理分為4個(gè)部分任務(wù),分別為CIMISS數(shù)據(jù)下載入庫(kù)任務(wù)、CIMISS數(shù)據(jù)輸出任務(wù)、閃電資料解析任務(wù)及閃電資料數(shù)據(jù)輸出任務(wù),如圖3所示。
2.3 數(shù)據(jù)檢驗(yàn)
數(shù)據(jù)校驗(yàn)是本項(xiàng)目中占比最大的一部分,也是本項(xiàng)目中最重要的一個(gè)環(huán)節(jié),由于數(shù)據(jù)檢驗(yàn)無(wú)法做到程序自動(dòng)校驗(yàn),采用人工檢驗(yàn)的方式對(duì)數(shù)據(jù)進(jìn)行核驗(yàn),對(duì)已入庫(kù)的數(shù)據(jù)字段、缺失情況、一致性進(jìn)行檢查,檢查下載的數(shù)據(jù)是否正常,有無(wú)缺失的數(shù)據(jù)。
2.4 數(shù)據(jù)輸出及下發(fā)
對(duì)校驗(yàn)后的數(shù)據(jù)進(jìn)行輸出及下發(fā),采用Excel表格文件格式進(jìn)行文件輸出,可能涉及到大量的區(qū)域站的數(shù)據(jù),因此文件輸出時(shí)采用分站的形式進(jìn)行輸出(即一個(gè)站一個(gè)Excel文件),防止數(shù)據(jù)因量大而出現(xiàn)數(shù)據(jù)丟失的情況。
3 關(guān)鍵技術(shù)
3.1 大數(shù)據(jù)處理技術(shù)Python
Python是數(shù)據(jù)科學(xué)家十分喜愛(ài)的編程語(yǔ)言,究其原因是Python語(yǔ)言簡(jiǎn)單易懂、語(yǔ)言通用,其內(nèi)置了很多由C語(yǔ)言編寫(xiě)的庫(kù),操作起來(lái)更加方便,在大數(shù)據(jù)的處理方面具有先天優(yōu)勢(shì),Python語(yǔ)言得益于它的簡(jiǎn)單方便,Python在數(shù)據(jù)分析和交互、探索性計(jì)算及數(shù)據(jù)可視化等方面都顯得比較活躍,這就是Python作為數(shù)據(jù)分析的原因之一,python擁有numpy、matplotlib、scikit-learn、pandas、ipython等工具在科學(xué)計(jì)算方面十分有優(yōu)勢(shì),尤其是pandas,在處理中型數(shù)據(jù)方面可以說(shuō)有著無(wú)與倫比的優(yōu)勢(shì),已經(jīng)成為數(shù)據(jù)分析中流砥柱的分析工具,所以要做好數(shù)據(jù)分析,優(yōu)先選擇Python語(yǔ)言。
3.2 模塊化的處理方式
風(fēng)險(xiǎn)普查數(shù)據(jù)是一項(xiàng)集成、動(dòng)態(tài)、復(fù)雜的應(yīng)用性工作,為了最大限度地重用數(shù)據(jù)處理工作中的公共功能,并提供靈活的方式進(jìn)行功能擴(kuò)充和工具集成,采用基于插件技術(shù)的可擴(kuò)展的應(yīng)用框架技術(shù)進(jìn)行數(shù)據(jù)處理模塊建設(shè),可以顯著地縮短模塊的開(kāi)發(fā)周期,提高數(shù)據(jù)處理質(zhì)量和重用程度。
3.3 利用標(biāo)準(zhǔn)方差快速質(zhì)控
風(fēng)險(xiǎn)質(zhì)控?cái)?shù)據(jù)均屬于長(zhǎng)序列,且具有一定的數(shù)據(jù)標(biāo)準(zhǔn),諸如溫度等數(shù)據(jù),本次工作將引入標(biāo)準(zhǔn)差(方差),從總體上描述一組數(shù)據(jù)的穩(wěn)定性,因?yàn)闃?biāo)準(zhǔn)差能反映出一個(gè)數(shù)據(jù)集的離散程度。平均數(shù)相同的,標(biāo)準(zhǔn)差未必相同。標(biāo)準(zhǔn)差是反映一組數(shù)據(jù)離散程度最常用的一種量化形式,是表示精確度的重要指標(biāo)。
3.4 引進(jìn)DPF框架,建立數(shù)據(jù)清洗模型
風(fēng)險(xiǎn)普查數(shù)據(jù)屬于大量且集中化的數(shù)據(jù),本次數(shù)據(jù)處理主要對(duì)四類(lèi)異常數(shù)據(jù)進(jìn)行處理;分別是缺失值(missing value),異常值(離群點(diǎn)),去重處理(Duplicate Data)及噪音數(shù)據(jù)的處理。
為了實(shí)現(xiàn)完成數(shù)據(jù)清洗工作,將在本次工作過(guò)程中,引進(jìn)DPF框架,盡最大可能建立一些數(shù)據(jù)模型實(shí)現(xiàn)數(shù)據(jù)的處理,提升數(shù)據(jù)處理的效率,提高數(shù)據(jù)處理的質(zhì)量。
DPF的理念很簡(jiǎn)單,利用不靠譜的數(shù)據(jù)訓(xùn)練一個(gè)模型,這個(gè)模型在訓(xùn)練集上準(zhǔn)確度通常都很低(如果訓(xùn)練集上已經(jīng)完美擬合,那這個(gè)方法就不能直接用了)[4-6]。用訓(xùn)練好的模型把最不靠譜的那些數(shù)據(jù)(預(yù)測(cè)與實(shí)際差得最遠(yuǎn))刪掉,然后利用剩下的數(shù)據(jù)訓(xùn)練新的模型,之后再用新模型把剩下數(shù)據(jù)里最不靠譜的一些數(shù)據(jù)刪掉,如此重復(fù),直到模型在訓(xùn)練集上達(dá)到較高的準(zhǔn)確度。這時(shí)候被篩完剩下的數(shù)據(jù)可能比較少了。為了召回一些被早期模型誤過(guò)濾掉的樣本,把最新的模型應(yīng)用到原始的全量數(shù)據(jù)上,這樣去除最不靠譜的數(shù)據(jù)后會(huì)留下更多的數(shù)據(jù)用于接下來(lái)的迭代[7-10]。之后的迭代邏輯和前面的相同,利用模型清除最不靠譜的數(shù)據(jù),再用清洗后的新數(shù)據(jù)訓(xùn)練新模型。
4 結(jié)語(yǔ)
大多氣象災(zāi)害所要求的數(shù)據(jù)均需要進(jìn)行匯總分析,因此,要求本系統(tǒng)能提供一套靈活、可配置的匯總算法,實(shí)現(xiàn)由原始數(shù)據(jù)派生出新的數(shù)據(jù)集,或者由同一資料加工成不同時(shí)間尺度資料的多元算法。本次工作對(duì)于暴雨過(guò)程數(shù)據(jù)需要提供降水累計(jì)、平均、小時(shí)降水量總數(shù),過(guò)程中每個(gè)整點(diǎn)過(guò)去1h、3h、6h、12h降水值。小時(shí)降水則需要基于每個(gè)整點(diǎn)整理統(tǒng)計(jì)過(guò)去1h、3h、6h、12h、24h的降水累計(jì)。冰雹數(shù)據(jù)需要利用災(zāi)情數(shù)據(jù),還需要結(jié)合A文件的天況數(shù)據(jù)等。
對(duì)于處理完成后的基礎(chǔ)數(shù)據(jù),仍然存在不可預(yù)知的問(wèn)題,在利用之前,必須要對(duì)所有原始數(shù)據(jù)集進(jìn)行清洗,形成原始數(shù)據(jù)分析結(jié)論,真正做到每一類(lèi)資料存儲(chǔ)情況可知、可控。數(shù)據(jù)清洗主要是對(duì)各類(lèi)原始數(shù)據(jù)中存在的異常值、空值、非法值進(jìn)行處理,處理方式是要求按照不同氣象資料種類(lèi)建立該類(lèi)數(shù)據(jù)對(duì)應(yīng)的一種或多種質(zhì)控方案,主要包括閾值質(zhì)控,無(wú)效值等質(zhì)控等。對(duì)于非連續(xù)性的數(shù)據(jù)集,根據(jù)其特征,采用插值等算法完成數(shù)據(jù)連續(xù)性補(bǔ)充工作。
參考文獻(xiàn)
[1] 張翔,韋燕芳,李思宇,等.從干旱災(zāi)害到干旱災(zāi)害鏈:進(jìn)展與挑戰(zhàn)[J].干旱氣象,2021,39(6):873-883.
[2] 劉云,康卉君.2002—2019年江西省省級(jí)地質(zhì)災(zāi)害氣象預(yù)警分析[J].華東地質(zhì),2020(4):416-424.
[3] 劉云,康卉君.江西崩塌滑坡泥石流災(zāi)害空間時(shí)間分布特征分析[J].中國(guó)地質(zhì)災(zāi)害與防治學(xué)報(bào).2020(4):107-1121.
[4] 王亞俊.考慮屬性交互的氣象災(zāi)害治理能力評(píng)價(jià)建模研究[D].南京:南京信息工程大學(xué),2021.
[5] 孫大為,張廣艷,鄭緯民.大數(shù)據(jù)流式計(jì)算:關(guān)鍵技術(shù)及系統(tǒng)實(shí)例[J].軟件學(xué)報(bào),2014,25(4):839-862
[6] 任芝花,張志富,孫超,等.全國(guó)自動(dòng)氣象站實(shí)時(shí)觀測(cè)資料三級(jí)質(zhì)量控制系統(tǒng)研制[J].氣象,2015,41(10):1268-1277.
[7] 王秀珍.玉溪烤煙氣象災(zāi)害風(fēng)險(xiǎn)及作物模型適用性研究[D].南京:南京信息工程大學(xué),2021.
[8] 張國(guó)華,何學(xué)文.江西省吉安縣地質(zhì)災(zāi)害氣象預(yù)警研究[J].華東地質(zhì),2021,42(4):373-382.
[9] 周江,王偉平,孟丹,等.面向大數(shù)據(jù)分析的分布式文件系統(tǒng)關(guān)鍵技術(shù)[J].計(jì)算機(jī)研究與發(fā)展,2014,51(2):382-394.
[10] 李秀萍.河北省氣象災(zāi)害應(yīng)急聯(lián)動(dòng)機(jī)制研究[D].南京:南京信息工程大學(xué),2021.
基金項(xiàng)目:甘肅省氣象局氣象科研項(xiàng)目(項(xiàng)目編號(hào):Ms2022-05);氣象大數(shù)據(jù)支持與服務(wù):甘肅省氣象局創(chuàng)新團(tuán)隊(duì)(項(xiàng)目編號(hào):GSQXCXTD-2021-01)
作者簡(jiǎn)介:高鵬(1987—),男,碩士,工程師,研究方向?yàn)闅庀蟠髷?shù)據(jù)、云計(jì)算等。
通信作者簡(jiǎn)介:付杰(1987—),男,碩士,工程師,研究方向?yàn)闅庀蟠髷?shù)據(jù),綜合監(jiān)控等,E-mail:fujiede2021@163.com