曾 沁,李永生
1.廣東省氣象臺,廣州 510080; 2.廣東省氣象探測數據中心,廣州 510080)(*通信作者電子郵箱zengq@cma.gov.cn)
基于分布式計算框架的風暴三維追蹤方法
曾 沁1*,李永生2
1.廣東省氣象臺,廣州 510080; 2.廣東省氣象探測數據中心,廣州 510080)(*通信作者電子郵箱zengq@cma.gov.cn)
氣象數據的增長規模已達到每小時TB級,這使得傳統基于關系型數據庫和文件存儲系統在海量數據存儲與管理方面捉襟見肘,進而使得基于大規模異構氣象數據的應用無法規?;?同時,也無法滿足科研人員對海量氣象數據高效探索的需要。為解決這一系列問題,研究者分別基于MapReduce、HBase等分布式框架下的分布式計算和存儲技術,嘗試為海量氣象數據的探索提供有效技術手段,然而,綜合性的研究據了解還未開展。因此,利用近年來積累的海量多普勒天氣雷達數據,開展了基于MapReduce和HBase相結合的風暴三維追蹤方法的研究,并基于傳統Rest標準化接口實現了雷達資料的點、線、面、體的多種分布式服務接口,與傳統的Rest標準化單機數據存儲和訪問接口的性能相比,所實現方法在性能方面有100%的效率提升。最后,以2007年至2009年珠江三角洲地區三年雷達數據的風暴追蹤回算為例,進一步驗證了所提方法在計算和存儲管理方面的性能優勢。
分布式計算框架;風暴追蹤算法;長時間序列分析
隨著探測手段的不斷豐富和加工處理能力的不斷增強,氣象數據產生的頻次和時增量已分別達到了秒級和TB級,數據總量也呈指數級增長。傳統氣象數據主要是以站點或者格點為表現形式的結構化數據,且大多采用Oracle、MySQL等關系型數據庫,以及常用于科學計算領域的NetCDF或HDF等文件數據形式存儲,并根據時間形成序列化數據進行存儲和管理。
面對海量增長的歷史氣候資料,無論是傳統的關系型數據庫還是文件系統,數據的檢索和定位性能均較差,多維數據查詢和分析的效率均較低,目前已難于滿足大規模、多樣化的氣象數據分析挖掘的性能需求。近年,NASA(National Aeronautics and Space Administration)氣候模擬中心利用MapReduce分布式計算框架開展了地球氣候模擬數據的高性能分析查詢研究[1-2],對比傳統的NetCDF數據集查詢有明顯的計算性能提升。廣東省氣象局李永生等[3]利用HBase實現了格點類數值天氣預報數據的分布式存儲和管理,其訪問效率比傳統方法也有明顯提升。然而,在氣象業務中將分布式存儲技術與分布式計算有效結合的相關研究還未見報道。
本文利用近年來積累的海量多普勒天氣雷達數據,展開基于分布式計算框架的風暴三維追蹤的方法研究,進而研究氣象業務背景下的分布式存儲與計算技術相結合的方法,以幫助業務技術人員能夠更高效地實現局部地區強對流天氣的歷史氣候特征分析。最后,以珠三角超大城市群在不同季節對于風暴的生消起到的促進與抑制作用為例,驗證了采用本文方法獲得的分析結果的有效性。
1.1 TITAN算法
TITAN(Thunderstorm Identification, Tracking, Analysis and Nowcasting)算法是目前臨近天氣預報的主要方法之一,主要用于對強對流天氣的識別、跟蹤和預報,它使用組合最優算法對風暴體進行追蹤,使用幾何算法來實現對風暴的合并、分裂的識別[4],本文以基于TITAN算法思想實現三維風暴的追蹤,并將其與分布式存儲管理技術相結合實現高效計算。
1.2 三維風暴的識別
三維風暴的識別與追蹤其本質可視為在立體網格數據中目標像素點的近似鄰近像素點的搜索問題。其基本步驟包括以下幾步:
1)從給定的立體網格數據的最下層開始進行行掃描,當遇到第一個回波強度大于預先設定的閾值像素點(x,y,0)時,則以該回波為起點,搜索與該像素點相鄰的其他相連像素,并檢查是否有其他相鄰新像素點的回波強度達到閾值以上,如果有則進行標記,一方面實現覆蓋率的提高,另一方面可避免像素點的重復,進而提高搜索效率。
2)進行垂直搜索,作適當的“膨脹”處理。當回波強度從閾值以上下降到閾值以下,像素點仍然被標記為閾值以上,并進行下一步的擴展搜索,搜索過程中,如未發現“連通”的其他網格點,則停止繼續膨脹。
3)對所有搜索到的新像素點,重復1)中操作,直到搜索不到任何新的達到閾值的像素點為止,所得所有像素點的集合,便是一個強度在閾值范圍內的強回波區,形成風暴單體。
4)從像素(x+1,y,0)開始,重復過程1)~3),直到立體數據掃描完畢完成掃描,并對所有風暴單體進行標記。
經過以上過程,即可實現立體網格數據中的風暴單體的確定,進而可以基于確定的各風暴單體中包含的像素點數據計算獲得風暴中心強度、風暴伸展高度、風暴單體厚度等其他風暴體相關的一系列屬性信息。在該過程中,可利用MapReduce方法將各風暴單體的搜索過程進行任務切分,實現搜索過程的分布式,以及屬性信息計算的分布式。
1.3 三維風暴的追蹤算法
雷暴、冰雹和強降水等惡劣天氣在雷達強度圖像上表現為強回波區,即由彼此連通且回波強度大于某一閾值的像素點的集合。因此,識別和追蹤強烈的惡劣天氣,就是追蹤大氣三維立體網格數據中的強回波區域。本文將雷達回波反射率的閾值設定為35dBZ,三個垂直正交平面18連通,跟蹤搜索風暴體位置和邊界(見圖1)。

