?

氣象大數據云平臺算法集約化環境設計與應用

2024-01-29 10:38何文春陳士旺徐擁軍
應用氣象學報 2024年1期
關鍵詞:流水線氣象調度

霍 慶 何文春* 何 林 高 峰 陳士旺 徐擁軍

1)(國家氣象信息中心, 北京 100081) 2)(陜西省氣象信息中心, 西安 710014)

引 言

氣象信息化是氣象現代化的重要標志[1]。經過多年發展,我國氣象部門氣象數據傳輸、處理、加工、存儲與服務等業務能力不斷增強,氣象信息化水平不斷提高。國家氣象信息中心先后建立了國家級氣象資料存儲檢索系統(MDSS)和全國綜合氣象信息共享系統(CIMISS),逐步實現氣象數據環境在全國的統一[2-5],具備一定的數據產品加工能力[6],一定程度上實現數據的統一供給。隨著氣象業務的發展,各業務系統紛紛構建自己的產品加工系統和配套數據管理系統[7-16],但也產生了一個難以回避的問題,即數據孤島與應用煙囪,是氣象業務不集約的表現[17-18]。

氣象業務的不集約會帶來諸多問題[19-22]:①針對相似的應用場景,數據標準不統一,運維難度大。②各業務系統自建數據庫,數據重復存儲,造成巨大浪費。③數據本地化存儲,因同步不及時導致數據不一致。④業務系統獨立開發與運行,導致嚴重的信息與技術壁壘,上下游業務無法聯動。

近年中國氣象局陸續印發多個氣象信息化頂層設計,其中《氣象大數據行動計劃(2017—2020年)》[23]首次提出建設氣象大數據云平臺,明確以氣象大數據云平臺為云、氣象業務系統為端的“云+端”業務技術體制[24-26],實現數據管理、加工處理、應用服務的高度集約,促進業務系統有效銜接、高效協同。國家氣象信息中心于2018年設計建設氣象大數據云平臺(簡稱天擎),2021年12月實現業務運行。天擎設計定位為全國氣象業務的基礎性平臺,基于混合云提供數算一體的平臺化服務,系統包括交換及質量控制、存儲與服務、加工流水線、門戶網站等[27]。

加工流水線是天擎實現算法統一管理與集約運行、消除應用煙囪、實現“云+端”業務技術體制的重要基礎。本文在分析業務需求的基礎上,詳細介紹加工流水線的功能設計、關鍵技術、算法云化集成、應用效益,并對未來發展方向進行展望。

1 業務需求

氣象業務對數據產品加工的需求,可以分為3個層面:①單一業務系統更關注產品生成效率和穩定性,要求算法高效調度、穩定運行,及時生成數據產品。②不同業務系統之間要求數據產品共享,實現協同聯動。③全局氣象業務期望集約高效,形成“云+端”業務技術體制,提高整體運行效能。

1.1 數據產品加工高效及穩定需求

氣象數據產品及其加工算法是氣象業務的核心,算法的高效、穩定調度運行是保障產品能否及時、穩定生成的基礎條件。算法調度需要建立集約、高效的調度框架,實現定時、實時等多種調度策略。數算一體是算法高效運行的重要手段,算法靠近數據,減少數據搬運,提升數據的讀寫效率及算法運行時效。

1.2 業務系統數據共享及協同需求

數據、算法、算力是氣象業務的基礎三要素,三者協同共享對提升氣象業務效率和實現高質量發展至關重要。應用煙囪和數據孤島導致數據產品僅在單一業務系統內循環,有待互聯互通,實現不同業務系統間的數據共享;數據共享流程亟待優化,減少傳輸、下載等流轉環節,實現數據生產者的直存與數據需求者的直取。共享先進算法可以減少重復研發,縮短業務系統的上線周期,統一管理算法,支持用戶獲取較全面的氣象算法清單。在保障各業務系統資源隔離的基礎上,實現算力資源充分共享是提升業務效能的重要手段。

1.3 業務應用高效集約運行需求

