APP下载

基于“云+端”架构的江西省雷达拼图系统设计

2022-07-23袁正国李显风邓卫华胡丽丽周雪莹

科学技术与工程 2022年18期
关键词:单站反射率气象

袁正国, 李显风, 邓卫华, 胡丽丽, 周雪莹

(江西省气象信息中心, 南昌 330096)

随着观测技术和信息技术发展,中国气象信息化能力不断提高,气象及相关行业数据量急剧增长。依托全国综合气象信息共享系统(China Integrated Meteorological Information Service System,CIMISS)构建了国家和省级集约化气象数据环境,初步实现了对国-省-市-县四级业务平台的数据支撑[1],但CIMISS仅实现了对主要气象数据的存储管理,而且在线能力有限,对雷达、卫星、数值预报产品只能提供短期的在线服务。随着气象业务系统集约化改造的推进,全国各级业务单位对现有业务系统进行了一定优化整合,但业务系统重复建设、数据烟囱现象依然存在,后台处理算法仍各自管理、分散运行[2]。现有信息系统存在数据供应不足、数据交换不便、数据服务不够高效等问题,制约了现代化智慧气象业务发展。针对上述存在问题,中国气象局利用云计算、大数据等新的信息技术,构建了国-省两级的气象大数据云平台(“天擎”),实现地球系统数据全集的统一管理和云上计算能力,全面支撑“云+端”的气象应用业务,构成集约化、标准化、开放发展的气象新业态。

多普勒天气雷达具有很高的时空分辨率,是中小尺度天气监测的重要手段,对灾害性天气预报预警、精细化气象服务具有重要意义[3-4]。利用雷达资料可为强对流天气进行有效的外推预报,用于改善数值模式的初始场,从而提升模式预报结果[5]。为了提高对区域尺度灾害性天气监测、预报以及预警能力,发挥多部雷达在联合监测天气中的作用,需要把多部雷达资料进行组网拼图,以完整地反映多种尺度天气系统的移动和演变过程,在更大范围发挥天气雷达监测灾害性天气的作用。此外,组网结果还可以为中尺度数值天气模式中雷达数据同化等提供数据基础。针对雷达拼图产品的实际需求,国内气象学者开展了全国、省级以及区域等不同空间尺度的雷达组网拼图技术研究与系统建设,胡胜等[6]实现了广东省四部新一代雷达数据拼图处理;王建国等[7]建立了山东省以及周边邻省雷达数据逐6 min实时拼图处理业务;肖艳姣等[8]提出了新一代天气雷达资料的三维格点化及拼图方法,实现了广州和梅州雷达三维反射率组网拼图;王志斌等[9]利用并行处理方法开展了全国天气雷达实时拼图处理研究;林红等[10]设计研发了长三角地区12部雷达组网拼图系统;邱拓等[11]利用开放图形库(open graphics library,OPENGL)技术实现了组网气象雷达数据三维可视化显示;鲍婷婷等[12]利用WebGL技术构建了天气雷达三维可视化分析平台。由于雷达探测资料时空分辨率高,对该资料的数据解码与组网拼图处理耗时长。为实现在一次体扫时间内完成对大量雷达资料的组网处理,上述研究中主要采用多线程或多进程方式对程序并行化来提高数据处理效率。随着气象业务越来越精细化,其对资料时效要求越来越高,传统通过多核处理器的并行处理方式一定程度上提高了雷达组网拼图处理效率,但该方式业务逻辑主要以定时同步方式运行,产品滞后时间较长,不能完全满足精细化气象业务需求。因此,如何进一步提高雷达拼图产品时效是迫切需要解决的问题。

“天擎”是支持“数算一体”的服务平台,其采用消息、流式处理、分布式存储等技术,有效实现气象及相关行业数据资源的快速收集处理与存储管理,提供实时以及历史长序列数据的高效在线访问。“天擎”搭建了多计算节点的分布式计算环境,具有时间和任务等多种调度方式,以及流计算、分布式计算、容器计算、普通计算等多种计算框架,支持多算法、多任务的低延时、同步调度运行。因此,通过“天擎”可以及时获取各种雷达探测资料,通过“天擎”加工流水线可以实现雷达资料的快速加工处理。