圖1 基于18連通的立體三維掃描
基于大氣三維立體網格數據實現風暴的追蹤算法如下所示。
輸入:三維立體網格數據。 輸出:風暴中心強度、風暴伸展高度、風暴單體體積、風暴單體厚度。
1)
雷達回波反射率的閾值=35dBZ;
2)
If(回波強度>閾值)
3)
Then起點=該回波強度的像素(x,y,0);
4)
搜索該起點鄰近相連的12個像素;
5)
If(有新像素點的回波強度>閾值)
6)
Then 打上記號;
7)
垂直搜索時,作適當的“膨脹”處理;
8)
If(回波強度從閾值以上下降到閾值以下)
9)
Then 該點仍然標記為閾值以上;
10)
進行下一步的擴展搜索;
11)
If(仍然沒有發現“連通”的網格點)
12)
Then 放棄搜索;
13)
對所有搜索到的新像素點;
14)
If(回波強度像素點<閾值)
15)
Then 停止搜索;
16)
Else GOTO 2);
17)
For(起點=像素(x+1,y,0),起點in立體數據,起點的下一個數據)
18)
對風暴單體進行標記;
2.1 數據的分布式存儲管理
2.1.1 數據存儲管理模型設計
將三維多普勒天氣雷達數據解析后,利用HBase實現描述雷達數據屬性的元數據和雷達回波數據實體的存儲,并以帶時間戳的Row Key進行標記??紤]到三維風暴追蹤算法和未來三維可視化的需求,沒有對數據垂直分層存儲,而將三維數據整體存儲入HBase的列存儲中,通過帶時間的Row Key管理長時間序列的雷達歷史資料集。由于大多數時間大氣是處在沒有降水的狀態下,因此,三維數據中存在數據稀疏問題。因此在存入HBase的列存儲之前,對數據將作GZIP壓縮,一方面可以有效地解決數據稀疏問題;另一方面可實現數據存儲空間的降低,進而間接提升網絡數據訪問的延遲。在服務接口設計中,提供分層讀取數據的接口,滿足二維平面數據訪問需求。具體存儲方式如圖2所示。

圖2 多普勒天氣雷達三維數據存儲表結構
2.1.2 數據服務接口開發
針對雷達數據量多、訪問頻次高的問題,本文設計了針對網絡應用開發的基于文本流的Restful接口(實現方式如圖3所示),該接口用于對外提供數據服務,主要包括數據查詢、時間序列數據接入與分析處理、三維雷達反射率場數據的接入與分析處理、二維平面和三維切片數據的接入與分析處理。此外,接口的數據標準遵循JSON格式,并可以支持可視化軟件Surfer格式文件下載的接口服務,進而實現滿足主流數據格式的具體應用服務的接入。