構建以天擎為云、氣象業務系統為端的“云+端”業務技術體制,是實現氣象業務集約化和高質量發展的必由之路。集約的數據環境和算法環境是云的核心能力,算法集約需實現氣象算法統一管理,支持版權控制下的共建共享,同時需具備豐富的算力資源和高并發的任務調度能力,支撐算法的高效調度運行。

2 技術設計

2.1 總體架構

加工流水線采用面向服務架構(SOA)的設計思想[28],各功能模塊實現面向服務的封裝,系統架構如圖1所示。依托于天擎的算力資源,加工流水線以算法庫和任務管控為核心,與天擎數據存儲共同構建數算一體的算法環境。算法庫實現算法的標準化,統一管理算法并共享;任務管控支持多種調度策略,以高可靠性與容錯性,支撐算法的高效、穩定調度運行。加工流水線面向應用前端將所有功能以接口形式開放調用?;跉庀髽I務綜合監控系統(簡稱天鏡),實現算法運行狀態的自動采集與異常告警。

圖1 加工流水線框架

2.2 功能設計

2.2.1 算法管理

算法管理實現算法注冊、算法審核、算法版本管理、算法清單與算法檢索、算法版權控制等,支撐用戶對氣象算法的發現、查看與共享,加工流水線算法管理流程見圖2。算法注冊實現算法向算法庫的提交,同時填報算法元數據。算法通過審核后進入算法清單,供用戶檢索查看。算法管理實現嚴格的版權控制,用戶向算法所有者申請使用權后才能使用。

圖2 加工流水線算法管理

2.2.2 任務定義

任務定義主要實現算法運行參數、算法運行節點、算法調度策略、算法日志管理策略、算法監控策略等配置(圖3)。通過新增任務確定任務名稱,向任務中添加算法并指定運行節點,實現任務、算法和算力資源的關聯。當一個任務由多個算法組成時,可以配置算法的上下游關系,確定算法運行時序。任務定義的核心是完成算法調度策略配置,選定調度方式并定義算法啟動時間等。算法監控策略配置包括算法調度運行監控策略和產品完整性監控策略配置,實現算法運行與天鏡的關聯與監控告警。任務定義支持用戶以可視化頁面操作的方式進行。

圖3 加工流水線任務定義

2.2.3 任務調度

任務調度根據任務定義中配置的調度策略實現算法的調度運行。任務調度是加工流水線的核心功能,支持多種任務調度策略,包括定時調度、人工調度、實時調度、順序調度和數據源感知調度等。其中,數據源感知調度實時分析數據到報狀態,在數據達到的第一時間啟動算法。

任務調度由調度服務端、調度客戶端(即計算節點)和消息中間件組成。調度服務端基于算法信息(包括算法ID、算法參數、算法執行命令、算法執行所需CPU和內存等)、任務信息(包括調度策略、任務可執行的計算節點等)和計算節點負載狀態生成調度指令,下發至調度客戶端,調度客戶端基于調度指令啟動并執行算法,將算法執行狀態、計算節點狀態等通過消息中間件反饋至調度服務端。任務調度流程見圖4。

圖4 加工流水線任務調度

2.2.4 任務管理

任務管理實現任務啟??刂?、任務運行狀態和日志查看以及任務人工補做。任務運行狀態和日志查看頁面展示任務的計劃執行開始時間、實際執行開始時間、執行結束時間、執行計算節點以及執行日志等。

2.2.5 功能開放接口

功能開放接口將加工流水線的主要功能以接口形式發布,支持應用系統前端直接調用,可以更有效地支撐“云+端”業務技術體制的建立,如圖5所示。加工流水線的功能開放接口包括算法管理接口和任務管理接口。

圖5 基于加工流水線功能開放接口構建“云+端”業務架構

2.2.6 可靠性設計

加工流水線的安全穩定運行對氣象業務至關重要。從技術層面采用3條措施提高加工流水線的安全穩定性:①調度服務端采用主備雙節點設計,實時監聽進程運行狀態和調度服務可用性,發生異常時主備自動切換。②計算節點基于容器技術,當某個計算節點出現故障時,實現算法向其他節點自動遷移。③基于天擎備份環境,算法在主備環境同時運行,異常狀態下應用系統可實現主備切換。

3 關鍵技術

3.1 數算一體技術