基于此,现尝试探讨将雷达资料加工处理融入“天擎”,设计和实现基于“云+端”技术架构的雷达组网拼图系统,利用江西省及周边省份雷达探测资料实时生成雷达数据产品,旨在进一步提高雷达资料处理与组网拼图效率,以满足全省精细化气象业务对高时效雷达数据产品的服务需求,实现本省雷达资料的集约化处理和算法的共建、共享,为推进构建“云+端”的新气象业务提供合理可行的思路方法。

1 雷达资料

使用的雷达资料包括江西省南昌、九江、上饶、抚州、宜春、吉安、赣州和景德镇8部多普勒天气雷达和周边省份安庆、黄山、武汉、衡阳、郴州、长沙、岳阳、衢州、三明、龙岩、建阳、河源、韶关、梅州14部多普勒天气雷达(共22部),雷达站点分布如图1所示。多普勒雷达采用VCP21体扫模式对9个具体仰角(0.5°、1.5°、2.4°、3.3°、4.5°、6.0°、10.0°、15.0°、20.0°)进行实时探测,探测范围约460 km,探测频次为6 min,探测数据包括反射率因子、径向速度和速度谱宽3类数据。省内8部雷达站探测数据由台站通过流传输方式实时传输至省级通信系统,向国家级通信系统不落地转发的同时,处理生成统一标准格式的逐仰角和全体扫基数据文件,并储存至省级“天擎”提供服务。省外14部雷达站探测数据是从中国气象局数据共享平台实时获取的全体扫基数据文件。省内及省外雷达站数据均通过“天擎”提供统一存储管理与共享服务,支撑各类气象业务应用。雷达资料详细收集流程如图2所示。

图1 江西省与周边省雷达站点分布图Fig.1 Radar station distribution in and around Jiangxi Province

图2 雷达数据收集流程Fig.2 Radar data collection process

2 雷达拼图处理流程

针对基础观测数据的加工处理,“天擎”提供了对算法的统一集中管理和统一任务调度平台,有效提升了算法的复用率和算法的执行效率。本文研究采用重叠区最大值法[13]进行多部雷达组网拼图处理,依托“天擎”统一加工流水线来实现雷达拼图处理的调度运行,其处理流程如图3所示。首先基于数据源感知触发方式,实时获取“天擎”共享存储上的雷达逐仰角基数据文件和全体扫基数据文件,然后依次对数据文件进行数据解码、质量控制处理,得到质控后网格化的雷达反射率数据,并对处理后数据进行实时缓存处理,解决每部雷达探测数据不同步问题。采用多进程并行处理技术,基于顺序任务和定时任务调度方式,对缓存的单站逐仰角反射率数据进行组网拼接处理和图形绘制,循环更新生成单站和区域组网的雷达反射率产品,将产品数据回写到“天擎”提供统一存储管理和对外共享服务。

图3 基于云计算的雷达组网拼图处理流程Fig.3 Processing flow of radar networking mosaic based on cloud computing

3 雷达拼图系统设计

依托“天擎”提供数算一体的气象云平台服务,采用“云+端”的体系结构进行雷达拼图系统设计。系统云端主要包括IaaS层和PaaS层两层结构,应用端主要为业务应用层,并提供系统监控功能。系统总体技术架构如图4所示。

(1)云端IaaS层:基于“天擎”提供雷达拼图系统运行所需要的计算、存储等基础设施资源。

(2)云端PaaS层:针对雷达拼图处理系统所需的数据资源,通过“天擎”提供数据管理和访问服务,包括“天擎”已有的雷达基数据和系统回写的雷达数据产品。所有数据产品通过分布式文件库(包含存储文件索引信息的虚谷库以及存储数据实体的分布式网络附加存储(network attached storage,NAS))存储并提供数据管理。在“天擎”加工流水线部署数据解码、质量控制、组网拼接、产品绘制等算法,生成的业务产品存入“天擎”数据环境。新增雷达产品数据服务接口,支撑各类业务系统应用。

