朱佳宁,邱学兴,安晶晶,姚 晨,赵青松
安徽省智能网格预报编辑系统的实现与应用
朱佳宁,邱学兴,安晶晶,姚 晨,赵青松
(安徽省气象台,安徽 合肥 230031)
准确、及时、高效的天气预报信息是地方政府部门指挥工农业生产、防汛抗旱和防灾减灾等工作的重要科学依据。为了提高中短期预报时间和空间的精度,更好地为政府部门和公众服务,研发了基于浏览器/服务器(B/S)框架的安徽省智能网格编辑系统。该系统实现了安徽省0-10天(逐3小时)时效内2.5 KM分辨率气象要素格点预报,0-72小时(逐3小时)灾害性落区预报,实现“全省共织一张网”。目前,安徽省智能网格预报编辑系统已成为安徽省气象台预报业务的主要支撑平台,该系统已业务应用一年,在中短期预报工作中发挥了重要的支撑作用。
智能网格预报;格点编辑;消息中间件;WebGIS
天气预报的主要内容是一个地区或城市未来一段时期内的天气现象、最高最低气温、风向风力及特殊的灾害性天气。但是,传统的城镇天气预报内容只包括2400多个城镇的天气现象、高低温和风向风力预报,频次也只是一天三次,预报的时间精度和空间精度不够高。因此,如何提高天气预报时间和空间的精度,提供更加精确的天气预报产品是气象预报服务中亟待解决的问题。依托安徽省气象局资源池,基于CIMISS数据标准体系,建设安徽省智能网格预报编辑系统[1-4]。该系统具有定量化预报、智能化订正、省市互动、集约开放等特点,实现安徽省天气预报(0-10天)时效内气象要素格点预报制作“全省一张网”编辑,实现各类预报指标、本地客观预报方法的动态调整功能,实现单要素时空分布协调、多要素间相互协调的要素编辑订正功能。
实现安徽省0-10天(逐3小时)时效内2.5KM分辨率气象要素格点站点预报,0-72小时,逐3小时灾害性落区预报,实现“全省共织一张网”。
(1)基本功能
基本要求:地理信息、全省用户统一存储管理、分级用户管理、业务流程管理、登录管理、用户浏览、帮助文档、自动升级功能等;
任务列表:任务管理、任务操作、时间定制等;
共性功能:常用MICAPS(气象信息综合处理系统)格式产品显示、监视模式与历史数据查询模式、图层管理功能;预报服务监控:记录预报员的操作、服务记录、业务监控、系统记录查看等。
(2)省级功能
智能预报制作:支持高分辨率、多要素格点订正、不同用户(或岗位)登录后可订正的要素与时次不同(后台可配置)、格点订正引擎、累加要素自动分配功能、连续要素自动插值功能、错误检查提示、协同订正、灾害性天气落区格点化预报制作、预报产品存储;
站点预报制作:订正底稿自动生成、表格式订正、多种订正并存;
(3)市级功能
精细化到格点、站点(城镇/乡镇)的0-24小时预报制作。
安徽省智能网格预报系统与中国气象局现有运行的数据系统包括基于WINDOWS SERVER 的CIMISS全国综合气象信息共享系统,业务系统包括基于WINDOWS的格点站点一体化编辑平台等无缝对接。采用跨平台程序设计,可以在多种硬件平台、操作系统、数据库上运行,无缝对接LINUX和WINDOWS SERVER的系统和这些系统所提供的数据接口、数据库等。可通过客户端模式、WEBSERVICE模式等多种模式与系统进行无缝对接,做到系统数据互通互联。
1)消息总线(图1)是一种通信技术,可在不同机器间互相传递消息、文本等。
2)消息总线采用消息生产者与消息消费者的模式,消息生产者指消息的发送方,消息消费者指消息的接收方,例如当数据采集平台采集完某类数据时,可及时将信息发送至数据计算与分析平台进行处理。
图1 消息总线技术图
3)使用消息总线技术[5],各平台、各模块间将大大降低耦合度,使整个系统可做到插件式开发,并可在不同机器间进行任务协调。
在气象领域经常采用到的大型数据库有Oracle数据库[6]以及SqlServer数据库。数据库的数据处理能力对于整个平台的稳定性至关重要。考虑到Oracle数据库的数据处理能力明显强于后者,并且它可以部署于Linux操作系统上,为保证将来可能的数据平台迁移需求,设计平台采用Oracle数据库系统。
消息中间件(message oriented middleware)[7-8]是指支持与保障分布式应用程序之间同步/异步收发消息的中间件。一般地,实时性要求较高的业务采用同步方式处理,实时性要求不高的业务采用异步方式进行处理。消息中间件已广泛应用于各类分布式应用系统中。
消息中间件的基本工作原理(图2)为:在消息发送方,消息发送者调用发送消息的API函数,将需要发送的消息经消息队列服务存储到发送消息队列中;通过双方消息传递服务之间的交互,经消息队列服务将需要发送的消息从发送队列取出,并送到接收方;接收方再经它的消息队列服务将接收到的消息存放到它的接收消息队列中;在消息接收方,消息接收者调用接收消息的API函数,同样经过消息队列服务,将需要的消息从接收队列中取出,并进行处理。消息在发送或接收成功后,消息队列服务将对相应的消息队列进行管理。
消息总线技术是现在大数据技术中一个主要技术,它与内存数据库技术一起能稳定快速的实现各个子系统间的协同工作。并能方便实现挂载在其上的子系统的负载均衡。由于挂载在其上的子系统是松耦合方式,这样就为子系统的扩展提供了方便性与可维护性。
图2 消息中间件原理图
智能网格预报编辑系统的基础数据环境要采集入库大量不同类型的气象数据,并要将它们解析、加工、融合、统计成各种不同的气象中间产品及服务产品,这就需要开发大量的数据入库子系统、数据处理子系统,并且随着业务需求的不断增加,子系统的数量也会不断增加。消息总线技术的应用则可以很好的保证子系统的方便挂载。
智能网格预报编辑系统需要省市协同编辑,通过消息总线的实时性,也可及时的反应各个编辑客户端的编辑结果。
目前流行消息总线中间件有ActiveMQ、Kafka、Rabbitmq等,它们各有优缺点,考虑到中国气象局正在建设的公众服务云中采用的是ActiveMQ中间件,为了保证与其的技术路线一致,系统设计也采用该中间件框架。
WebGIS[9]支持在PC浏览器,又支持移动端Web的GIS引擎。具备简便、高性能和可用性好的设计框架,在主要桌面应用和移动平台能高效运作,在现代浏览器上利用HTML5、AJAX和CSS3的优势,同时也支持旧的浏览器访问,支持插件扩展。该框架除了实现常规WebGIS引擎基本功能外,还封装了在气象领域使用到的格点场叠加功能。已成功运用于多个气象数据展现平台上。
智能网格预报平台选用了B/S模式的WebGIS技术,免去安装升级客户端的繁琐操作,并且数据产品合成,各气象要素的协同也在服务器端进行,对本地计算机的性能要求非常小。
安徽省智能网格预报编辑系统总体架构如图3所示。
整个系统分为支撑层、数据资源层、应用支撑层、业务应用层和用户层。
支撑层:平台建设的基础。
数据资源层:系统基础数据环境,包含各种气象实况数据、格点预报数据、模式数据的采集,处理;格点数据的降尺度,融合等。
应用支撑层:平台运行需要的各种中间件,算法插件等。
业务应用层:智能网格编辑系统以及各个模块,主要是格点编辑、数据监控、系统设置等。
用户层:管理用户可对系统的权限、配置、流程等进行管理。省级用户可使用通用功能、省级功能、业务管理功能,市级用户可以使用通用功能和业务功能。
基于集约化、现代化、智能化的原则,建成可支撑安徽省市两级格点/站点一体化的定量化预报、智能化订正,实现全省格点预报指导与订正反馈的即时互动和实时共享的智能网格编辑系统(图4);并与现有安徽省中短期天气预报业务有机衔接,形成格点预报业务流程、业务规范。分为数据环境建设、业务操作系统两个部分。
数据环境建设按照多线程分布式计算、存储的方式进行设计,实现各类数据的标准化处理存储、实现不同数据产品的绘图处理、实现历史数据的归一化处理等,确保操作系统的处理响应速度达到秒级。
图3 总体架构图
图4 功能结构图
业务操作系统界面设计新颖,具有格点预报产品订正、省市共享协同、集约开放的智能网格预报编辑系统,可以实现全省中短期(0-10天)时效内气象要素格点预报、灾害性天气落区预报制作“全省一张网”编辑。主要包括格点编辑、数据监控、系统管理等模块。
通过采集各类原始数据,将其降尺度成2.5* 2.5 KM的产品。通过格点预报检验后动态取优,生成基础格点预报产品(图5)传入智能网格预报编辑系统(图6),在编辑系统中对格点站点进行编辑、主客观融合、要素协同、省市协同,生成格点预报产品,再通过预报解析平台解析生成文字产品。
图5 格点预报基础数据资源池建立模型图
图6 格点编辑界面展示
实现全省0-12小时(逐1小时)、1-10天(逐3小时)时效内2.5KM分辨率气象要素格点站点预报,0-72小时,逐3小时灾害性落区预报,实现“全省共织一张网”(图7)。
实现从基础产品的输入,到通过智能工具箱、智能规则、人工订正编辑,再到调用格点预报产品资源,最终生成服务产品的全过程。
通过选定一个区域范围,计算出区域内的最大值(不含无效值)和最小值,修改最大值和最小值,以等比的方式调整区域内的所有格点值,区域内出现无效值时使用新的最小值填充。
图7 “全省共织一张网”流程图
公式:原格点场最大值Max1,最小值Min1,格点值 A,改后格点最大值 Max2,最小值Min2,格点值B:
比例值:C=(Max2-Min2)/(Max1-Min1)
B=(A-min1)*C+Min2
(A-min1)/(Max1-Min1)=(B-min2)/(Max2-Min2)
通过选定一个区域范围,默认标出区域内的一个中心点,用户可以移动或增加减少这个权重点,设置边界的值与权重点的值,以反距离加权法算出区域内所有格点值。
选择画块区工具,通过选择色谱上点值或自定义值,选择属性(定值、增值、减值),
在格点场上画一块区域,把区域内的格点值按选定的属性与值重新计算出格点值。
画出N个的落区线,落区可以从里到外,由大到小的降水等级,计算出落区会影响的所有格点,使用反距离加权法算出格点的值。
在画出的块区,可以对底板格点跟多个参考资料设定每个模式的权重系数后计算出来的各模式的值累加起来应用到格点。
使用站点编辑工具,只会修改到关键点(站点)与对应的最近格点,及0.05公里分辨率下与关键点(站点)最近的点,其它格点不会修改。
选择某个关键点(站点)时序图,调整这个站点的趋势。再从站点返回到格点(最近点,及0.05公里的最近点值),实现站点格点同步。同步站点时,以当前编辑的格点值修改到被同步的格点值。
选择一个区域,以这个区域的平均值,建立一个时序图,调整这个曲线,以调整的变化量去修改整个选择的区域内的每个格点值。
选择一块区域,通过鼠标拖动到一个新的位置,原来的被移动的位置用无效值填充,新地方使用选择的区域填充。
选择一个开始时间、结束时间,计算出这段时间段内的累计降水,并展示在GIS地图上。
图8 图表编辑界面展示
把参考资料选中的地区范围内的格点替换到当前编辑的数据中。
把参考资料选中的地区范围内的站点(关键点)替换到当前编辑的数据中,只会修改到关键点(站点)与对应的最近格点,及0.05公里分辨率下与关键点(站点)最近的点,其它格点不会修改。
1)流程监控:以表格方式展示各地市和省台格点预报上传情况监控信息;
2)数据监控:对格点背景场数据进行监控:包括湿度、风、最高气温、最低气温、气温、总云量、天气现象、能见度。
安徽省市预报员制作完成智能网格预报产品之后,后台自动形成安徽省智能网格预报产品数据库,包括天气现象,温度、风向风速、降水量等各类气象要素。给定安徽省任意地点地理位置信息后,便可自动获取该地0~10天各类气象要素预报(图9),并能以文字图表等形式(图10)呈现,能满足政府部门各种气象服务需求,这弥补了传统城镇天气预报时间和空间精度上的不足。
1)智能网格预报平台选用了B/S模式的WebGIS技术,免去安装升级客户端的繁琐操作,并且数据产品合成,各气象要素的协同也在服务器端进行,对本地计算机的性能要求非常小。
2)预报员通过交互工具方便地调整各气象要素场落区或趋势,并能快速把各类模式预报场或实况格点场应用到当前预报时段,预报员的主观订正意愿能更高效地执行。
3)智能网格预报产品制作完毕后,系统自动形成安徽省智能网格预报数据库,可输出任意地点的1~10天多种气象要素预报,并能以各类文字图表形式呈现,能满足政府部门各种气象服务需求,这弥补了传统城镇天气预报时间和空间精度上的不足。
4)目前,安徽省智能网格编辑系统已经完全代替传统站点预报编辑系统,所有安徽城镇预报及其他所有中短期预报产品都由智能网格预报产品导出,该系统已经在安徽省省市级气象部门稳定运行一年,取得了较好的中短期预报服务支撑效果。
图9 智能网格预报产品应用1
[1] 贺雅楠, 高嵩, 薛峰, 等. 基于MICAPS4的智能网格预报平台设计与实现[J]. 应用气象学报, 2018, 29(1): 13-24.
[2] 高嵩, 代刊, 薛峰. 基于MICAPS3.2平台的格点编辑平台设计与开发[J]. 气象, 2014, 40(9): 1152-1158.
[3] 王海宾, 杨引明, 漆梁波, 等. 澳大利亚气象局图形预报编辑器(GFE)介绍和分析[J]. 大气科学研究与应用, 2012(1): 109-116.
[4] 王海宾, 杨引明, 范旭亮, 储海. 上海精细化格点预报业务进展与思考[J]. 气象科技进展, 2016, 6(04): 18-23.
[5] 鱼朝伟, 詹舒波. 基于RabbitMQ的异步全双工消息总线的实现[J]. 软件, 2016, 37(02): 139-146.
[6] 姚树春. 大型数据库ORACLE数据库的优化设计方案[J]. 软件, 2013, 34(11): 131-132.
[7] 钱峥, 胡亚旦, 黄旋旋. 基于“消息中间件”技术的气象信息总线[J]. 气象科技, 2016, 44(2): 217-222.
[8] 熊风光, 韩燮, 韩焱. 自动测试系统消息中间件的设计与实现[J]. 计算机应用与软件, 2013, 30(04): 65-68+91.
[9] 王鹤, 王方雄, 徐惠民. 管网巡检WebGIS设计与开发[J].软件, 2017, 38(07): 126-129.
Implementation and Application of The Intelligent Grid Forecasting Editing System of Anhui
ZHU Jia-ning, QIU Xue-xing, AN Jing-jing, YAO Chen, ZHAO Qing-song
(Anhui Meteorological Observatory, Hefei 230031, China)
Accurate, timely and efficient weather forecast information is an important scientific basis for local government departments to command industrial and agricultural production, flood control and drought resistance and disaster prevention and reduction. In order to improve the accuracy of time and space for short and medium-range weather forecasting, and serve the government departments and the public better, intelligent grid editing system based on the B/S frame of Anhui was developed. This system has achieved the grid forecasting of 2.5km resolution weather element within the aging period of 0-10 days (3 hours by 3 hours) in Anhui province, 0-72 hours (3 hours by 3 hours) disaster area forecasting, it can achieve "a total of the province's network." At present, the intelligent grid forecasting and editing system in Anhui province has become the main supporting platform of weather forecasting business in Anhui province, this system has been in service for a year and has played an important supporting role in short and medium-range forecasting.
Intelligent grid forecasting; Grid editing; Message middleware; WebGIS
TP315
A
10.3969/j.issn.1003-6970.2018.10.047
朱佳宁(1982-),男,工程师,主要从事中短期天气预报及软件开发工作;邱学兴(1979-),男,高级工程师,主要研究方向:中短期天气预报及数值预报解释应用;安晶晶(1986-),男,工程师,主要研究方向:气象资料处理;姚晨(1982-),女,高级工程师,主要研究方向:中短期天气预报技术;赵青松(1974-),男,工程师,主要研究方向:应用气象与气象服务技术研发。
朱佳宁,邱学兴,安晶晶,等. 安徽省智能网格预报编辑系统的实现与应用[J]. 软件,2018,39(10):242-249