加工流水線實現氣象數據資源、算法資源、算力資源的一體化,數算一體的特性從3個方面予以保障:①算法靠近數據,天擎同時承載氣象數據管理與氣象算法運行,算法向加工流水線部署的過程,即算法向數據靠攏的過程,減少數據搬運與傳輸。②加工流水線上的算法可以訪問數據庫,不用通過調用服務接口即可直接讀取或寫入數據。③存儲環境與加工流水線的計算環境在物理部署上高速互聯。加工流水線的數算一體特性顯著提升氣象數據產品的加工時效。

3.2 容器技術

天擎投入運行與應用前,氣象業務系統主要以虛擬機或物理機方式運行。物理機無法實現資源隔離,不同業務間會出現資源搶占,影響業務運行穩定性。虛擬機運算性能相對較低,一般用于支撐系統前端[29]。相比于物理機,容器實現了資源隔離,業務系統部署與遷移更便捷;相比于虛擬機,容器具備運算性能高、資源利用率高、啟動耗時短等特性[30-37]。

加工流水線的容器集群管理基于Kubernetes(K8s)實現,將集群系統分為管理節點和計算節點[38-39](圖6)。管理節點接收加工流水線調度服務端的調度指令,基于API管理服務、容器控制服務、容器調度服務、數據存儲組件等實現集群的資源管理、容器啟停與擴縮容、系統監控等。計算節點基于容器執行服務、容器網絡管理等組件,完成容器創建與容器狀態采集。管理節點和計算節點通過超文本傳輸協議http進行通信。

圖6 加工流水線容器技術

3.3 加工流程可視化技術

氣象數據產品加工任務一般由多個算法串接而成,如天氣雷達產品加工任務包含單站質量控制產品生成算法、單站圖片產品生成算法、組網產品生成算法和組網圖片產品生成算法(圖7)。加工流水線基于mxGraph實現可視化任務流程的創建、修改、編輯、串接等[40]。

圖7 加工流水線天氣雷達產品加工任務流程示意圖

4 算法云化集成

按照“云+端”業務技術體制的要求,前端應用部署在虛擬資源中,后端產品加工算法按照規范進行云化改造并部署于天擎上運行。算法云化要求輸入數據來自天擎、輸出產品回寫至天擎且進行產品注冊發布、算法由加工流水線統一調度運行、天鏡統一監視運行等。

算法云化集成的核心流程包括:天擎業務賬戶與數據訪問權限申請、算力資源申請、數據產品注冊、算法開發測試、算法鏡像封裝和算法集成運行。賬戶與數據訪問權限申請、算力資源申請和數據產品注冊等參見《天擎應用開發手冊》,本文主要介紹算法開發測試、算法鏡像封裝、算法集成運行的技術操作。

4.1 算法開發測試

基于天擎臨時容器資源進行算法開發測試,且須符合一定的開發規范,包括應用加工流水線的公共配置文件、輸入數據與輸出產品對接天擎存儲、監視信息對接天鏡等。天擎主備環境及省級節點各自的公共配置文件存儲著該節點的數據庫IP、服務接口域名、天鏡監視域名等公共信息。應用公共配置文件使算法在不同節點間的遷移部署更便捷,避免遷移時因公共配置不同而需對算法進行修改。數據訪問權限申請經審核通過,即可直連數據庫或服務接口讀取數據,直連數據庫所需的表名和字段名可在天擎門戶網站上查看。數據產品回存所需的存儲目錄或數據表,在產品注冊完成后自動創建。監視信息須按照天鏡的規范要求,通過接口發送至天鏡。

4.2 算法鏡像封裝

算法在臨時容器資源中完成開發與測試,在線完成算法鏡像一鍵封裝,存入加工流水線的鏡像倉庫。算法鏡像中包含算法實體、算法配置及算法依賴環境等,支撐算法的調度運行。

4.3 算法集成運行

算法集成運行包括算法注冊、加載部署及任務定義。算法注冊時需提交算法實體并填報算法元數據信息,經審核通過,加載部署實現算法與計算資源的關聯。任務定義的核心操作是配置算法的調度策略,如針對定時調度,通過可視化crontab的方式設定算法的定時啟動時間,針對數據源感知調度,需選定數據源(如中國地面自動站逐小時數據)并配置觸發閾值(如每個時次到報90%的站數)。完成任務定義,算法即可由流水線進行自動調度運行與生成產品。