(3)应用端:利用“天擎”数据服务接口,将业务系统平台直接对接“天擎”数据存储,实现对雷达数据产品的访问。开发详情信息(detail information,DI)、事件信息(event information,EI)日志发送模块,将监控信息发送至气象综合业务实时监控系统(“天镜”)[14],实现系统入库处理流程的实时监控。

图4 系统总体技术架构Fig.4 Overall technical structure of the system

4 关键技术

4.1 基于Redis的数据缓存技术

雷达探测频次为6 min一次,但由于每部雷达体扫启动时间不同,导致同一时次的雷达探测数据不能在同一时间点生成。为提高雷达拼图处理效率,避免每次组网拼图对单站雷达数据重复处理,需要将不同时刻生成的单站雷达网格化数据进行缓存处理,待每部雷达数据处理后,直接从缓存中读取数据,通过循环更新方式进行拼图处理直到全部单站雷达数据完成拼图处理。本文研究采用基于内存运行的Redis缓存技术进行数据缓存处理。Redis采用键值对(Key-Value)存储结构[15],通过键值进行数据的存取操作,并可以设置数据缓存期限实现内存空间的动态释放,满足数据实时动态缓存需求。为了便于拼图处理时查找同一时次探测数据,需要对数据缓存时间进行标准化处理。根据逐6 min拼图处理频次,即每小时包括00、06、12、18、24、30、36、42、48、54共10个时次,通过每部雷达实际探测时间以最邻近方法进行时间标准化处理。例如,雷达探测时间为08:10,根据上述标准化处理规则数据缓存时间为08:12。在时间标准化处理基础上,遵循Key值唯一性原则,以“雷达站号_仰角_探测标准化时间”设计缓存数据的Key、Value为质控后的网格化反射率因子数据。

4.2 基于DI的数据源感知调度

雷达探测数据通过省级通信系统实时收集,并分发至“天擎”,经过“天擎”数据解码、数据同步等处理,实现数据在缓冲库、服务库和分析库等多种数据库的存储管理,以满足不同的应用场景需求。每个处理环节在处理完成后实时向“天镜”发送详情信息(DI),由“天镜”自动完成对DI信息的解析和入库处理,实现对雷达基数据的收集、分发、处理、入库的全流程监控。因此,根据DI信息可以第一时间感知到文件目录中落地的数据文件,避免传统通过目录定时扫描方式造成数据访问不及时问题。据此,“天擎”设计了基于DI的数据源感知调度方式,具体处理流程如图5所示。“天擎”加工流水线实时监听与接收数据库同步DI信息,对接收的DI信息进行统计分析,并发送指令到加工流水线服务总线,触发调度任务执行代理,启动算法调度运行。

算法程序根据DI提供的文件名信息,并结合文件存储路径,实现对“天擎”NAS存储的数据文件直接读取访问,然后依次进行数据解析、质量控制和网格化处理,其中质量控制处理主要包括孤立回波检测和纹理变化检测,具体处理方法详见文献[16]。将处理后数据缓存至Redis内存库,以提供后续算法调取使用。

图5 数据源感知调度处理流程Fig.5 Data source aware scheduling process

4.3 基于任务的顺序调度