圖3 Restful接口實現方式結構
2.2 算法的分布式實現方法
通過實施算法的并行化可以顯著提高計算效率,可以從算法本身的并行化處理以及基于數據分割的分布式計算兩個方面進行考慮。由于三維風暴追蹤算法原理復雜度不高,所需數據是時間(Row Key,RADAR:YYYYMMDDHHmm)相關的,每次風暴單體搜索過程是獨立的,主要的計算量源自長時間序列海量數據帶來的密集型任務。因此,設計主要采取基于數據分割的分布式算法實現,這也是MapReduce編程模型的典型應用。如圖4所示,啟動MapReduce計算過程時[5],HBase資源管理按照Row Key向Map任務提供數據片段,Map通過識別Row key所對應的雷達元數據和回波反射率實體數據進行分布式計算。計算結果通過Reduce任務匯總,可以回寫HBase,也可直接連接可視化組件或者進入統計分析流程。

圖4 基于Map-Reduce 計算框架的風暴追蹤算法實現流程
3.1 實驗環境
采用HDFS技術,建立適合氣象業務實際的大容量數據分布式存儲系統,基于MapReduce技術探討建立分布式計算模型,選取典型類型的氣象資料在云計算環境下設計開發大容量數據業務應用程序。目前以數值預報產品和三維雷達拼圖進行實驗?;贛apReduce分布式計算框架如圖5所示。

圖5 基于MapReduce分布式計算框架
本文的實驗平臺在廣東省氣象局數值預報產品分布式管理服務平臺基礎上進行拓展[6]。平臺的基礎架構由分布式存儲設施層、基于分布式架構的數據環境與計算平臺層和數據應用服務的接口層組成。
基于Hadoop技術架構,構建了分布式存儲設施層[7],為各類氣象數據提供可伸縮、高容錯的彈性存儲資源。服務器配置為:CPU是Intel Xeon CPU E5-2603@ 1.80 GHz×4,內存3 658 MB,硬盤2.5 TB,共7臺實驗機器,網絡連接1 Gb/s。
分布式數據環境與計算平臺層由數據處理模塊、分布式數據存儲和管理模塊以及分布式計算引擎三部分組成,其中數據處理模塊對自定義格式的雷達基數據進行解碼和三維格式轉換,并開發實現了將數據實時接入平臺的功能;分布式數據存儲和管理模塊對HDFS和HBase進行集成[8],實現了高時空分辨率氣象雷達數據的高效管理和讀寫操作;在分布式計算引擎模塊中MapReduce通過把對數據集的大規模操作分發給網絡上的每個節點進行處理[9],每個節點會周期性地把完成的工作和狀態同步更新到管理節點上。
服務接口層包括分布式數據服務接口和分布式算法服務接口,為了更好地與其他業務系統實現對接,對外提供了基于Restful接口的標準化數據查詢和訪問接口[10]。
3.2 實驗數據
多普勒天氣雷達通過發射電磁波,對三維大氣在不同仰角上作360°的立體掃描(Volume Scan),得到球坐標系的三維基數據(Base Data),其中的雷達回波反射率表征大氣中降水的強度。設定不同的高度,應用標準大氣下的雷達測高公式,獲取該高度上的數據。如果該高度上沒有數據,則在最鄰近的上下2個仰角之間利用雙線性插值獲得數據。通過設定高度值就可以獲得等高平面上的雷達回波反射率值(Constant Altitude Planar Position Indicator,CAPPI)。循環進行該算法,就可以獲得從近地層到對流層上部三維立體的雷達回波反射率。本文使用廣州及周邊地區多普勒天氣雷達基數據進行三維立體CAPPI的網格化處理,獲得500×400×40層的雷達回波反射率產品,約21 MB,三維網格雷達回波反射率數據描述如表1所示。多普勒天氣雷達每6 min完成一次體掃描, 以2 007~2009年3年周期作為實驗分析,原始數據文件262 800個,共約5.52 TB數據。

