徐娟,劉洋
(甘肅省氣象信息與技術(shù)裝備保障中心,甘肅 蘭州 730020)
MICAPS4(Meteorology Information Comprehensive Analysis Process System Version 4)體系采用客戶端/服務(wù)器的系統(tǒng)架構(gòu),MICAPS4服務(wù)端系統(tǒng)分為分布式存儲(chǔ)系統(tǒng)、分布式前處理系統(tǒng)、站點(diǎn)實(shí)況輪詢系統(tǒng)、查詢服務(wù)器系統(tǒng)和監(jiān)控系統(tǒng)5個(gè)子系統(tǒng)[1],通過對(duì)分布式存儲(chǔ)系統(tǒng)高可用性、讀取性能的測(cè)試和實(shí)際業(yè)務(wù)應(yīng)用表明,分布式MICAPS4系統(tǒng)在海量氣象數(shù)據(jù)和大量用戶并發(fā)訪問的環(huán)境下,表現(xiàn)出很高的穩(wěn)定性和優(yōu)越的讀寫性能,系統(tǒng)顯著提升了數(shù)據(jù)解析及數(shù)據(jù)存儲(chǔ)訪問效率,提高了MICAPS客戶端對(duì)實(shí)時(shí)氣象數(shù)據(jù)的檢索效率[2-3]。系統(tǒng)一級(jí)部署,三級(jí)應(yīng)用,實(shí)現(xiàn)了數(shù)據(jù)的省級(jí)單點(diǎn)更新和市縣兩級(jí)人員對(duì)該系統(tǒng)的“零”維護(hù),極大減輕了各級(jí)臺(tái)站的系統(tǒng)運(yùn)維壓力[4],加之該系統(tǒng)便捷的擴(kuò)展性,使其在全國(guó)氣象行業(yè)用戶業(yè)務(wù)應(yīng)用中占有十分重要的地位。
根據(jù)《氣象信息系統(tǒng)集約化管理辦法》(氣發(fā)〔2018〕117號(hào))對(duì)硬件集約化、數(shù)據(jù)集約化、流程集約化、平臺(tái)集約化、監(jiān)控集約化的總體要求,為便于與行業(yè)用戶進(jìn)行隔離管理,在省級(jí)虛擬化資源池搭建了一套專為同城用戶提供服務(wù)的分布式MICAPS4系統(tǒng)。該系統(tǒng)由5臺(tái)虛擬機(jī)構(gòu)成,3臺(tái)作為Cassandra數(shù)據(jù)庫(kù)集群服務(wù)器,2臺(tái)作為DPC處理服務(wù)器。數(shù)據(jù)庫(kù)集群服務(wù)器安裝Red Hat Enterprise Linux 7(64-bit)操作系統(tǒng),配置16核CPU,64 G內(nèi)存,掛載1 T硬盤,數(shù)據(jù)庫(kù)版本為apache-cassandra-2.2.5,2臺(tái)DPC處理服務(wù)器均安裝Red Hat Enterprise Linux 7(64-bit)操作系統(tǒng),配置16核CPU,128 G內(nèi)存,掛載1 T硬盤,其中一臺(tái)兼做數(shù)據(jù)查詢服務(wù)器,另一臺(tái)則同時(shí)部署了站點(diǎn)實(shí)況輪詢系統(tǒng)。并且5臺(tái)服務(wù)器均在指定目錄下部署發(fā)送DI(Detail Inforamation,詳細(xì)信息,簡(jiǎn)稱DI)和EI(Event Inforamation,事件信息,簡(jiǎn)稱EI)的BDMonitor探針,在服務(wù)異常時(shí)便可進(jìn)行告警,方便系統(tǒng)運(yùn)維和數(shù)據(jù)服務(wù)人員能夠及時(shí)進(jìn)行故障處理。省級(jí)同城用戶分布式MICAPS4服務(wù)系統(tǒng)架構(gòu)如圖1所示。
圖1 省級(jí)同城用戶分布式MICAPS4服務(wù)系統(tǒng)架構(gòu)
全國(guó)綜合氣象信息共享平臺(tái)(China Integrated Meteorological Information Sharing System,簡(jiǎn)稱CIMISS)的氣象通信系統(tǒng)2.0(China Telecommunication System 2.0,簡(jiǎn)稱CTS2.0)承擔(dān)著甘肅省氣象數(shù)據(jù)收發(fā)的主要任務(wù),是實(shí)現(xiàn)氣象數(shù)據(jù)上行傳輸、歸檔備份、解碼入庫(kù)以及數(shù)據(jù)共享服務(wù)的重要基礎(chǔ)和保障;氣象數(shù)據(jù)統(tǒng)一服務(wù)接口(Meteorological Unified Service Interface Community,簡(jiǎn)稱MUSIC),基于國(guó)省統(tǒng)一的數(shù)據(jù)環(huán)境CIMISS,面向氣象業(yè)務(wù)和科研,提供全國(guó)統(tǒng)一、標(biāo)準(zhǔn)、豐富的數(shù)據(jù)訪問服務(wù)和應(yīng)用編程接口,為國(guó)、省、地、縣各級(jí)應(yīng)用系統(tǒng)提供唯一權(quán)威的數(shù)據(jù)接入服務(wù)。2020年,氣象大數(shù)據(jù)云平臺(tái)“天擎”在甘肅省建設(shè)部署,系統(tǒng)采用大數(shù)據(jù)、云計(jì)算、分布式等先進(jìn)設(shè)計(jì)技術(shù),包括數(shù)據(jù)交換及質(zhì)控、產(chǎn)品加工、數(shù)據(jù)存儲(chǔ)與服務(wù)等核心子系統(tǒng),實(shí)現(xiàn)了海量氣象數(shù)據(jù)的快速收集存儲(chǔ)、產(chǎn)品在線處理和數(shù)據(jù)高效訪問等服務(wù)能力。平臺(tái)具備數(shù)據(jù)直傳、產(chǎn)品直算和服務(wù)直通能力,初步實(shí)現(xiàn)了“數(shù)算一體”平臺(tái)化服務(wù),可支撐氣象業(yè)務(wù)應(yīng)用系統(tǒng)融入,對(duì)建立“云+端”氣象業(yè)務(wù)技術(shù)體制發(fā)揮了重要作用[5]。
隨著氣象大數(shù)據(jù)云平臺(tái)的建設(shè)和應(yīng)用,CIMISS接口服務(wù)進(jìn)行了元數(shù)據(jù)庫(kù)的遷移和應(yīng)用的重新部署,兼容版接口能夠?qū)崿F(xiàn)數(shù)據(jù)源在CIMISS和氣象大數(shù)據(jù)云平臺(tái)之間的切換,但是API賬戶和數(shù)據(jù)調(diào)用方式與CIMISS保持一致,這也為氣象數(shù)據(jù)服務(wù)應(yīng)用從CIMISS向氣象大數(shù)據(jù)云平臺(tái)的過渡提供了有力保障。此外,Linux Shell腳本在氣象數(shù)據(jù)共享服務(wù)中的應(yīng)用亦十分廣泛。同城用戶分布式MICAPS4的數(shù)據(jù)主要以MUSIC接口、CTS2.0系統(tǒng)分發(fā)、Bash Shell腳本主動(dòng)推送3種方式實(shí)現(xiàn)。
同城用戶少有氣象預(yù)報(bào)研究的需求,對(duì)氣象數(shù)據(jù)的種類需求較少,關(guān)注的氣象資料類型明確,針對(duì)性的數(shù)據(jù)推送可有效減輕系統(tǒng)壓力并保證數(shù)據(jù)處理時(shí)效。中國(guó)地面國(guó)家站和區(qū)域站實(shí)時(shí)資料、高空探測(cè)數(shù)據(jù)、地面和高空主客觀分析產(chǎn)品、EC細(xì)網(wǎng)格、西北地區(qū)多普勒雷達(dá)標(biāo)準(zhǔn)格式全體掃基數(shù)據(jù)、FY-4A衛(wèi)星資料、華東區(qū)域模式產(chǎn)品等都是用戶關(guān)注度較高的氣象數(shù)據(jù)。氣象預(yù)報(bào)業(yè)務(wù)用戶關(guān)注氣象實(shí)況和天氣發(fā)展變化,另有部分用戶選擇分布式MICAPS4僅作為教學(xué)演示和個(gè)例分析。
地面和高空觀測(cè)的實(shí)時(shí)氣象數(shù)據(jù)由分布式MICAPS4系統(tǒng)從MUSIC接口讀取或通過直連CIMISS基礎(chǔ)庫(kù)(BDB)的方式獲取。地面和高空主客觀分析產(chǎn)品、多普勒雷達(dá)標(biāo)準(zhǔn)格式全體掃基數(shù)據(jù)、衛(wèi)星資料等則由CTS2.0向MICAPS4的分布式前處理系統(tǒng)主動(dòng)分發(fā);華東區(qū)域模式產(chǎn)品則是以Linux Shell腳本的方式通過ftp主動(dòng)模式推送至MICAPS4的分布式前處理系統(tǒng)。兼容版接口的部署使MICAPS4的接口數(shù)據(jù)調(diào)用繼承和延用了CIMISS的服務(wù)方式。在氣象大數(shù)據(jù)云平臺(tái)正式業(yè)務(wù)運(yùn)行之前,為MICAPS4開設(shè)了業(yè)務(wù)系統(tǒng)接口賬戶進(jìn)行與氣象大數(shù)據(jù)云平臺(tái)的數(shù)據(jù)源對(duì)接測(cè)試,測(cè)試效果良好,數(shù)據(jù)服務(wù)穩(wěn)定可靠,目前甘肅已經(jīng)初步實(shí)現(xiàn)了MICAPS4與氣象大數(shù)據(jù)云平臺(tái)的應(yīng)用對(duì)接。省級(jí)同城用戶分布式MICAPS4氣象數(shù)據(jù)接入情況如圖2所示。
圖2 省級(jí)同城用戶分布式MICAPS4氣象數(shù)據(jù)接入情況
在大數(shù)據(jù)環(huán)境下,關(guān)系型數(shù)據(jù)庫(kù)在分散、異構(gòu)、動(dòng)態(tài)、海量的數(shù)據(jù)存儲(chǔ)中面臨不易擴(kuò)展、性能低等難題,而面向異構(gòu)資源的NoSQL(Not only SQL)數(shù)據(jù)庫(kù)能夠有效解決這些問題,在實(shí)際業(yè)務(wù)中,結(jié)合Spark、Storm大數(shù)據(jù)處理框架,Cassandra數(shù)據(jù)庫(kù)在長(zhǎng)時(shí)間序列降水量統(tǒng)計(jì)、氣象預(yù)報(bào)服務(wù)系統(tǒng)構(gòu)建與設(shè)計(jì)中已有廣泛應(yīng)用[6-7]。Cassandra數(shù)據(jù)庫(kù)由Facebook公司開發(fā),于2008年開源轉(zhuǎn)化為開源項(xiàng)目,是NoSQL數(shù)據(jù)庫(kù)系統(tǒng)。由于其良好的可擴(kuò)放性,Cassandra已經(jīng)成為了一種流行的分布式結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)方案。它的分布式設(shè)計(jì)基于Amazon Dynamo,可以運(yùn)行在多臺(tái)機(jī)器上,并以一個(gè)一致的整體呈現(xiàn)給用戶。Cassandra分布式數(shù)據(jù)庫(kù)具有可擴(kuò)展性,能夠在不降低性能的情況下繼續(xù)為更多請(qǐng)求提供服務(wù)。在Cassandra中,每個(gè)節(jié)點(diǎn)是獨(dú)立的,同時(shí)與其他節(jié)點(diǎn)互聯(lián),集群中的所有節(jié)點(diǎn)扮演相同的角色,每個(gè)節(jié)點(diǎn)都可以接收讀取和寫入請(qǐng)求,當(dāng)集群節(jié)點(diǎn)故障時(shí)可以實(shí)現(xiàn)不中斷系統(tǒng)來更換故障節(jié)點(diǎn),期間讀/寫請(qǐng)求可以由網(wǎng)絡(luò)中的其他節(jié)點(diǎn)提供[8]。系統(tǒng)在多個(gè)節(jié)點(diǎn)上存儲(chǔ)副本以確保數(shù)據(jù)的可用性和容錯(cuò)性[9]。
Cassandra數(shù)據(jù)表的設(shè)計(jì)和實(shí)現(xiàn)根據(jù)實(shí)時(shí)氣象數(shù)據(jù)多維索引和用戶行為分析得出,實(shí)時(shí)氣象數(shù)據(jù)模型具有多維度、部分有序、部分無序的特點(diǎn),常用操作包括有序維度按序遍歷、無序維度隨機(jī)訪問數(shù)據(jù)等。MICAPS4的Cassandra數(shù)據(jù)存儲(chǔ)利用維度索引表和數(shù)據(jù)表實(shí)現(xiàn)了數(shù)據(jù)的上下快速翻頁(yè),設(shè)計(jì)列族實(shí)現(xiàn)最新數(shù)據(jù)的快速模糊查找[10]。
MICAPS用戶多年來一直使用文件系統(tǒng)URL進(jìn)行元數(shù)據(jù)瀏覽,該方法可使用戶方便直觀地查看服務(wù)器當(dāng)前存儲(chǔ)了哪些氣象數(shù)據(jù),分布式MICAPS4也保留了此項(xiàng)功能,但是MICAPS4是通過建立模擬文件系統(tǒng)的仿真環(huán)境,才達(dá)到使用戶能夠像同原有(MICAPS3的)Samba文件系統(tǒng)一樣進(jìn)行交互操作的功能[10]。分布式MICAPS4提供Samba數(shù)據(jù)源訪問方式,結(jié)合“樹形檢索”結(jié)構(gòu),將MICAPS產(chǎn)品按照MICAPS4菜單結(jié)合綜合圖建立目錄樹,使MICAPS產(chǎn)品與綜合圖配置的路徑相對(duì)應(yīng),便可實(shí)現(xiàn)離線數(shù)據(jù)通過菜單欄的自動(dòng)調(diào)閱和可視化顯示。
標(biāo)題欄。MICAPS4界面的頂部為標(biāo)題欄,通過客戶端配置文件MICAPS.exe.config可實(shí)現(xiàn)標(biāo)題欄顯示文字的修改。
數(shù)據(jù)源。MICAPS4系統(tǒng)引入了“分布式高速緩存”服務(wù)器的概念,用多臺(tái)分布式數(shù)據(jù)存儲(chǔ)解決氣象海量數(shù)據(jù)的高并發(fā)高速訪問所帶來的問題(稱為MDFS服務(wù))。MICAPS4默認(rèn)的數(shù)據(jù)源配置文件(config/datasources.ini)中使用4個(gè)數(shù)據(jù)源,MDFS服務(wù)通過搭建在CIMISS系統(tǒng)之上的數(shù)據(jù)集群提供在線數(shù)據(jù)訪問。Samba為MICAPS3(Meteorology Information Comprehensive Analysis Process System Version 3)傳統(tǒng)數(shù)據(jù)源,使用“共享文件夾”方式提供數(shù)據(jù)訪問。若用戶需要對(duì)已離線保存的MICAPS數(shù)據(jù)產(chǎn)品進(jìn)行菜單調(diào)閱顯示,則需要將離線數(shù)據(jù)源目錄、綜合圖、菜單項(xiàng)一一對(duì)應(yīng)進(jìn)行配置,MICAPS4提供了獨(dú)立的程序(MICAPSSystemEditor.exe)用來配置和遷移綜合圖與菜單項(xiàng)。
菜單。MICAPS4默認(rèn)的菜單顯示超出了同城用戶使用的資料范圍,無資料顯示會(huì)給用戶帶來不良使用體驗(yàn),按照實(shí)際資料接入將菜單進(jìn)行裁剪和改良,按需減少菜單分級(jí),使用戶能夠快速找到資料并進(jìn)行檢索訪問。該文件格式與MICAPS3相同,用戶亦可復(fù)用MICAPS3中已配置好的綜合圖,給用戶帶來良好的客戶端切換體驗(yàn)。分布式MICAPS4兼容MICAPS3格式產(chǎn)品、綜合圖文件、MICAPS標(biāo)準(zhǔn)格式文件以及可執(zhí)行文件,用戶可將自己關(guān)注的站點(diǎn)按照MICAPS站點(diǎn)格式進(jìn)行配置,采用MICAPS4客戶端“打開文件”選項(xiàng)或直接加入菜單調(diào)用來疊加顯示站號(hào)站名等信息。
圖片保存。用戶在使用氣象資料分析工具時(shí),往往希望保存當(dāng)前客戶端圖片,MICAPS4提供了“專題圖制作模式”,允許用戶通過“可見即所得”的方式制作專題圖。用戶通過修改客戶端配置文件set.ini便能實(shí)現(xiàn)對(duì)所要保存圖片邊框顏色、寬度、版權(quán)所有者信息及文字屬性、邊框經(jīng)緯度標(biāo)注信息、圖層描述信息,輸出圖片的尺寸大小的個(gè)性化設(shè)置。
MICAPS4客戶端自2016年6月正式向全國(guó)發(fā)布,截至2021-06-01,已進(jìn)行多次版本升級(jí)更新,64位版本更新至MICAPS4.7.0,連接外網(wǎng)用戶可通過菜單項(xiàng)“檢查更新”將客戶端自動(dòng)升級(jí)為最新版本,客戶端升級(jí)不會(huì)影響用戶已修改的本地配置文件。其他用戶下載并安裝最新版MICAPS4客戶端軟件進(jìn)行安裝使用,若要保持配置不變,需要將舊版本配置文件替換至新版本相應(yīng)目錄。MICAPS4.7.0單站雷達(dá)模塊和雷達(dá)終端模塊增加了自動(dòng)判定算法,可實(shí)現(xiàn)在不修改配置文件情況下標(biāo)準(zhǔn)格式、原格式雷達(dá)基數(shù)據(jù)的調(diào)閱顯示。在雷達(dá)數(shù)據(jù)標(biāo)準(zhǔn)化運(yùn)行之后,實(shí)際業(yè)務(wù)應(yīng)用出現(xiàn)了MICAPS4客戶端無法調(diào)閱單站多普勒雷達(dá)基數(shù)據(jù)的情況,通過客戶端升級(jí)便可解決。
分布式MICAPS4作為氣象數(shù)據(jù)的展示和分析平臺(tái),客戶端易于安裝,實(shí)時(shí)氣象數(shù)據(jù)調(diào)用快速響應(yīng)且數(shù)據(jù)顯示直觀,由于通過MUSIC接口訪問業(yè)務(wù)生產(chǎn)環(huán)境數(shù)據(jù)庫(kù),數(shù)據(jù)是否正常調(diào)閱顯示已成為省級(jí)氣象信息系統(tǒng)全流程健康狀況監(jiān)視和實(shí)時(shí)氣象數(shù)據(jù)保障的重要參考依據(jù)。
本文討論了分布式MICAPS4系統(tǒng)在省級(jí)同城用戶氣象數(shù)據(jù)共享服務(wù)應(yīng)用中的系統(tǒng)搭建、數(shù)據(jù)接入、Cassandra分布式數(shù)據(jù)庫(kù)集群應(yīng)用、客戶端配置等問題。分布式MICAPS4作為預(yù)報(bào)核心業(yè)務(wù)系統(tǒng)的支撐平臺(tái),憑借其良好的系統(tǒng)穩(wěn)定性、可靠的數(shù)據(jù)寫入和讀取、豐富的自定義配置功能,為省級(jí)同城用戶的氣象數(shù)據(jù)服務(wù)提供了強(qiáng)有力的技術(shù)支撐,并作為氣象信息系統(tǒng)監(jiān)視的輔助工具在系統(tǒng)維護(hù)保障中發(fā)揮著重要作用。