产品加工处理通常需要有多个任务顺序完成,且任务之间有输入/输出的依赖关系。为此,“天擎”加工流水线设计了基于任务的顺序调度方式。在部署顺序调度任务时,首先需要设置前置任务节点,并根据前置任务的输出结果,配置任务的模型输入参数,然后配置任务的触发方式实现多个任务按顺序依次调度执行。前置任务的输出要遵循“天擎”加工流水线的算法输出格式规范。本文研究通过基于任务的顺序调度方式来运行单站逐仰角雷达产品生成算法程序,其前置任务是单站逐仰角基数据处理的数据源触发任务。前置任务按照“天擎”算法输出格式规范,以标准输出方式输出JSON格式的执行结果,其格式内容如图6所示。输出内容以两个半角双引号及两个半角单引号(""")开头和两个半角单引号及两个半角双引号(""")结束,以区别于普通输出日志。具体输出内容主要包括输出信息和输出状态码。本文研究中输出信息为Redis缓存的“站号_仰角层_日期”键值,输出状态码包括0和非0两种,0代表成功返回,非0代表失败返回。算法程序根据前置算法输出的键值获取该键值对应的数值信息,进行单站逐仰角雷达反射率图形产品绘制。

图6 算法输出格式示例Fig.6 Example of algorithm output format

4.4 基于数据接口的产品共享技术

为保存全部的数据产品并提供对外服务,基于“天擎”统一数据环境建立数据产品的共享服务流程,具体实现方法如下,根据业务需求和数据融入标准规范,在“天擎”NAS存储中规划用于存放系统生成的各类数据产品的标准目录和存储空间,在“天擎”文件索引库创建用于存储数据产品文件索引信息的数据表,其主要字段包括文件标识、数据来源、入库时间、资料时间、存储路径、文件名、文件大小等。目前“天擎”数据库为虚谷数据库。系统在生成产品的同时,将产品的文件信息写入索引数据表相应字段,实现数据文件的存储管理。针对业务应用场景需求,遵循“天擎”数据接口标准规范,建立“按站号”“按时间”“按时间段”等多种灵活配置的数据服务接口,满足常见业务对数据产品的检索需求。

4.5 基于“天镜”的监控告警技术

根据气象业务系统集约化监控管理要求,雷达拼图系统纳入“天镜”统一监控管理。系统按照“天镜”的DI标准规范,主动将监控的主要指标信息发送给“天镜”。发送的DI信息采用JSON格式,DI信息结构主要由信息类型(type)、信息名称(name)、信息内容(message)、信息时间(occur_time)和信息字段(fields)5部分组成,其中信息字段主要包括资料文件名、文件大小、资料四级编码、资料时间、系统名称、发送时间等内容。本文研究在产品生成算法中开发DI发送模块,算法程序将每时次生成的产品文件信息以POST方式提交至“天镜”RESTful接口,由“天镜”自动完成DI信息的解析入库。通过配置监控策略,实现基于“天镜”的系统业务产品的入库完整性监视和异常告警服务。

5 系统实现与效果

基于融入“天擎”的集约化设计理念,采用“云+端”的系统体系架构,利用“天擎”2个计算节点搭建雷达拼图系统的分布式运行环境,系统运行操作系统为Linux。采用python语言进行系统算法程序开发,设计开发了雷达数据处理和图形产品生成4大类8个业务算法。本研究按照产品粒度对8个算法进行整合封装形成5个可独立运行的算法执行脚本,分别为单站逐仰角雷达基数据处理、单站全体扫雷达基数据处理、单站逐仰角反射率产品生成、单站组合反射率产品生成和区域组网反射率产品生成等5个算法程序,其中单站逐仰角雷达基数据处理、单站全体扫雷达基数据处理采用数据源感知调度,单站逐仰角反射率产品生成采用任务顺序调度,单站组合反射率产品生成和区域组网反射率产品生成采用定时任务调度(表1)。产品生成算法具备产品DI发送和产品回写“天擎”数据环境功能,全部算法计算方式为普通计算。通过“天擎”加工流水线管理页面进行算法的注册、算法加载、任务定义和任务调度管理,配置基于数据源感知、顺序任务和定时任务等多种调度运行方式,实时制作单站和区域组网的雷达反射率数据产品。