表1 三維網格雷達回波反射率數據描述
實驗測試包括雷達數據的訪問效率測試以及執行雷達三維風暴追蹤算法的性能測試,并分別與NetCDF數據接口和單機讀取文件序列方式進行性能對比。
3.3 雷達數據訪問效率
雷達數據的訪問效率測試主要考察在并發條件下,分別讀取三維雷達資料場數據、等高的二維平面、任意方向的三維切片的性能效率,并和傳統的利用科學計算通用格式NetCDF[11]的訪問進行對比,如圖6所示。利用通過分布式存儲管理系統訪問三維雷達數據,一般控制在100 ms以內,同時隨著并發數的增長能夠保持高效率。由于HBase采用了數據壓縮,因此在三維數據和數據切片讀取效率上,較NetCDF有明顯優勢。NetCDF原本并不支持并發訪問,隨著用戶數的增加,出現訪問鎖死現象,所以沒有給出多用戶訪問數據。

圖6 多用戶并發下的三維雷達數據訪問效率對比
3.4 算法性能測試
采用分布式MapReduce/Hadoop架構,針對2007~2009年的雷達數據,開展三維風暴追蹤算法的3年回算,分析珠江三角洲(廣州為中心方圓200 km為界)發生的強對流天氣(雷達回波反射率>35)的活動情況,共費時193 min,獲取517時次風暴活動。此前,采用單機讀取26萬個文件,逐一計算的方式,扣除期間中斷時次,根據程序日志,共耗時219 h。
3.5 案例分析
利用風暴活動位置數據,繪制不同月份的熱點圖,如圖6。前汛期(4月為代表),廣州及周邊地區,強對流風暴單體多發區在城市范圍,而周邊則是風暴活動的低值區,特別是廣州市區一帶,5 km之內的網格一個月平均有30~45個風暴單體的活動。由于風暴的移動特性,這種分布也往往表示著廣州市城市群在前汛期(濕季)對于風暴的發生發展有促進作用。
后汛期(7月為代表),風暴活動較前汛期更加頻繁,但活動的主力區域是珠江三角洲的沿海地區,這也反映了后汛期風暴單體主要源于主要是副高南側邊緣的對流活動以及東風波動系統西傳所致。從圖7所示的廣州市區的風暴活動分布圖上看,廣州的西邊(芳村一帶)是風暴活動的活躍區,但進入市區則風暴活動明顯減少,而東邊移出廣州市區,風暴又重新活躍。這也反映了在后汛期(相對的汛期干季),大城市效應對于風暴的活動是有抑制和減弱作用的。這也和國外的一些研究以及開展的外場實驗結果存在相似之處。

