朱 亮,夏正龍,鐘艷雯,呂冠儒,歐陽計躍
(湖南省氣象信息中心,長沙 410118)
根據基層氣象災害預警服務能力建設指南的要求,湖南省氣象災害預警服務一體化平臺基于云端技術架構,采用B/S框架,以氣象站點觀測數據為基礎,GIS地圖為依托,各類防災減災業務人員信息、各類氣象防災減災數據為素材,湖南省級CIMISS(全國綜合氣象信息共享平臺)、MICAPS4(氣象信息綜合分析處理系統)、災情直報系統數據、遙感影像數據、天衍雷達產品、湖南短臨智能一體化平臺、突發事件預警系統,具備“數據綜合顯示分析、超閾值自動報警、氣象防災減災服務產品制作、預警服務信息發布、系統自動留痕、服務信息監控”等功能,支撐基層氣象防災減災其他“五個一”,是基層氣象災害預警服務不可或缺的工具。
氣象大數據云平臺具備海量數據存儲、全業務貫通、高效的數據應用能力,支撐各類氣象應用的云化融入,是推進資源整合、流程再造,發揮數據聚集規模效應,實現業務集約高效的關鍵,是促進形成“云+端”業務模式新格局的核心軟件技術平臺。目前,湖南氣象大數據云平臺正式上線,投入業務試運行,實現數據管理、加工處理、應用服務的高度集約,具備直接支撐應用云化改造的能力。各級氣象部門技術人員基于氣象大數據云平臺開展相關研究,山東基于省級氣象大數據云平臺,研究系統架構、功能以及實現的關鍵技術;青?;跉庀蟠髷祿破脚_的氣象數據統一訪問接口,總結了CIMISS和大數據云平臺數據服務接口的差異;交管風險管控平臺應用融入氣象大數據云平臺,從數據資源、存儲、計算、網絡、數據加工流程、算法、應用融入等方面都提供經驗和思考。本文按照氣象業務技術體制改革要求和《氣象信息系統集約化管理辦法》,遵循“天擎·湖南”相關技術規范,進行氣象災害預警服務一體化平臺云化改造,為推進“云+端”的氣象業務體系積累技術經驗。
氣象災害預警服務一體化平臺云化改造主要包括“云”的融入改造和業務系統“端”的融入改造。
(1)“云”的融入改造?!霸啤钡娜谌敫脑彀琁aaS層、PaaS層的融入改造。IaaS層融入:一體化平臺運行所需的計算、存儲等基礎設施資源由氣象大數據云平臺提供;PaaS層融入:氣象大數據云平臺提供實現氣象災害預警服務一體化平臺應用所需數據,提供管理和訪問的視圖,包括氣象大數據云平臺已有數據回寫的數據。
(2)“端”的融入改造。應用端融入改造包括實現氣象災害預警服務一體化平臺前端應用與后端管理的改造,包括指導產品、預警服務、一張圖、業務管理等模塊改造。
氣象災害預警服務一體化平臺按照“天擎·湖南”的技術規范,實現應用融入“天擎·湖南”,展現完整的“云+端”業務模態,所有涉及與用戶交互的功能都由“端”實現,包括后端管理和前端應用。“端”接收用戶交互指令后發出請求,后續動作均由“云”完成,如:任務調度、產品生成、數據存儲等,并返回結果給“端”?!霸啤迸c“端”之間通過接口實現。
氣象大數據云平臺提供數據、計算、存儲以及軟件服務等,如圖1所示。一體化平臺云化改造內容主要包括:采用PostgreSql數據庫存儲空間地理信息;采用虛谷數據庫存儲氣象防災減災數據、系統參數配置等數據信息;采用Redis數據庫存儲緩存信息等;采用NAS方式存儲平臺自用氣象業務指導產品等非結構化數據;前端應用通過Docker容器進行部署。平臺改造所需資源,均由“天擎·湖南”提供。

圖1 氣象災害預警服務一體化平臺云化改造架構Fig.1 The cloud transformation architecture of Hunan Province Meteorological Disaster warning service integration platform
氣象大數據云平臺是CIMISS的增強版,沿用CIMISS服務接口標準;沿用了CIMISS中資料代碼、接口代碼和參數名稱等信息;在客戶端調用、RESTful API調用、腳本調用方式上也與CIMISS服務基本一致。一體化平臺改造之前涉及的地面數據取自于CIMISS接口,只需將CIMISS的API用戶切換到天擎服務接口的API賬戶,使用天擎服務接口即可完成云化改造。
PostgreSQL是一個功能強大、源代碼開放的客戶/服務器關系型數據庫管理系統。PostGIS是PostgreSQL的空間擴展模塊,提供了空間對象、空間操作函數和空間操作符等空間信息服務功能。PostgreSQL的空間數據存儲機制是將地理空間數據的結構化屬性數據以關系表的形式存儲到空間數據表普通列中,在PostGIS支持的Geometry加入空間數據表中作為其一列,將地理空間數據的非結構化的空間數據構成Geometry對象作為該列的值,實現空間數據和屬性數據的統一存儲。一體化平臺的一張圖、預警服務功能需要支持地理信息數據在地圖上疊加、點選、圈選的突出顯示功能,如圖2所示。采用新增PostgreSQL管理站點信息、流域信息、鄉鎮街道信息等地理信息,將地圖上選擇的信息直接存儲到空間數據表。

