徐娟,劉洋
(甘肅省氣象信息與技術裝備保障中心,甘肅 蘭州 730020)
MICAPS4(Meteorology Information Comprehensive Analysis Process System Version 4)體系采用客戶端/服務器的系統架構,MICAPS4服務端系統分為分布式存儲系統、分布式前處理系統、站點實況輪詢系統、查詢服務器系統和監控系統5個子系統[1],通過對分布式存儲系統高可用性、讀取性能的測試和實際業務應用表明,分布式MICAPS4系統在海量氣象數據和大量用戶并發訪問的環境下,表現出很高的穩定性和優越的讀寫性能,系統顯著提升了數據解析及數據存儲訪問效率,提高了MICAPS客戶端對實時氣象數據的檢索效率[2-3]。系統一級部署,三級應用,實現了數據的省級單點更新和市縣兩級人員對該系統的“零”維護,極大減輕了各級臺站的系統運維壓力[4],加之該系統便捷的擴展性,使其在全國氣象行業用戶業務應用中占有十分重要的地位。
根據《氣象信息系統集約化管理辦法》(氣發〔2018〕117號)對硬件集約化、數據集約化、流程集約化、平臺集約化、監控集約化的總體要求,為便于與行業用戶進行隔離管理,在省級虛擬化資源池搭建了一套專為同城用戶提供服務的分布式MICAPS4系統。該系統由5臺虛擬機構成,3臺作為Cassandra數據庫集群服務器,2臺作為DPC處理服務器。數據庫集群服務器安裝Red Hat Enterprise Linux 7(64-bit)操作系統,配置16核CPU,64 G內存,掛載1 T硬盤,數據庫版本為apache-cassandra-2.2.5,2臺DPC處理服務器均安裝Red Hat Enterprise Linux 7(64-bit)操作系統,配置16核CPU,128 G內存,掛載1 T硬盤,其中一臺兼做數據查詢服務器,另一臺則同時部署了站點實況輪詢系統。并且5臺服務器均在指定目錄下部署發送DI(Detail Inforamation,詳細信息,簡稱DI)和EI(Event Inforamation,事件信息,簡稱EI)的BDMonitor探針,在服務異常時便可進行告警,方便系統運維和數據服務人員能夠及時進行故障處理。省級同城用戶分布式MICAPS4服務系統架構如圖1所示。