5 業務應用效益

2021年12月15日加工流水線隨天擎開始全國業務運行,發揮業務效益:①實現算法統一管理,便于國省統一部署運維,同時基于加工流水線的數算一體、任務調度等技術,提升運行效率。②實現數據產品直存天擎,消除數據壁壘,有利于數據開放共享,且基于自然時序的數據源感知調度能夠串聯全業務鏈條,消除應用煙囪,提升各業務間的協同度。③建立“云+端”技術體制,初步實現“云+端”業務技術體制改革目標,構筑集約發展的基礎。

截至2023年11月底,全國有202個應用系統融入天擎并基于加工流水線業務運行。國省融入氣象算法6739個(圖8),氣象算法庫算法資源的規模效益初現,為國省算法共建共享提供基礎。

國家氣象中心的指揮決策分析系統(MESIS3.0)實現業務全流程深度融入天擎,40余個算法基于加工流水線調度運行,支撐超1000個數據產品的高效生產,系統在多次天氣過程中發揮重要作用。MESIS3.0融入天擎后,集約化程度和系統性能大幅提升,其中圖形產品加工效率由15 s提升至 5 s,極值統計效率提升近10倍。

國家氣象信息中心基于位置的實況服務系統完全基于天擎原生設計開發[41],為氣象部門提供統一、準確、高時空分辨率的天氣實況服務,2020年12月業務運行,實時支撐氣象實況微信小程序和中國氣象APP。融合站點分鐘觀測數據的實況格點產品基于加工流水線實時生成,實現溫度、降水、相對濕度、風等要素逐分鐘和能見度、天氣現象逐5 min快速更新。

中國氣象局氣象探測中心的天氣雷達拼圖系統V3.0于2023年4月開始基于天擎業務運行,實時生成單站和組網拼圖產品30余種,提供國省用戶應用。融入天擎后,應用加工流水線的數算一體和高效任務調度技術極大簡化業務流程,減少數據搬運耗時,提升算法運行效率,雷達產品生成與服務時效由6 min提升至1 min(圖9)。

圖9 基于加工流水線的天氣雷達拼圖系統V3.0優化效果(a)原流程,(b)現流程

6 小 結

本文在分析業務需求的基礎上,對加工流水線的總體架構、主要功能、關鍵技術等進行詳細介紹,并總結系統的業務應用效益:

1) 通過建立算法庫,實現國省氣象算法統一管理,集成氣象算法6739個,形成一定規模的氣象算法資產,為氣象算法的共建共享提供支撐。

2) 加工流水線建立數算一體、高效任務調度和加工流程可視化定義等技術,并充分應用容器技術,實現氣象數據產品加工任務的高效、集約調度運行。

3) 國省兩級業務應用證明加工流水線對提升氣象業務系統的運行效率、消除數據壁壘和應用煙囪、建立“云+端”業務技術體制、推進氣象業務集約發展具有重要支撐作用。

隨著大數據、云計算、人工智能等信息技術的不斷發展,加工流水線需不斷進行功能升級與性能提升:①應用DevOps思想實現流水線的敏捷開發與快速迭代升級,以快速響應多變的業務需求,減少系統升級對已運行業務的影響。②算法與資源調度需更加智能化,實現計算資源的動態擴縮容,提升資源利用效能。③建立完備的算法開發測試環境,支撐算法的高效開發、測試及向業務環境的一鍵遷移部署,提升算法業務上線的時效與規范性。

猜你喜歡
流水線氣象調度
Gen Z Migrant Workers Are Leaving the Assembly Line
氣象樹
《內蒙古氣象》征稿簡則
流水線
《調度集中系統(CTC)/列車調度指揮系統(TDCS)維護手冊》正式出版
一種基于負載均衡的Kubernetes調度改進算法
虛擬機實時遷移調度算法
大國氣象
美麗的氣象奇觀
報廢汽車拆解半自動流水線研究
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合