圖2 地圖區域突出顯示Fig.2 Map areas are highlighted
虛谷數據庫采用關系模型數據庫,提供標準的SQL92語法,兼容Oracle語法,完全自動的分庫分表策略,將數據均衡分布到各個節點,具有較高的讀寫時效,機制成熟、可靠;提供強大的數據定義語言及數據操作語言,適合對站點數據的存儲和管理。天擎提供虛谷關系型數據庫,支持應用構建時對元數據和配置信息的存儲。一體化平臺利用虛谷數據庫存儲的內容包括兩大類:
(1)氣象防災減災數據,包括中小河流、山洪溝、中小學校、山塘水庫、旅游景區、預警發布設施基礎信息等。
(2)系統參數與中間結果信息:操作記錄表、登錄日志、系統日志、角色表、用戶信息表、群組信息表、強降水監測警報信息表等。
一體化平臺采用Redis內存數據庫儲存用戶信息、登錄緩存信息以提高網頁訪問速度。Redis是一個基于內存的鍵值型數據庫,具有存取熟讀快速、一致,消除I/O瓶頸,存取時間易于預測等優點。天擎提供Redis內存數據庫,支持應用進行配置信息和中間結果的緩存,主要用來保存不同用戶登錄緩存信息。單個用戶登錄信息包括經緯度、地市、用戶單位、用戶名、登錄密碼、用戶級別、IP、登錄時間以及登錄訪問功能模塊等相關信息。
一體化平臺模式預報、預報支持以及指導產品模塊涉及到大量的圖片、文本類型的非結構化氣象數據存儲和讀寫。結合具體情況,服務指導產品采用分布式NAS進行存儲。按照天擎對共享存儲的文件系統一級目錄的規劃,按要求將其掛載在本機,像使用本地盤一樣訪問NAS的對應目錄,通過在文件名中提取索引信息,存入到天擎文件索引庫并將文件實體存在分布式NAS,直接應用天擎提供的應用程序配置和對應的索引策略。
Docker容器服務可以提供給開發者輕量級開發環境和各種應用程序的運行環境。開發者可以打包應用以及依賴包到一個帶有啟動指令的項目鏡像中,在任意服務器創建一個容器,讓鏡像在容器內運行,從而實現項目的部署。Docker容器能夠使進程和資源相互獨立,容器完全使用沙箱機制,服務器就是容器的宿主機,容器與宿主機之間是相互隔離的。容器計算具有安全可控、簡單易用、協議兼容、高效可靠的優勢?!疤烨妗ず稀碧峁〥ocker容器服務,一體化平臺應用開發采用Vue架構,是一套構建用戶界面的漸進式框架,分前端和后端,采用Docker方式部署Vue項目。一體化平臺端改造分前端應用與后端管理。實際部署過程中,一般先部署后端,再部署前端。
湖南省氣象災害預警服務一體化平臺云化版本投入業務化運行。平臺包括模式預報、預報支持、指導產品、預警服務、一張圖與業務管理等功能模塊。預報支持產品、模式預報以及指導產品等數據由NAS存儲管理,如圖3所示;自動站降水等數據從天擎接口獲取,用戶登錄信息由Redis提供支撐,鄉鎮、河流、流域等信息通過PostgreSQL管理,其他平臺的元數據以及系統配置等由虛谷支撐,如圖4所示。

圖3 預報支持產品Fig.3 Forecast support products

圖4 自動站降水Fig.4 Automatic station precipitation
結合大數據應用平臺的技術能力,一體化平臺在充分利用硬件、數據、接口、存儲、軟件服務的基礎上進行云化改造,湖南省氣象災害預警服務一體化平臺已融入大數據云平臺。平臺集預報展示、預警產品制作、預警發布于一體,加強了基層氣象防災減災科技支撐,提升基層氣象業務人員工作效率,提升了基層防災減災能力,對其他業務系統應用融入具有示范、探索作用,對推進本省“云+端”的氣象業務體系起著積極作用。