圖1 省級同城用戶分布式MICAPS4服務系統架構
全國綜合氣象信息共享平臺(China Integrated Meteorological Information Sharing System,簡稱CIMISS)的氣象通信系統2.0(China Telecommunication System 2.0,簡稱CTS2.0)承擔著甘肅省氣象數據收發的主要任務,是實現氣象數據上行傳輸、歸檔備份、解碼入庫以及數據共享服務的重要基礎和保障;氣象數據統一服務接口(Meteorological Unified Service Interface Community,簡稱MUSIC),基于國省統一的數據環境CIMISS,面向氣象業務和科研,提供全國統一、標準、豐富的數據訪問服務和應用編程接口,為國、省、地、縣各級應用系統提供唯一權威的數據接入服務。2020年,氣象大數據云平臺“天擎”在甘肅省建設部署,系統采用大數據、云計算、分布式等先進設計技術,包括數據交換及質控、產品加工、數據存儲與服務等核心子系統,實現了海量氣象數據的快速收集存儲、產品在線處理和數據高效訪問等服務能力。平臺具備數據直傳、產品直算和服務直通能力,初步實現了“數算一體”平臺化服務,可支撐氣象業務應用系統融入,對建立“云+端”氣象業務技術體制發揮了重要作用[5]。
隨著氣象大數據云平臺的建設和應用,CIMISS接口服務進行了元數據庫的遷移和應用的重新部署,兼容版接口能夠實現數據源在CIMISS和氣象大數據云平臺之間的切換,但是API賬戶和數據調用方式與CIMISS保持一致,這也為氣象數據服務應用從CIMISS向氣象大數據云平臺的過渡提供了有力保障。此外,Linux Shell腳本在氣象數據共享服務中的應用亦十分廣泛。同城用戶分布式MICAPS4的數據主要以MUSIC接口、CTS2.0系統分發、Bash Shell腳本主動推送3種方式實現。
同城用戶少有氣象預報研究的需求,對氣象數據的種類需求較少,關注的氣象資料類型明確,針對性的數據推送可有效減輕系統壓力并保證數據處理時效。中國地面國家站和區域站實時資料、高空探測數據、地面和高空主客觀分析產品、EC細網格、西北地區多普勒雷達標準格式全體掃基數據、FY-4A衛星資料、華東區域模式產品等都是用戶關注度較高的氣象數據。氣象預報業務用戶關注氣象實況和天氣發展變化,另有部分用戶選擇分布式MICAPS4僅作為教學演示和個例分析。
地面和高空觀測的實時氣象數據由分布式MICAPS4系統從MUSIC接口讀取或通過直連CIMISS基礎庫(BDB)的方式獲取。地面和高空主客觀分析產品、多普勒雷達標準格式全體掃基數據、衛星資料等則由CTS2.0向MICAPS4的分布式前處理系統主動分發;華東區域模式產品則是以Linux Shell腳本的方式通過ftp主動模式推送至MICAPS4的分布式前處理系統。兼容版接口的部署使MICAPS4的接口數據調用繼承和延用了CIMISS的服務方式。在氣象大數據云平臺正式業務運行之前,為MICAPS4開設了業務系統接口賬戶進行與氣象大數據云平臺的數據源對接測試,測試效果良好,數據服務穩定可靠,目前甘肅已經初步實現了MICAPS4與氣象大數據云平臺的應用對接。省級同城用戶分布式MICAPS4氣象數據接入情況如圖2所示。