通过采用“天擎”加工流水线统一调度和多进程并行处理技术,显著提升了雷达拼图处理效率,产品滞后时间大幅度减少。通过对2021年4月7日逐时次雷达处理耗时统计计算,系统处理平均总耗时为26.5 s,其中数据解码、质控处理、网格化处理、组网拼图、可视化处理平均耗时分别为0.6、2.6、10.6、4、8.7 s。利用2021年4月7日18:00—19:00(共10个时次)上饶雷达站0.5°仰角基数据,采用传统定时任务和“天擎”加工流水线调度两种处理方式,分别生成每个时次的反射率图形产品,并统计计算出每个时次产品的生成时间(图7)。

图7 雷达产品时效对比Fig.7 Time consuming comparison of radar products with different processing methods

表1 系统算法及任务调度说明Table 1 System algorithm and task scheduling description

从统计结果可以看出,基于“天擎”加工流水线方式的每时次产品滞后时间明显要小于传统定时任务处理方式。“天擎”加工流水线处理滞后时间在57.2~67.5 s,平均滞后时间为62.7 s,传统定时任务处理滞后时间在114.1~272.3 s,平均滞后时间为186.2 s,基于“天擎”加工流水线较传统定时任务方式的处理时效提升了66.3%。

本文研究生成的单站产品覆盖江西省全部8部雷达站,拼图产品空间范围为111°E~121°E、22°N~32°N,单站及区域拼图产品的空间分辨率均为0.01°,时间分辨率均为6 min。每时次生成的单站及拼图产品包括全部仰角组合反射率以及逐仰角反射率(0.5°、1.5°、2.4°、3.3°、4.5°、6.0°、10.0°、15.0°、20.0°)。图8为2021年4月7日17:00区域拼图的组合反射率以及0.5°、1.5°、2.4°反射率产品。

6 结论

利用江西省及周边省份的天气雷达探测资料,提出了一种基于“天擎”的雷达组网拼图系统设计与实现思路,构建了基于统一加工流水线任务调度的分布式处理业务,制作了高时空分辨率、高时效的雷达数据产品。对系统处理流程以及数据缓存、任务调度、共享服务、实时监控等关键技术进行了详细阐述。

(1)利用Redis内存缓存技术,实现了对质量控制、网格化处理后的雷达反射率数据实时在线缓存,解决了雷达组网拼图时探测时间不同步等技术问题。

(2)利用“天擎”统一加工流水线,构建了基于数据源感知和顺序任务等多种实时调度运行机制,较传统定时调度处理方式,显著提升了系统处理效率。

图8 2021年4月7日17:00雷达拼图产品Fig.8 The radar mosaic product at 17:00 on April 7, 2021

(3)基于“天擎”统一数据环境,实现了对系统生成的各类数据产品的高效存储管理,并基于数据接口技术为各类业务应用提供了标准规范、集约统一的数据共享服务支撑。

(4)基于纳入“天镜”的综合一体化的业务监控思想,实现了系统的全流程监控与异常告警功能,保障了系统的连续稳定运行。

(5)搭建了江西省雷达组网拼图系统的业务运行环境,实时制作江西省逐6 min、1 km分辨率的雷达单站及区域组网的雷达数据产品,产品最高生成时效在1 min以内,满足了精细化气象业务服务需求。

依托“天擎”强大的“数算一体”服务能力,在保障系统运行的及时性和稳定性同时,有效解决了现有雷达数据产品时效性不足的技术难题,有效实现了本省雷达资料的集约化处理以及算法的共建、共享,研究成果为推动建构“云+端”的新气象业务提供了重要技术参考。研制的雷达数据产品已纳入“天擎”统一数据环境在全省气象部门应用,为全省各级精细化业务提供了可靠的数据支撑。

猜你喜欢

单站反射率气象
近岸水体异源遥感反射率产品的融合方法研究
商品条码印制质量检测参数
——缺陷度的算法研究
气象树
稳定的红牛有多强,维斯塔潘单站大满贯
——2022 F1意大利大奖赛
具有颜色恒常性的光谱反射率重建
《内蒙古气象》征稿简则
基于方位角和匀速圆周运动的单站无源定位算法
基于地面边缘反射率网格地图的自动驾驶车辆定位技术
大国气象
美丽的气象奇观