圖7 廣州市區風暴活動熱點圖(2007~2009年)
本文基于分布式計算架構搭建了海量氣象數據存儲管理和算法應用平臺,實現了TB級別的雷達三維格點數據的分布式存儲管理,具有較好的擴展性;采用MapReduce計算框架設計和實現了風暴追蹤算法的分布式處理,通過Restful API接口可以實現對數據的高效訪問和算法的便捷調用。通過業務應用測試和典型場景的應用,可以看到基于分布式架構的大數據分析應用模型,對于未來高分衛星的精細遙感資料的實時和長時間序列的應用挖掘帶來助力,為業務人員更好分析局地天氣氣候事件和環境生態演變提供更強的計算能力和效率工具。
References)
[1] ZHOU S, YANG X, LI X, et al. A Hadoop-based visualization and diagnosis framework for earth science data[C]// Proceedings of the 2015 IEEE International Conference on Big Data. Piscataway, NJ: IEEE, 2015:1972-1977.
[2] DUFFY D Q, SCHNASE J L, THOMPSON J H, et al. Preliminary evaluation of MapReduce for high-performance climate data analysis[EB/OL]. [2015- 10- 10]. https://ntrs.nasa.gov/archive/nasa/casi.ntrs.nasa.gov/20120009187.pdf.
[3] 李永生, 曾沁, 徐美紅, 等. 基于Hapdoop的數值預報產品服務平臺設計與實現[J]. 應用氣象學報, 2015, 26(1):122-128.(LI Y S, ZENG Q, XU M S, et al. Design and implementation of NWP data service platform based on Hadoop framework[J]. Journal of Applied Meteorological Science, 2015, 26(1):122-128.)
[4] 李英俊, 韓雷. 基于三維雷達圖像數據的風暴體追蹤算法研究[J]. 計算機應用, 2008, 28(4):1078-1080.(LI Y J, HAN L. Storm tracking algorithm development based on the three-dimensional radar image data[J]. Journal of Computer Applications, 2008, 28(4): 1078-1080.)
[5] 王海艷, 伏彩航. 基于HBase數據分類的壓縮策略選擇方法[J]. 通信學報, 2016, 37(4):12-22.(WANG H Y, FU C H. Compression strategies selection method based on classification of HBase data[J]. Journal on Communications, 2016, 37(4):12-22.)
[6] 董春濤, 李文婷, 沈晴霓, 等. Hadoop YARN大數據計算框架及其資源調度機制研究[J]. 信息通信技術, 2015(1):77-84.(DONG C T, LI W T, SHEN Q N, et al. Research on the framework and resource scheduling mechanisms of Hadoop YARN[J]. Information and Communications Technologies, 2015(1):77-84.)
[7] KARUN A K, CHITHARANJAN K. A review on Hadoop — HDFS infrastructure extensions[C]// Proceedings of the 2013 IEEE Conference on Information and Communication Technologies. Piscataway, NJ: IEEE, 2013:132-137.
[8] VORA M N. Hadoop-HBase for large-scale data[C]// Proceedings of the 2011 International Conference on Computer Science and Network Technology. Piscataway, NJ: IEEE, 2011,1:601-605.
[9] DITTRICH J, QUIANé-RUIZ J A. Efficient big data processing in Hadoop MapReduce[J]. Proceedings of the VLDB Endowment, 2012, 5(12):2014-2015.
[10] 張海懿, 張國穎, 徐云斌. 軟件定義傳送網標準化發展探討與思考[J]. 中興通訊技術, 2015, 21(6):45-48.(ZHANG H Y, ZHANG G Y, XU Y B. Standardization development of software-defined transport networks[J]. ZTE Communications, 2015,21(6):45-48.)
[11] 王想紅,劉紀平,徐勝華,等. 基于NetCDF數據模型的海洋環境數據三維可視化研究[J]. 測繪科學, 2013, 38(2):59-61.(WANG X H, LIU J P, XU S H, et al. Visualization of marine environment data based on NetCDF data model[J]. Science of Surveying and Mapping, 2013, 38(2):59-61.)
ZENG Qin, born in 1975, M. S., senior engineer. His research interests include big data, cloud computing, precise forecast, meteorological big data analysis.
LI Yongsheng, born in 1980, M. S., senior engineer. His research interests include big data, cloud computing, massive data storage, meteorological big data analysis.
Three dimensional strom tracking method based on distributed computing architecture
ZENG Qin1*, LI Yongsheng2
(1. Guangdong Meteorological Observatory, Guangzhou Guangdong 510080, China;2. Guangdong Meteorological Observation Data Center, Guangzhou Guangdong 510080, China)
In recent years, meteorological data increases dramatically, and the amount of data has been TB-per-hour-level. The traditional relational database and file storage system have troubles in the massive data storage and management, thus large-scale and heterogeneous meteorological data cannot also be used effectively in meteorological business. Furthermore, it would be also difficult for scientific researchers to efficiently explore the huge amount of heterogeneous meteorological data. In order to tackle these problems, researchers have developed many types of distributed computing frameworks based on MapReduce and HBase, etc., which provide an effective way to exploit large-scale meteorological data. The distributed computing and storing techniques have been tested separately in applications of meteorology field. However, to our best knowledge, these techniques have not been carefully studied jointly. Therefore, a new 3D storm tracking method based on the combination of MapReduce and Hbase was studied by using a large amount of weather radar data accumulated in recent years. Moreover, based on the original Rest interface, a series of distributed service interfaces were implemented for exploring a variety of point, line and surface data. Compared with the performance of the standard single data storage and access interface based on Rest, the proposed method has better comprehensive performance, and the efficiency is improved about 100%. A practical application for tracking 3D storm in Zhujiang River urban agglomeration from 2007 to 2009 was used to further validate the performance of the proposed method.
distributed computing framework; storm tracking method; long time series analysis
2016- 10- 08;
2017- 01- 06。
曾沁(1975—),男,廣東梅州人,高級工程師,碩士,主要研究方向:大數據、云計算、精細化預報、氣象大數據分析; 李永生(1980—),男,內蒙古赤峰人,高級工程師,碩士,主要研究方向:大數據、云計算、海量數據存儲、氣象大數據分析。
1001- 9081(2017)04- 0941- 04
10.11772/j.issn.1001- 9081.2017.04.0941
TP391.7
A