圖2 省級同城用戶分布式MICAPS4氣象數據接入情況
在大數據環境下,關系型數據庫在分散、異構、動態、海量的數據存儲中面臨不易擴展、性能低等難題,而面向異構資源的NoSQL(Not only SQL)數據庫能夠有效解決這些問題,在實際業務中,結合Spark、Storm大數據處理框架,Cassandra數據庫在長時間序列降水量統計、氣象預報服務系統構建與設計中已有廣泛應用[6-7]。Cassandra數據庫由Facebook公司開發,于2008年開源轉化為開源項目,是NoSQL數據庫系統。由于其良好的可擴放性,Cassandra已經成為了一種流行的分布式結構化數據存儲方案。它的分布式設計基于Amazon Dynamo,可以運行在多臺機器上,并以一個一致的整體呈現給用戶。Cassandra分布式數據庫具有可擴展性,能夠在不降低性能的情況下繼續為更多請求提供服務。在Cassandra中,每個節點是獨立的,同時與其他節點互聯,集群中的所有節點扮演相同的角色,每個節點都可以接收讀取和寫入請求,當集群節點故障時可以實現不中斷系統來更換故障節點,期間讀/寫請求可以由網絡中的其他節點提供[8]。系統在多個節點上存儲副本以確保數據的可用性和容錯性[9]。
Cassandra數據表的設計和實現根據實時氣象數據多維索引和用戶行為分析得出,實時氣象數據模型具有多維度、部分有序、部分無序的特點,常用操作包括有序維度按序遍歷、無序維度隨機訪問數據等。MICAPS4的Cassandra數據存儲利用維度索引表和數據表實現了數據的上下快速翻頁,設計列族實現最新數據的快速模糊查找[10]。
MICAPS用戶多年來一直使用文件系統URL進行元數據瀏覽,該方法可使用戶方便直觀地查看服務器當前存儲了哪些氣象數據,分布式MICAPS4也保留了此項功能,但是MICAPS4是通過建立模擬文件系統的仿真環境,才達到使用戶能夠像同原有(MICAPS3的)Samba文件系統一樣進行交互操作的功能[10]。分布式MICAPS4提供Samba數據源訪問方式,結合“樹形檢索”結構,將MICAPS產品按照MICAPS4菜單結合綜合圖建立目錄樹,使MICAPS產品與綜合圖配置的路徑相對應,便可實現離線數據通過菜單欄的自動調閱和可視化顯示。
標題欄。MICAPS4界面的頂部為標題欄,通過客戶端配置文件MICAPS.exe.config可實現標題欄顯示文字的修改。
數據源。MICAPS4系統引入了“分布式高速緩存”服務器的概念,用多臺分布式數據存儲解決氣象海量數據的高并發高速訪問所帶來的問題(稱為MDFS服務)。MICAPS4默認的數據源配置文件(config/datasources.ini)中使用4個數據源,MDFS服務通過搭建在CIMISS系統之上的數據集群提供在線數據訪問。Samba為MICAPS3(Meteorology Information Comprehensive Analysis Process System Version 3)傳統數據源,使用“共享文件夾”方式提供數據訪問。若用戶需要對已離線保存的MICAPS數據產品進行菜單調閱顯示,則需要將離線數據源目錄、綜合圖、菜單項一一對應進行配置,MICAPS4提供了獨立的程序(MICAPSSystemEditor.exe)用來配置和遷移綜合圖與菜單項。
菜單。MICAPS4默認的菜單顯示超出了同城用戶使用的資料范圍,無資料顯示會給用戶帶來不良使用體驗,按照實際資料接入將菜單進行裁剪和改良,按需減少菜單分級,使用戶能夠快速找到資料并進行檢索訪問。該文件格式與MICAPS3相同,用戶亦可復用MICAPS3中已配置好的綜合圖,給用戶帶來良好的客戶端切換體驗。分布式MICAPS4兼容MICAPS3格式產品、綜合圖文件、MICAPS標準格式文件以及可執行文件,用戶可將自己關注的站點按照MICAPS站點格式進行配置,采用MICAPS4客戶端“打開文件”選項或直接加入菜單調用來疊加顯示站號站名等信息。
圖片保存。用戶在使用氣象資料分析工具時,往往希望保存當前客戶端圖片,MICAPS4提供了“專題圖制作模式”,允許用戶通過“可見即所得”的方式制作專題圖。用戶通過修改客戶端配置文件set.ini便能實現對所要保存圖片邊框顏色、寬度、版權所有者信息及文字屬性、邊框經緯度標注信息、圖層描述信息,輸出圖片的尺寸大小的個性化設置。
MICAPS4客戶端自2016年6月正式向全國發布,截至2021-06-01,已進行多次版本升級更新,64位版本更新至MICAPS4.7.0,連接外網用戶可通過菜單項“檢查更新”將客戶端自動升級為最新版本,客戶端升級不會影響用戶已修改的本地配置文件。其他用戶下載并安裝最新版MICAPS4客戶端軟件進行安裝使用,若要保持配置不變,需要將舊版本配置文件替換至新版本相應目錄。MICAPS4.7.0單站雷達模塊和雷達終端模塊增加了自動判定算法,可實現在不修改配置文件情況下標準格式、原格式雷達基數據的調閱顯示。在雷達數據標準化運行之后,實際業務應用出現了MICAPS4客戶端無法調閱單站多普勒雷達基數據的情況,通過客戶端升級便可解決。
分布式MICAPS4作為氣象數據的展示和分析平臺,客戶端易于安裝,實時氣象數據調用快速響應且數據顯示直觀,由于通過MUSIC接口訪問業務生產環境數據庫,數據是否正常調閱顯示已成為省級氣象信息系統全流程健康狀況監視和實時氣象數據保障的重要參考依據。
本文討論了分布式MICAPS4系統在省級同城用戶氣象數據共享服務應用中的系統搭建、數據接入、Cassandra分布式數據庫集群應用、客戶端配置等問題。分布式MICAPS4作為預報核心業務系統的支撐平臺,憑借其良好的系統穩定性、可靠的數據寫入和讀取、豐富的自定義配置功能,為省級同城用戶的氣象數據服務提供了強有力的技術支撐,并作為氣象信息系統監視的輔助工具在系統維護保障中發揮著重要作用。