应用气象学报  2017, 28 (5): 513-531   PDF    
MICAPS4预报业务系统建设进展与未来发展
高嵩, 毕宝贵, 李月安, 王若曈, 代刊     
国家气象中心, 北京 100081
摘要: 以精细化预报为标志的现代天气预报业务对高时空分辨率气象数据的应用提出了更高的需求,而传统的预报分析制作系统MICAPS3(Meteorological Information Comprehensive Analysis and Processing System Version 3)无法满足符合大数据特征的实时预报相关的数据应用。同时,模式预报和集合预报应用已在各专业预报领域中发挥越来越重要的作用,网格预报产品正在涵盖全部的预报业务流程,而MICAPS3无法提供便捷高效的支撑。为解决上述问题,国家气象中心启动了MICAPS4建设,一方面建立了基于大数据的气象实时预报应用技术体系,解决了气象大数据处理、存储、分析和显示效率的关键技术难题;另一方面搭建了多个满足不同复杂预报业务需求的专业化版本。MICAPS4将信息化技术与预报技术、预报业务流程紧密结合,解决了现代化预报方法的平台化集成应用与精细化预报制作的关键技术难题,基于MICAPS4基础框架的多个专业版在中央气象台和部分省级气象台进行业务化应用推广。基于CIMISS(China Integrated Meteorological Information Sharing System)-MICAPS4的海量数据存储环境,极大减轻了系统部署和本地化工作量,显著提升了数据解析及数据存储访问效率。
关键词: 预报业务平台    MICAPS4    精细化预报业务    CIMISS-MICAPS4海量数据存储    
Implementation and Development Plan of MICAPS4
Gao Song, Bi Baogui, Li Yuean, Wang Ruotong, Dai Kan     
National Meteorological Center, Beijing 100081
Abstract: Marked by refined weather forecasts, modern weather forecasting demands for higher spatial and temporal resolution of weather data applications. However, the existing forecast analysis system-MICAPS3 (Meteorological Information Comprehensive Analysis and Processing System Version 3) cannot meet needs of using real-time meteorological data with big data characteristics. Besides, MICAPS3 cannot provide sufficient support for numerical weather prediction model, ensemble prediction model and grid forecasting product, which are playing increasingly important role in the professional forecasting fields. Therefore, China National Meteorological Center launches development of MICAPS4, aiming to build an advanced, efficient, intelligent, convenient and open modern weather service forecast platform. Firstly, established a real-time forecasting system based on big data technology to solve the key technical problems of data processing, storage, analysis and display efficiency. Secondly, set up several specialized platforms to meet needs of different complex forecasting business. MICAPS4 combines information technology with forecasting technology and forecasting business processes to solve the key technical problems of the platform integration of modern forecasting methods and the production of refined forecast, many of specialized platforms based on MICAPS4 basic framework have promoted the application of business in China National Meteorological Center and many provinces. CIMISS (China Integrated Meteorological Information Sharing System)-MICAPS4 massive data storage environment has greatly reduced the workload of system deployment and localization, improved data analysis and data storage access efficiency significantly. Besides the utilization of the big data technology, MICAPS4 client is also upgraded in underlying rendering engine using parallel computing framework, and it can display high resolution data in high efficiency including the stream animation as a result. MICAPS4 client follows the OGC (open geospatial consortium) standards, to achieve the standard of geographic information and the intervention of WMTS (Web map tile service). The client of MICAPS4 allows users to customize data display style conveniently and support the forecast product rapid manufacturing. Flat design interface is adopted and users can switch between black theme and white theme quickly, to reduce visual fatigue and support the forecast product rapid manufacturing. MICAPS4 is a modern full-purpose forecaster work station system for processing and displaying meteorological data. The multi-window technology and specialized applications make MICAPS the ideal tool not only for operational weather forecasting, but also for other applications where meteorological information plays a vital role.
Key words: forecasting platform     MICAPS4     refined forecasting business     CIMISS-MICAPS4 massive data storage    
引言

气象预报业务系统旨在为预报员提供一个专业的气象数据综合分析与显示平台,一方面能够协助预报员全面、准确掌握大气三维结构以及运动情况,另一方面也能为预报员提供预报产品的交互制作与产品发布功能。

MICAPS(Meteorological Information Comprehensive Analysis and Processing System)是中国气象局自主开发的现代化人机交互气象信息处理和天气预报制作系统,已成为全国气象预报制作的业务平台,在天气预报及气象服务中发挥了重要作用[1]。MICAPS主要功能包括:① 快速处理和融合海量不同类型的复杂数据,② 呈现清晰的四维(空间及时间)大气物理结构和运动图像,③ 利用先进的人机交互技术支撑天气预报的快速制作,④ 快速自动生成数字化、文字化、图形化的产品并及时服务于科研与公众,⑤ 提供将先进的天气分析与预报技术进行集成的平台。

中国气象局自1994年起组织MICAPS研发,至2007年12月,先后共发布了3个版本:1997年发布的MICAPS第1版实现了预报业务流程从纸质到电子版的革命性变革,预报员可在计算机上实现气象数据的快速检索、预报分析及交互预报制作;2002年发布的MICAPS第2版提升了系统功能,扩展了数据显示能力,增加格点资料的显示和分析功能;2007年发布的MICAPS第3版改进了绘图引擎实现机制,提升了气象数据的显示效率和效果,同时首次提供了基于“模块可插拔”的客户端框架设计,提供了界面、功能模块的自定义扩展能力,并先后发布了除基础版本之外的台风、短临、山洪、中尺度分析、海洋、精细化要素预报订正等多个专业版本,已成为中国气象局各级气象业务部门的核心系统,在各级预报业务应用中发挥了巨大作用[2-4],并在民航、水利、海洋等部门以及多个亚洲国家推广应用。

1 MICAPS4建设背景及目标 1.1 MICAPS3面临的问题

现代天气预报业务以精准的、高时空分辨率的预报为发展方向。精准的气象预报需要预报员基于大量的高时空分辨率的客观预报产品、观测及遥感数据,结合高精度的地形数据,通过主观分析快速理解天气形势,形成对客观预报产品质量的主观判断。还需要综合应用数值模式产品与集合预报产品,了解天气形势及其变化发展的细节特征以及形势与要素预报的不确定性信息,同时利用成熟的数值预报统计与释用技术提供客观最优要素预报场[5];预报员利用预报制作工具,将主观预报经验作用于格点化的客观预报产品之上,进行精细化预报产品快速制作加工与发布。

MICAPS3已无法承担上述需求,主要体现在海量气象数据的存储、预处理、应用等方面的低效以及客户端平台功能与扩展能力有限两个方面。

首先,在海量气象数据的存储应用方面,随着高时空分辨率的观测及预报数据的快速发展,气象数据呈现了爆发式的增长情况:2015年中国气象局每天处理的数据已达到6.54 TB,而到2020年日均处理的数据量将达到63 TB[6]。如此巨大的信息量在为预报分析制作带来更加精细的观测与预报数据的同时,也给预报业务系统带来了运行效率的压力。以中央气象台预报业务情况为例,2006年预报员可使用的全国自动气象站约为3000个,2016年自动气象站数量达到50000个以上;除此之外,模式数据的时间及空间精细化水平也在不断提升,以我国的全球模式产品为例,全球数据预报资料在分辨率、层次、要素种类等方面均有大幅度提升。数据的快速增长使原有的预报系统已经不能满足预报员进行数据显示与天气分析的需求,具体存在以下问题:① 原有数据服务器无法适应大数据量的应用需求。传统的MICAPS架构为服务器/客户端组织方式,但服务器不具备针对大数据量的预处理能力,仅提供简单格式转换与文件组织功能,大量的原始数据以原始分辨率的纯文本格式提供客户端直接调用,增加了数据的网络传输压力以及客户端的资源消耗。② 数据共享方式技术落后。MICAPS服务器与客户端之间的数据共享为简单共享,服务器利用简单文件共享协议通过挂载虚拟磁盘的方式为客户端提供数据服务,这种方式在文件个数较大的情况下,数据检索效率大幅下降。

在客户端数据应用能力方面,虽然各类客观预报产品的预报准确度及精细化程度均有显著提升,但在目前阶段预报员的主观经验在预报制作过程中还起着主导作用。预报员首先需要对海量精细的数据进行主观分析,进而形成天气系统的主观认知与理解,最后通过在预报平台上进行精细化预报产品的交互制作[7]。MICAPS3缺乏对海量数据的高效处理能力,无法帮助预报员快速浏览与分析高时空分辨率的模式产品与集合预报产品,也无法提供快捷高效的工具帮助预报员进行产品制作。

综上所述,现代化的气象预报需要精细、精准的预报服务,而后者又建立在各类精细的观测及预报数据基础之上,如何快速处理、存储、显示与应用气象大数据,缩短预报员分析数据所消耗的时间,是实时预报业务平台的关键。

1.2 实时预报业务下的气象大数据特性

气象行业中所产生、应用的数据符合大数据的特征[8],但在实时预报业务场景下的气象数据又具有一定的特殊性,主要表现在以下几个方面:

① 数据存储特性。MICAPS处理后的气象数据文件总量巨大且文件大小差异较大,中央气象台的MICAPS存储服务器每天共采集超过2800万个文件,其中有90%以上的文件大小低于1 MB,而高分辨率卫星(如葵花8号)单通道单观测时次数据大小超过100 MB。

② 数据采集特性。由于各类数据来自不同的数据源,网络传输也会造成延迟,使所有数据的生成时间无法固定,部分文件存在生成后还会进行不定期订正的情况(如地面观测数据)。

③ 数据检索的复杂维度特性。对于任一数据,能够对该数据进行唯一标识所需的最少属性称为该数据的检索维度。不同类型数据其检索维度也不同,如确定性模式数据,只有在明确其模式名称、物理量、层次、起报时间、预报时效后才能检索到唯一的格点场数据——称其检索维度为5;集合预报数据在确定性模式数据的基础上还需要确定成员编号,其检索维度数为6。其他常用数据的检索维度如表 1所示。由表 1可知,气象实时预报数据中的的检索维度较为复杂。

表 1 常用气象预报数据的检索维度 Table 1 Data retrieval dimension of differnet forecast data

④ 数据使用行为特性。在相同数据种类下,预报员既会在有序维度上进行连续切换访问,如在预报时效(3 h,6 h,9 h,…)或层次(500 hPa,700 hPa,850 hPa,…)上进行翻页,也会在无序维度上进行快速访问,如在相同模式不同物理量之间进行数据切换,或在不同模式之间进行快速切换。

⑤ 数据高速访问特性。实时气象预报业务对于数据的并发性以及时效性要求极高,这给数据服务器的访问性能带来了挑战,尤其在汛期,不同预报岗位对气象数据的访问会出现大量并发情况,如果考虑常规预报场景中,有50个并发用户,每个用户均访问欧洲中期天气预报中心细网格的3层风场(500 hPa,700 hPa,850 hPa)、1层温度场以及1层相对湿度场,且每个用户对于用户的访问需求是1 s可以连续访问4个不同时效的上述数据,通过简单计算可以得出,服务器吞吐量需求须大于774 MB/s,单场数据的检索时间必须小于4 ms。

1.3 国外预报平台简介

目前,国际上主流的天气预报系统有美国的AWIPS Ⅱ、德国的Ninjo等系统。AWIPSII系统于2005年启动开发,2016年业务化应用,该系统通过对软件框架进行重构升级、应用新的软件技术提升系统的灵活性和运行效率,从而达到降低升级和维护成本的目的。

AWIPS Ⅱ系统采用SOA(面向服务的体系架构)结构设计,整个系统分成数据服务器子系统(EDEX Server)与客户端子系统(CAVE Client)两个部分(图 1)。

图1 AWIPS Ⅱ系统架构 Fig.1 Structure of AWIPS Ⅱ

服务器子系统包括数据处理和数据服务、元数据服务、后台应用服务等功能。AWIPS Ⅱ采用HDF5格式文件来存储数据,采用Postgres Database数据库存储各类数据元信息。利用Qpid(Apache开源消息中间件)提供消息服务,并在此服务基础上搭建了数据智能推/拉数据解决方案以解决日益增长的数据访问需求。

客户端子系统具备GIS(地理信息系统)应用、数据可视化、数据动画、数据分析、交互操作等功能,同时延续了第1代AWIPS的D-2D,GFE等专业版本的界面与功能,移植了基于AWIPS第1代框架所开发的SCAN,FFMP等多项应用,将第1代AWIPS的文本终端功能合并到图形界面中,同时,开发了AWIPS Ⅱ瘦客户端,实现跨平台远程应用[9]

AWIPS Ⅱ系统的设计优点是提供了较为松散的体系架构,可针对数据存储与数据应用分别进行设计与优化,利用数据库存储元信息的方式加速数据检索效率,利用本地缓存的方式减轻服务器数据传输压力。但其缺点是开发周期过长,采用的数据存储与应用技术相对陈旧;采用统一的HDF文件格式存储各类观测、预报数据,数据预处理工作量大,增加了处理时间;采用“文件及元数据”方式提供对数据检索与访问服务,当数据总量增大时,检索效率依然会显著下降;采用消息中间件与智能推送的方式无法彻底解决大量客户端集中并发访问相同数据时所带来的数据传输压力。因此,该方式无法完全解决目前我国实时预报业务环境下面临的问题。

德国Ninjo系统是欧洲最大的预报业务系统,其开发组织方式是一个典型的跨国别、开放性的合作模式,系统由德国气象局主导开发,瑞士、丹麦、加拿大等国家参与,目前已在8个国家业务中得到应用。Ninjo系统同样采用了服务器/客户端的组织架构,客户端具有数值预报产品以及观测数据的综合展示以及预报预警产品的交互制作等功能,在短时临近、航空、确定性模式以及集合预报应用等方向提供平台支撑。为提升预报员的制作效率,Ninjo系统实现了自动/半自动化预报产品制作和服务产品快速制作,并可自动发布和监视各类产品;为使预报员从大量数据中快速获取有效信息,增强了探空等数据分析和应用,集成了基于天气系统(天气对象)的概念模型应用,支持各专业预报方向间的协同工作流程。针对大数据的存储和服务应用,德国气象局采用基于NetAPP纯闪存解决方案,提高数据服务效率,将应用程序响应从15 s降低到1 s[10]

为解决海量数据造成的应用效率问题,Ninjo系统中的服务器端集成了相应的客观分析算法以及产品自动加工技术,通过对数据初级加工自动提取关键信息,从而协助预报员提升分析效率和产品制作效率。但Ninjo系统中的总数据量与MICAPS相比还较少(前者只包括17部雷达、2000个自动气象站),此外,通过存储硬件的性能提升从而改善数据的访问效率并不是一个可持续性的发展策略。因此,Ninjo系统的设计提供了在服务器端集成数据预处理、客观方法集成的发展思路,但其大数据处理思路同样无法彻底解决国内实时预报业务面临的根本问题。

1.4 MICAPS4建设目标

MICAPS4需要建成适应我国气象预报业务发展需求的综合性业务平台,具体需要实现以下4个目标。

① 面向实时预报业务的海量气象数据高效应用系统建设。现代预报业务发展所需海量气象数据对业务系统的存储、检索以及应用带来了巨大的压力,需要MICAPS服务器提供快速完整的原始数据采集、存储及检索、数据预处理等方面功能支持,为预报员提供数据到达即可见的数据快速访问服务;需要在MICAPS客户端将现代信息技术与现代天气预报技术紧密结合,一方面充分发挥客户端底层硬件的性能,利用多核CPU,GPU加速渲染技术提升更高时空分辨率数据的应用效率;另一方面基于海量数据的快速检索与访问数据服务,优化数据统计与交互分析功能模块。

② 面向专业预报服务的数据应用建设。随着预报业务更加趋向于精细化与专业化,预报业务平台与数据应用方式也应针对各专业预报业务特点进行定制,新的数据应用服务器与客户端系统应能提供更加开放的定制与功能扩展能力,为后续的各个专业化应用提供基础性的平台支撑。

③ 基于精细化模式预报和集合预报应用的预报制作平台建设。数值模式预报及集合预报能有效提高预报准确率,但目前在预报业务流程中预报员仍处于核心地位。因此,预报平台需要为预报员提供数据快速浏览、有效信息快速定位、观测预报数据的综合应用等功能模块,以帮助预报员了解天气形势及其演变特征、加深对预报不确定性方面的理解。此外,还需要为预报员提供精细化的订正工具,将预报员的主观经验作用于客观预报之上;对客观预报数据误差进行订正调整,提供智能化的工具将预报员经验持久化,实现快速智能订正的能力[7]

④ 预报技术方法与人机交互功能的融合:通过移植成熟的客观分析方法与天气概念模型,提升系统平台的智能化水平,一方面可以降低客户端的操作复杂度,另一方面可以从海量原始气象数据中提取用户关心的信息,减轻大规模数据对客户端以及数据传输过程中带来的压力。

2 MICAPS4简介 2.1 MICAPS4架构

MICAPS4为满足海量气象数据的快速应用需求,提供了数据快速解析与数据高速访问支持;为满足多样异构数据的存储需求,提供了灵活自由的数据库存储方式,为适应各专业方向对数据的快速应用,研发了灵活的客户端配置方式以及开放的二次开发框架。参考国内外先进平台的设计思路,MICAPS4体系分为数据处理及存储与客户端交互展示两个子系统,通过对各子系统的功能界定与划分,降低子系统间的耦合度,避免功能重叠,便于后期分别进行项目执行与效能调优,在有限时间内将实际的产生效益最大化。MICAPS4体系中的所有数据访问均发生在数据使用时的实时调用,不同于美国的AWIPS Ⅱ系统设计,缺少基于消息中间件的数据本地缓存策略,这样对于数据存储的并发性能以及数据吞吐要求较高,但也降低了中间件发生故障后数据服务缺失的潜在危险。MICAPS4体系结构图与数据处理流程如图 2所示。

图2 MICAPS4体系结构与数据流程图 Fig.2 Architecture and data flow of MICAPS4

① 多数据源。MICAPS经过20多年的发展,规范了绝大多数气象预报业务应用中的数据格式,各地逐渐形成了比较完备的MICAPS数据应用,包括利用MICAPS格式数据进行历史个例的总结与研究[11-12]、基于MICAPS数据进行本地化二次开发应用[13]等。与此同时,全国综合气象信息共享系统(CIMISS, China Integrated Meteorological Information Sharing System)对气象数据的存储标准、数据来源、数据流程以及数据服务进行了统一,为国家级和省级的气象部门提供了上下一致的数据管理和共享服务[14],MICAPS4作为预报业务平台,在兼容传统数据源的同时,实现对CIMISS体系的对接,将会极大减轻客户端平台的本地化配置工作量,同时会为后续上下级协同功能的开发提供消息传输渠道。

② 数据实时解码。实时气象预报业务中应用到的数据涵盖了气象资料分类体系[15]中的绝大多数,这些数据由于生产与传输方式上的差异,采用了不同的文件存储方式,为了能在MICAPS4数据处理及存储子系统中对数据进行统一管理,提升所有数据在MICAPS4客户端中的显示效率,需要对不同数据格式的原始文件进行解码,输出更适用于客户端应用的格式。MICAPS作为实时预报业务系统对数据的时效性要求较高,因此,数据实时解码服务需要提供高速稳定的数据生产处理能力,以满足预报员产生即可见的数据使用需求。首先,MICAPS4数据处理服务根据各类气象数据的特点采用主动调用与被动调用两种方式。对于卫星、雷达、确定性模式等绝大多数数据采用主动调用的方式,使得数据完整到达后立即进行解码服务;对于地面自动气象站类数据,由于其内容会不定期进行订正和追加,因此,采用被动调用的方式,以确保用户在较短时间内获取最新的数据。其次,针对数据集中到达的特点,数据实时解码服务采用分布式架构,利用多个工作节点对不同数据分别进行解析工作,以确保数据解析速度与数据输入速度基本相等,从而提供毫秒级的数据解析效率。

③ 海量气象数据存储。首先,该服务需要将数据实时解码后产生的海量非结构化数据进行快速写入,同时提供快速扩容的能力;其次,该服务可以为客户端提供高效快速的数据检索以及数据传输支持,需要能保证在多用户并发访问状态下数据检索及传输效率不受影响;第三,能有效地解决数据写入与数据读取并发执行过程中可能出现的数据写入/读取不一致的问题;第四,提供相应的容错机制,避免由于单节点可能出现的硬件、网络故障所带来的服务崩溃的情况。

④ 数据应用代理服务器。MICAPS4中存储的数据除了来自数据实时解码服务中生产的数据之外,还提供来自MICAPS4客户端中预报员制作的交互类数据(如降水落区、灾害落区、精细化网格预报数据、天气分析产品等),以及预报员与科研人员开发的客观算法产品,相对于实时解码服务中产生的数据,这两类数据输出的频率较低、数据总量较少,除此之外,由于编写的算法程序在健壮性和稳定性方面均低于数据实时解码服务,可能会出现数据写入不及时或写入不完整的情况。为了将慢速的、没有稳定性保障的数据写入与实时业务要求的高速文件写入进行隔离,在MICAPS4中增加了数据应用代理服务器服务,该服务可为科研算法应用提供数据写入操作,同时能为多种编程环境(.NET,R,Python,Fortran,Java等)提供稳定统一的数据访问接口。

⑤ MICAPS4客户端。作为人机交互和数据资料综合显示分析平台,MICAPS4客户端首先需要对多数据源进行无缝连接支持。平台用户不需要关心数据格式与数据传输协议,通过统一的综合图、菜单项图形用户界面即可快速加载各类气象资料。客户端可以支持各类气象资料的高效、高质量的图形化展示,协助用户快速理解大气结构及运动状况。提供数据多种快速检索方式,为不同的业务场景与业务流程提供可配置的数据展示,针对不同类型的数据提供可见即所得的属性设置面板,为用户提供快速修改数据显示属性与分析的能力。可以提供易于操作的客户端界面与功能窗口布局,减少预报员的学习成本。在用户界面设计过程中,除了参考成熟系统的优秀界面设计,还需要充分保留用户的操作惯性,协助MICAPS旧版本客户端用户快速平滑地向新版本过渡。MICAPS4客户端提供更为稳定开放的二次开发框架,为后续开发人员提供任意功能扩展能力,支持不同层次的开发人员在MICAPS4客户端框架基础上进行应用开发,除了提供便捷的二次开发接口与底层框架服务外,还要提供健壮稳定的框架,确保应用模块自身的缺陷不会造成整个系统的崩溃。

2.2 MICAPS4客户端功能简介

MICAPS4客户端是MICAPS4体系中直接参与用户交互的核心,也是海量气象数据的集中应用与显示的主体,同时还要为用户自定义功能模块、本地数据加载与本地化业务流程提供支撑。因此,MICAPS4客户端需要保证数据显示高质量高效率、界面易于操作、配置简单灵活、框架开放稳定等特性。

2.2.1 MICAPS4客户端安装与升级

MICAPS4客户端采用绿色软件安装方式,操作系统支持Windows XP及以上的32位及64位操作系统,采用OPENGL(open graphics library,开放图形库)绘图接口作为底层渲染实现。整个客户端界面风格以及功能模块操作方式与旧版本最大程度地保持了一致,同时为了减轻用户的维护工作量,MICAPS4客户端增加了网络在线升级功能,该功能可以自动将服务器上的最新功能模块更新到客户端中,且不会覆盖本地配置。

2.2.2 MICAPS4客户端用户交互界面

MICAPS4客户端界面为用户提供了资料检索、图层控制、数据显示、高级操作等功能的统一图形化用户接口(GUI),涵盖了客户端的全部功能,因此,交互界面的设计在保证功能齐全的同时,还要保证用户操作的友好度以及无歧义性。在参考国外先进预报平台的优秀功能界面的同时,还对旧版本MICAPS全部客户端(MICAPS工作站,MICAPS1,MICAPS2,MICAPS3) 的界面进行了梳理,保留了用户界面布局以及用户使用习惯。

MICAPS4客户端分为菜单栏、工具栏、交互工具箱、主地图、图层属性设置、图层管理窗口、日志窗口以及状态栏几个部分,客户端的整体界面如图 3所示。

图3 MICAPS4客户端界面布局 Fig.3 MICAPS4 client layout

① 菜单栏。MICAPS4客户端的菜单栏保留了传统MICAPS客户端的基本功能,为用户提供系统设置、地图参数设置、综合图加载、MICAPS数据快捷调阅及系统帮助等功能的快速入口,并提供了一些新的便捷性功能。在MICAPS4客户端的“文件”菜单项下,用户可快速将当前显示的数据路径、数据显示样式以及地图显示状态以“工程”的方式进行保存,方便后期快速调用。在“视图”菜单项下,用户可以将自定义的工具栏窗口布局进行保存以及调用,方便不同显示分辨率的机器快速调整工具栏窗口。在“地图”菜单项下,用户可使用“高分辨率地形图”、“全球地图”、“全球影像图”等切片地图服务,为灾害影响预报以及精细化气象保障提供服务支持。综合图的调阅以及配置方式与MICAPS3完全一致,可确保客户端配置的快速迁移。在“帮助”菜单项下,用户除了可快速查看帮助文档外,还能获取最新的版本信息以及使用在线自动升级服务。

② 工具栏。工具栏用于提供系统工具以及部分高级功能模块调用,MICAPS4客户端下的工具栏分为3个部分:系统工具部分、图层控制部分以及扩展功能模块部分。用户可对这3个部分进行任意停靠/悬浮调整。在系统工具中,提供了“黑白主题切换”功能,方便用户在预报模式下与会商模式下快速切换;为多屏显示提供了“窗口弹出”功能,增强了多屏幕状态下的显示能力;增加“预报产品保存助手”工具,用户可根据常规业务预先定制各个预报产品的保存路径以及文件名格式,当制作完相应产品后可快速进行文件保存,避免文件名书写错误并可节省预报产品的保存时间。在图层控制部分中,除了提供常规的将已打开数据按时间、层次进行顺序翻页以外,还增加了设置翻页时间间隔功能,客户端可以按照用户指定时间间隔进行顺序翻页。工具栏的扩展功能模块部分用来放置所有的扩展功能模块,系统以及用户二次开发的功能模块均可在此处进行功能扩展。

③ 交互工具箱。MICAPS4客户端将常规天气交互分析符号与中尺度分析交互符号合并在一个交互界面中进行管理,用户可分别设置两组符号的显示顺序以及各组内部符号的位置顺序。

④ 主地图。该部分是MICAPS4客户端最重要的数据显示及用户交互区域,该区域以可视化的方式对多种类气象数据与基础地理信息数据进行叠加显示,用户在该区域内通过鼠标操作完成地图缩放、要素显隐控制、客观分析/统计方法调用以及人机交互绘制等功能。

⑤ 图层设置窗口。MICAPS4客户端最大的变化是重新定义了图层的属性窗口,将MICAPS3客户端中无差别的图层属性设置控件变成针对不同种类数据图层进行单独设计的扁平化的属性设置窗口(如图 4所示)。图 4分别展示了地面填图、格点数据、离散点数据、风场数据、卫星数据的属性设置窗口,该窗口显示的内容由各个数据图层根据应用特点分别进行定制。

图4 MICAPS4图层属性设置窗口 Fig.4 MICAPS4 layer property config window

⑥ 图层管理窗口。MICAPS4客户端中的图层管理窗口主要用于显示各个图层的描述信息以及对图层进行控制操作。图层管理窗口还可以通过颜色、斜体、特殊标识符号区分每个图层的状态以及对相同要素的不同层次进行区分。

⑦ 日志窗口。MICAPS4增加了日志显示窗口控件,主要用来显示当前客户端执行各个操作的执行状况以及记录用户操作中可能出现的错误信息,可协助用户对存在的错误进行简单排查。

⑧ 状态栏。状态栏位于客户端的底部,主要用于显示当前的客户端版本号,当前激活地图的投影信息,当前鼠标所在位置的经纬度、海拔高度、处于激活状态的图层相关信息(如鼠标所在位置的红外云图的云顶亮温信息等),以及鼠标临近的国家站站点信息。

⑨ 键盘快捷键。为提升用户的操作效率,MICAPS4客户端对常用的操作提供键盘快捷键支持,用户可通过键盘操作实现图层翻页、地图重置、清空图层、新建交互图层、交互撤销/重做操作、交互图层保存、全屏切换、图片保存等基本功能。

2.2.3 MICAPS4数据检索

在MICAPS客户端的常规使用过程中,预报员一般先通过数据检索功能对数据进行加载,然后再对数据进行相应的浏览及分析工作。数据检索作为客户端平台调用资料的主要入口,是MICAPS客户端中使用的最为频繁的功能之一。为了提升MICAPS客户端平台中数据检索效率,各级气象台业务维护人员进行了大量的开发工作加快本地MICAPS客户端平台上数据调阅的速度[16-17]

为减轻平台维护人员与使用人员在资料接入过程中的配置工作量,MICAPS4客户端中的资料检索配置方式与MICAPS3兼容,并在检索效率和本地化配置开放程度上进行优化和完善。首先,MICAPS4客户端仍然采用MICAPS3客户端综合图的检索方式以及综合图定义方式,利用“菜单项”将常用综合图进行分级组织管理与快速检索,利用“综合图检索”窗口展示全部定义的综合图文件,利用“参数检索窗口”可根据时间信息快速定位各类数据的文件。其中综合图、菜单项、“综合图检索”以及“参数检索窗口”的配置文件均保持与旧版本一致,用户可直接将MICAPS3中定义的各个相关配置文件拷贝到MICAPS4的相同目录下进行使用。其次,MICAPS4客户端中还提供了图形化的菜单与综合图配置工具,协助用户通过可视化方式将数据路径与综合图进行映射,并将综合图与菜单项进行关联。除此之外,MICAPS4对综合图保存进行了功能扩展:MICAPS4可将当前地图区的全部显示场景快速保存,除保存地图上叠加的数据图层路径外,还保存了所有图层属性与底层的地图信息,包括地图投影方式、基础地理信息显示方式以及分屏信息等。通过该类数据的保存,预报员可更加快速的将数据进行检索显示,方便会商的快速出图使用。

MICAPS4客户端除了提供对文件型数据源的支持之外,还支持功能更强的CIMISS-MICAPS海量分布式数据存储系统,后者使用分布式数据库组织方式,并通过MDFS(multiple dimension file system,多维文件系统)协议与客户端进行通讯。

2.2.4 MICAPS4图层控制

气象预报业务数据具有多检索维度的特征,用户对数据的检索操作存在各个维度上有序与无序共存的特点。

无序操作主要用于进行数据对比或数据叠加分析,这种方式需要保证所有数据的某些维度参数一致(如要素、时间一致)而其他维度参数不同(如层次、模式名称),如要对比不同模式的降水预报结果,可将6 h累积降水量、24 h累积降水量组织成不同的菜单项,并将每个菜单项对应的综合图配置成日本模式、欧洲中期天气预报中心模式、中国气象局GRAPES模式等的降水要素、相同预报时间下的产品数据路径。在MICAPS4客户端中无序操作主要

依靠高效灵活的数据检索工具协助完成,通过配置较为符合业务使用习惯的菜单项、参数检索界面布局达到快速定位数据叠加的目的。

有序操作主要是在时间、层次维度上对数据进行一系列的连贯动作,在MICAPS4客户端中,主要通过图层管理与控制模块实现。MICAPS4客户端使用“图层”对打开的数据进行组织管理,同时提供了非常丰富的图形控件以满足用户对图层进行显示、隐藏、删除、翻页、对齐、时间跳转、属性控制等一系列操作需求。

图层管理窗口是MICAPS4客户端中对“图层容器”进行可视化展示的控件,该控件可显示已加载的全部图层信息,包括图层的文字描述以及图层的加载顺序,同时该控件还提供了图层显隐、删除、前后翻页等控制操作。在MICAPS4的图层管理窗口中增加了“图层时间对齐”的功能按钮,该功能可将所有已加载图层向指定图层对应的时间进行跳转,观测数据按照观测时间对齐,预报数据按照预报时间(起报时间及预报时效)对齐。

MICAPS4客户端中提供了“时间轴”控件以支持图层在时间维度上的复杂操作,该控件将“时间信息”、“图层信息”以及“图层控制”进行有效的结合。通过灵活的控件操作定义,可将所有正在显示的图层跳转到用户指定的任意时间,也可通过鼠标简单拖拽的方式协助用户完成指定时间段下的数据动画及动画输出;通过友好的可视化展示方式,“时间轴”可将历史、未来以及当前系统时间进行区分。利用“时间轴”,用户可在时间维度上快速完成对于数据的控制,对历史资料的快速检索访问也能提供非常友好的操作支持。

2.2.5 MICAPS4部分高级功能简介

MICAPS4客户端除提供基本的气象数据叠加与交互绘制之外,还提供了高级的数据统计与数据分析功能模块,增强了确定性模式数据的综合应用能力及应用效率,并为二次开发功能扩充提供了设计思路。

① 模式资料曲线。模式资料曲线模块主要对不同客观预报产品在相同经纬度上随时间变化趋势的显示或对比,MICAPS4客户端对该模块功能进行了扩展,首先增加了观测结果的叠加显示,用户可根据过去时间内的预报与观测数据的对比确定模式的预报效果从而对模式的选取提供参考;其次该模块增加了配置保存能力,用户可通过可视化界面对经常使用的经纬度、站点信息以及模式、要素、层次等信息进行保存,方便后期预报制作时快速调用。模式资料曲线界面如图 5所示。整个模式资料曲线界面分为数据显示区、时间选择区、基本工具区、资料选择区以及站点选择区5个部分。数据显示区可以对模式预报要素或站点观测数据进行综合叠加显示,该区域的左侧可显示观测结果及各个模式的分析场结果,右侧可显示各个模式预报场的变化情况。时间选择区域可选择观测数据的起始时间与模式数据的预报时长。在资料选择区中,用户可自定义显示的数据或要素。在站点选择区域用户可自定义站点并设置常用站点。

图5 MICAPS4客户端模式数据曲线 Fig.5 Model data sequence curve on MICAPS4 client

② 模式探空。该模块可利用数值预报模式产品,生成任意站点/经纬度在选定预报时间下的温度/对数压力图,并计算相应的物理量。MICAPS4将模式探空的显示及操作方式与观测探空进行了统一,用户可在MICAPS4客户端主地图上直接选取与切换站点,还可通过界面进行预报时效的前后翻页与跳转。对于海拔超过1000 m的站点,模式探空模块中增加了“抬升点资料选择”,MICAPS4根据站点高度信息计算站点所在的等压面层次,再利用模式数据地面10 m风场、2 m温度场、2 m相对湿度场或2 m露点温度场进行抬升点参数计算。

MICAPS4的模式探空模块可以帮助用户分析未来某地上空的大气层结状况,辅助分析强对流天气潜势,制作强对流天气预报,也可通过探空曲线获得其他预报指标。

③ 模式资料剖面。MICAPS4客户端的模式资料剖面模块可对数值预报模式数据或观测的客观分析数据进行分析显示。通过对垂直层次、水平经纬度、时间3种维度分别进行组合,剖面模块提供了时间水平、时间垂直以及空间垂直剖面3种分析方式。时间水平剖面可以用来反映某一范围内天气系统移动、发展的规律,辅助研判天气形势,预报员可以通过选取某一经(纬)向剖面,分析天气系统或天气过程的南北(东西)变化,利用多个要素的叠加,更好地认知天气系统、更全面地理解天气过程。

时间垂直剖面是目前预报员使用较多的功能模块,主要用来展示指定某一站点或任意经纬度位置上空不同层次要素随时间的变化情况。时间垂直剖面类似于模式资料时间序列图增加了层次的叠加显示,预报员可将天气预报分析和诊断中的动力条件、水汽条件、热力条件叠加显示,既可以辅助分析某一层次气象要素的变化,也可以辅助研究高低空天气系统的空间配置,为预报或者天气过程分析总结提供参考,时间垂直剖面界面如图 6所示。空间垂直剖面主要用来展示某一范围内各预报要素随层次的变化情况,可以协助预报员了解其三维空间分布。与其他高级功能模块类似,MICAPS4客户端下的所有剖面功能一方面保留了基本操作方式与用户界面布局,另一方面还提供了便捷的常用站点、要素的自定义保存与配置功能,便于用户快速进行数据分析及显示。

图6 MICAPS4客户端时间垂直剖面 Fig.6 Time sequential-space vertical cross-section on MICAPS4 client

2.2.6 MICAPS4集合预报功能介绍

集合预报产品为预报员提供数值模式预报的不确定性信息以及极端天气出现的可能性信息。近年来,各级气象部门逐渐加大了集合预报产品在预报业务中的应用[18-19],并开发了一些应用方法与平台[20-22]。MICAPS4客户端也专为集合预报数据应用增加了产品分析和显示功能模块,实现了对集合预报数据资料的解析统计、可视化与用户交互。作为MICAPS4客户端的功能模块,集合预报功能模块具有高交互、易扩展的特点。MICAPS4集合预报功能模块目前支持以下几类产品的显示:① 邮票图。可将全部集合成员的预报结果显示在同一个窗口中,将多种可能的天气形势变化趋势呈现给用户,用户可以通过界面操作进行时效前后翻页以及动画操作,也可选择重点关注其中几个成员结果。② 集合统计量。显示指定要素的集合统计产品,包括平均及离散度、平均数、中位数、最大值、最小值。该数据作为数据图层叠加在MICAPS4基础地图中显示。③ 天气要素预报概率图。对于降水、温度、风等要素,可显示不同量级出现的概率,用户可显示固定阈值的概率产品,也可指定某一阈值及范围进行分析显示。④ 面条图。通过选取某一数值,将所有成员对该数值的等值线的都综合绘在一张底图上,从而将该气象要素的发散程度进行可视化,该数据作为数据图层叠加在MICAPS4基础地图中显示,用户可对该数据图层进行前后翻页、属性控制等操作。⑤ 单点概率图。显示在某一地点各成员预报值范围的分布情况,标量数据以盒须图与烟羽图的方式进行显示,矢量场以玫瑰图的方式进行显示。

2.3 MICAPS4核心设计与实现 2.3.1 海量气象数据流式解析技术

MICAPS4数据处理及存储子系统提供的数据解析模块可将海量的异源异构数据进行实时解码整理,并将解析后的数据进行统一存储供客户端和应用服务访问。实时解析模块实现了高吞吐、高容错、高性能、高扩展4个方面的能力。高吞吐是指解析系统的输入输出数据总量非常庞大,对于实时气象预报数据,数据往往存在短时间内集中到达的情况,需要数据解析避免由于输入速度远大于输出造成的数据堆积;高容错是指在任意时刻都不允许系统宕机的情况,避免数据丢失;高性能是指尽可能充分利用系统资源,在有限的硬件环境下发挥系统最优的性能;高扩展是指数据解码模块可以支持“热插拔”下的解码器升级,即可以在不重启模块的情况下完成新数据的解析能力扩展。

MICAPS4数据处理及存储子系统采用多节点负载均衡与主/从热备份的总体结构,利用资源动态分配策略、分阶段的异步线程池设计,在数据解析模块中实现了具有“产生即可见”特点的高速加工流水线。首先,利用多台服务器搭建分布式架构解决高速吞吐问题;其次,利用虚拟化技术,降低由于单台服务器故障造成整个解析功能的失效;第三,采用SEDA(stage event driven arichitecture,基于阶段事件驱动的架构)技术,保证了整个解析模块的高性能特性;第四,利用Java语言的反射技术,实现解析模块的高扩展功能。

通过以上技术,保证了数据解析和写入的高效性和稳定性。MICAPS4数据处理及存储子系统无论面对爆发性数据到达还是均匀数据到达均可保证平均几十毫秒的流式解析与写入性能。对于集合预报数据解析的特殊情况,将处理环节分为解析与计算两个阶段:通过将不同的物理量/层次映射至不同的物理节点,可以针对同一时刻到达的集合预报原始数据启动大规模分布式计算,并最终将集合预报数据处理时间缩短2 h,真正实现数据到达即可访问,且成功解决海量气象数据乱序到达、按序读取的技术难题。利用该技术,MICAPS4系统在数据解码环节上所消耗的时间大幅缩短,相比于MICAPS3系统,预报员平均可提前1 h得到欧洲中期天气预报中心细网格资料。

2.3.2 海量气象数据高速存储

气象高速存储模块是MICAPS4数据处理及存储子系统的核心,一方面需要将高速解析后的数据快速持久化,另一方面又需要为客户端提供高效的数据检索与数据访问服务,因此,在整个MICAPS4数据处理及存储设计中,高速存储的选型显得尤为重要。通过前面的分析可知,气象实时预报数据本身具有多类型、检索维度复杂、非结构、小文件多的特性,目前在信息技术领域,针对非结构化海量小文件的存储与应用系统也有大量研究[23],在气象领域也有针对特定格式的海量数据存储的大数据应用研究[24]。传统的Samba文件系统无法支撑上千万量级的文件检索,面向大数据应用的存储体系HDFS(Hadoop distributed file system,Hadoop分布式文件系统)在数据频繁更新的场景下无法同时保证数据写入与读取效率,而非关系型数据库在处理海量数据方面具有较强的优势[25],这其中Cassandra是一个基于Key-Value(键-值)的P2P(peer-to-peer, 对等网络)分布式系统,适应气象数据的多维索引特征,且在小数据存储方面具有很强的优势,此外,Cassandra作为开源软件,具有很好的深度定制潜力,因此,MICAPS4系统中采用Cassandra作为存储实现方案。

结合气象数据的存储以及应用特点,针对海量气象实时数据的特性,CIMISS-MICAPS4海量数据存储子系统设计了适用于多源异构数据的自由表模型,该模型能够同时容纳非结构化数据、结构化数据、空间数据、时序数据,并可根据不同数据的不同检索维度自由扩展。在该模型下,为MICAPS4系统解析生成的每一类数据设计了维度索引表,以支持用户对于数据在有序维度上的快速检索(如上下、前后翻页),设计了最新时刻表以支持用户快速数据定位需求,利用最新时刻表查找指定路径下的最新数据,通过拼接即可快速定位该数据的完整URI(uniform resource identifier, 统一资源标识)信息。

研发适用于气象数据实时预报业务应用特点分布式计算技术,通过构建最优的本地计算的存储结构,对数据进行本地计算,避免数据搬运,利用构建分布式消息服务器,实现数据解析模块到分布式计算模块的快速计算消息触发;基于多核CPU以及高内存,构建了海量数据内存迭代计算的高速数据处理框架。通过以上设计,实现了集合预报的交互式应用,实现模式时间序列、模式剖面产品的快速制作以及动态交互模式Tlnp图制作,支持基于模式产品的动态探空分析,极大提高模式及集合预报产品的应用效率。

MICAPS4系统中的分布式存储解决方案,构建了满足实时气象预报业务需求的海量数据高速存储引擎,可同时容纳数十亿海量小文件存储,面对数百人并发访问可提供10 ms量级的高性能响应,使前端预报平台上的数据访问性能提升2个数量级以上[26]

2.3.3 灵活易扩展的客户端组织架构

从MICAPS3开始,MICAPS客户端不断探索为各级预报员提供更加稳定高效的客户端平台、为各级开发人员提供更加灵活开放的二次开发扩展框架、最大化的提供代码复用率方案。MICAPS3客户端虽然使用模块化方式提供可插拔的功能模块管理方式,但底层内核框架与上层功能模块间的耦合度较高,且用户功能模块需要同时处理数据读取、数据内存组织管理、业务逻辑实现、图形显示绘制、弹出窗口管理等一系列复杂操作,虽然这种开发模式使核心框架相对简单、应用模块开发没有局限性,但其弊端也非常明显:首先是功能模块依赖于核心框架的具体实现方式,当核心框架升级后,大量已有的功能模块需要重新编译,增加了功能模块的维护工作量;其次由于功能模块没有开发边界,模块的代码质量会直接影响到平台的效率和稳定性,很容易出现单个低质量的功能模块造成整个系统崩溃的情况;第三,由于各个功能模块自己组织内存数据,模块内的算法无法提供给其他功能模块使用,降低了代码的复用率,增加了代码开发成本。以上原因造成了MICAPS3客户端的碎片化问题逐渐突显。

MICAPS4客户端框架通过使用更为成熟的软件开发模式,提供耦合度更低的开发框架,将用户的开发重心限制在“业务逻辑”与“数据导入”的实现中,在最大可能的满足扩展需求的同时,降低二次开发的成本。首先,使用分层结构与面向服务的体系架构(SOA)将MICAPS4客户端的功能进行分层与模块化管理,该设计模式下可支持平台的逐级优化,并可将单个模块的影响限制在有限范围内[27]。其次,将所有的基础功能与资源均封装成“接口服务”,利用IOC(inversion of control, 控制反转)中的DI(dependency injection, 依赖注入)模式设计了全局服务总线,可将所有接口服务作用于整个MICAPS4框架结构之中,降低了模块间、模块与框架间的耦合度,并支持用户自定义的服务插入到服务总线后被其他模块调用,提升功能的复用程度。

MICAPS4客户端采用面向接口,封装变化的设计思路重新定义框架内核:MICAPS4客户端核心由与领域无关的基础组件构成,且基础组件暴露给应用模块的是抽象的接口而非具体的实现,该方式实现了内核与应用的解耦。

MICAPS4客户端是由数据驱动的综合应用平台,被加载的数据类型决定其在平台上的显示、分析、属性控制等功能实现。MICAPS4客户端采用了MVVM(model-view-view model,模型-视图-视图模型)的设计模式,可将气象数据与算法应用、图形显示进行分离,在Model(数据模型)部分的设计中,MICAPS4客户端将不同的数据存储结构统一成矢量、栅格、格点3种内存模型,并在此内存模型基础上进行统一的渲染、算法与应用的实现,极大提升了代码的复用率;在View(视图)控件的组织与设计中,MICAPS4客户端参考了Prism(微软开发的开源松耦合框架)框架的组织方式,将用户界面分成“界面框架/定制区域”组织方式。在此基础上,用户可更加灵活地扩展界面,为MICAPS4框架下的用户界面开发提供了强大的扩展能力;在视图模型部分,用户只需要关注业务逻辑的实现,利用服务总线中所注册的服务,通过有限的代码即可完成复杂的功能模块设计。在此灵活开放的客户端框架支撑下,使各专业版本可以按照敏捷开发的模式进行实施,为各类应用需求节省了大量的开发成本。

2.3.4 高质量的渲染引擎

数据渲染引擎是MICAPS客户端的核心功能模块,它负责将内存数据通过可视化技术进行图形化展示。MICAPS4使用了与MICAPS3相同的OPENGL渲染技术,但具体实现方式完全不同。MICAPS3的图形渲染引擎采用的是仿Win32 GDI(graphical device interface, 图形设备接口)方式的2D即时渲染方式,即在一个绘制函数中传递上下文句柄,然后由各个应用模块自行组织图形绘制。这种方式的优点是比较灵活,但缺点是缺少对绘制数据的统一管理,无法在系统级别对数据渲染进行优化,效率较低,无法采用支持硬件加速的图形API(application program interface, 应用程序接口)进行开发。

MICAPS4客户端需要高质高效的显示海量高分辨率数据,并通过各种可视化方式将数据中的原始信息展示出来。按照分层设计原则,MICAPS4的图形引擎位于系统内核中,因此,客户端首先将图形系统从系统业务层和数据层中解耦合出来变为独立的组件,充分利用现代图形API和硬件特性,提高渲染速度和质量。

① 渲染器架构设计。首先将图形系统和业务系统完全分离,这样功能模块可以不参与图形绘制过程,增强整个系统的健壮性;此外,可对不同的图形引擎,实现不同的渲染器来达到切换图形系统的功能。针对气象数据在实时预报中的应用特点,MICAPS4底层渲染引擎设计了“场景”支持能力,通过“场景”将绘制过程与实际的绘制方法隔离开来,二次开发用户只需关注绘制所用数据而不需关心数据的具体绘制过程。这样的结构化设计可以做到图形系统与业务系统分离。其次,不必执行和渲染无关代码,减少核心渲染循环中出错的可能。所有需要绘制的对象都包含在场景中,可以在场景中对数据进行统一优化和管理。

② 使用高级编程技术提升引擎的数据渲染能力。为提升高分辨率站点数据的显示效果和效率,对图形渲染管线中的着色器进行编程;为提升高分辨率云图、雷达拼图、高分辨率地形图产品的显示效率,利用纹理数组和异步缓冲对象,提高显卡内数据的传输效率;扩展“基于任务”的渲染策略,可在渲染线程中加载图形资源,提升高分辨率数据的显示效率和用户体验。为提升高分辨率模式数据的显示效率,利用多线程并行渲染技术,充分发挥了现代多核CPU的优势,极大提升数据的处理效率,提供数据“边加载、边显示”的效果,减少了数据显示的等待时间;为改善传统风场数据的显示效果,增强天气系统的过程动画显示效果;采用GPU反馈以及多渲染目标输出等技术,实现了基于GPU的粒子系统和各种后处理算法,提升对风场、流场显示效果和效率;为了使常规观测数据的要素与站点信息渲染效果更佳优秀,增加动态反锯齿字体生成系统,提升基础图元的显示平滑度。

通过上述技术,使传统的气象数据的图形绘制效率比MICAPS3提高10倍以上,并使之更适用于预报业务场景下的气象要素显示与用户交互。

3 MICAPS4应用情况

MICAPS4采用边建设、边应用的推广理念,2015年完成基于CIMISS数据环境的分布式数据存储对接,并在中央气象气象台开展了MICAPS4的业务化测试应用工作,2016年2月MICAPS4正式在中央气象台业务化应用。2016年6月MICAPS4客户端正式向全国定版发布,截至目前全国已有近20个省份完成了CIMISS-MICAPS4海量数据存储的部署,联合中国气象局气象干部培训学院开展了3期面向全国各省气象台预报员的培训工作。目前MICAPS4客户端已广泛应用于全国天气会商、重大天气过程总结以及各省内部会商总结中。

3.1 常规分析功能应用情况

MICAPS4客户端具备快速资料叠加的能力,结合交互工具箱,在温度、降水等常规预报制作方面,预报员可以通过MICAPS4客户端提供的资料快速调阅、图层属性设置、天气符号绘制等工具对天气系统进行快速分析以及完成过程降水等预报分析的制作。图 7显示了中央气象台在早间天气会商中使用MICAPS4对2017年4月15—17日我国中东部的降水过程分析。

图7 2017年4月15—17日过程降水分析 Fig.7 Precipitation during 15-17 Apr 2017 analysed by MICAPS4

利用MICAPS4客户端的高精度地理信息,可为单点的精细化预报服务或者天气过程分析总结提供非常精准的位置参考,结合自动观测数据的叠加与交互符号绘制,可帮助预报员快速分析或制作中小尺度以及局地天气预报或过程分析。图 8为2016年6月23日江苏阜宁强对流天气过程分析报告中使用MICAPS4显示的中气旋路径示意图(图 8a)以及自动气象站观测结果(图 8b)。

图8 MICAPS4辅助强对流天气过程分析 (a)中气旋路径示意图,(b)自动气象站观测 Fig.8 Strong convective case analysed by MICAPS4 (a)path diagram of mesocyclone, (b)automatic station observation

目前在全国各省级预报部门,由于CIMISS-MICAPS4海量数据存储能为前端业务平台提供及时、稳定、高效的数据支撑,大部分省级气象台已逐渐将MICAPS4取代MICAPS3,在预报业务流程中应用于数据翻阅、天气分析、交互产品制作等各个关键环节。另外,利用MICAPS4开放灵活的底层框架,部分省份基于MICAPS4框架发展了适用于该省预报业务系统或者预报员个例收集与考试系统。如福建省气象局基于MICAPS4系统框架与国家气象中心联合研发的“精细化格点预报编辑平台(MICAPS-GFE)”, 该平台为省级预报员提供了快速制作格点要素预报产品的支撑,目前已在全国推广应用,在全国智能网格预报业务流程中发挥了强大的平台作用。河北省气象局基于MICAPS4平台开发了灾害性天气个例库系统,不但可以使用MICAPS4基础版的全部功能,还支持预报员用最便捷、最熟悉的方式查看历史个例数据,同时该系统可围绕灾害性天气历史个例构建的检索、训练、追加、考试等一系列功能满足预报员对于历史个例的学习、科研与训练的各项要求。

3.2 QPF主客观融合订正平台

近年来,国家气象中心为提升定量降水预报(QPF)准确率与精细化程度,发展与引进了很多较为成熟的模式后处理技术与模式产品释用技术,形成了很多业务化产品[7]。高分辨率预报产品一方面给QPF预报提供了高质量的参考产品,另一方面带来了最优产品选择与产品订正的压力。为解决上述问题,中央气象台的定量降水预报业务在预报流程上进行优化与完善,将制作QPF的业务流程细化成5个环节,每个环节都能体现预报员的主观预报能力。与此同时,基于MICAPS4客户端框架设计研发了QPF主客观融合订正平台(图 9)。该平台可有效协助预报员应用海量的模式产品,在多个模式产品基础上进行融合,利用便捷的交互工具将预报员主观经验作用于融合后的结果,并将最终产品结果进行降尺度处理,形成精细化、无缝隙的格点化预报产品。

图9 QPF主客观融合订正平台界面 (a)多模式选择界面,(b)模式融合后处理界面 Fig.9 Platform interface of QPF subjective and objective fusion platform (a)multi-model selection interface, (b)fusion postprocessing interface

由于MICAPS4提供了灵活开放的底层框架,为功能模块和专业版本的二次开发提供了非常便利的底层支持,因此,QPF主客观融合订正平台除可以无差别地使用MICAPS4客户端底层框架提供的所有功能服务以及资源服务外,还可以根据实际操作流程对界面布局、用户图形界面进行深度定制。根据调整后的QPF预报业务流程,QPF主客观融合订正平台具有5个功能模块:数据源选取模块作为主客观融合的QPF预报的第一步,支持预报员从海量的客观预报产品中选择多种模式产品来进行数据融合,利用MICAPS4客户端框架提供的统一内存组织结构,该模块可以将来自不同数据源、不同存储格式的格点数据进行统一处理,为后续的数据计算提供了良好的支撑;降水集成模块可将预报员选好的多个格点产品进行融合,通过权重设置、概率匹配订正、滤波调整、值域调整、目标调整等方式形成符合预报员主观经验的初始场产品;频率调整模块可通过图形化的方式对格点场数据在量值的分布频率上进行重新分配;落区订正模块可支持预报员利用MICAPS4提供的等值线编辑工具对格点场生成的等值线结果进行交互调整,订正后的结果可直接作为落区结果发布,也可生成最新的格点场数据;格点化处理模块可对主观订正修改后的格点场数据进行空间降尺度与时间拆分上的操作;服务产品制作模块可根据格点数据自动生成各类文字及图片产品。

由于MICAPS4客户端框架将用户界面展示、应用逻辑算法及数据可视化显示进行了解耦,在此松耦合框架的基础上,各个版本可以实现并行化开发,有利于短时间内完成系统的建设搭建与组装,为整个项目的实施节省了时间成本。2017年5月8日国家气象中心QPF利用该平台完成了从绘制降水落区切换到主客观融合QPF业务系统中,该系统涵盖了全球模式、集合模式、区域模式、区域集合模式、客观预报产品5类19种预报产品,预报员可以便捷快速地从各类海量数据中提取有效降水预报信息,并将上述信息通过权重设置进行融合,通过值域选取、单点修改和滤波进行值域调整,进而生成等值线和格点背景场,最终进行智能化的格点QPF快速拆分传送服务,整套业务流程在增加了预报准确率与精细化程度的同时,未增加预报员的手工工作量,实现了工具的便捷化。

4 MICAPS4未来发展

MICAPS4是中国气象局具有完整自主知识产权的、基于大数据应用技术研发的天气预报业务平台,基于CIMISS集约化数据环境,为实时预报业务量身定制了一套包含数据接入解析、数据高速存储、数据可视化展示的先进、高效、智能的完整预报制作系统。作为天气预报业务平台,MICAPS4系统将在功能方面按照预报业务的发展需求,向数据应用的智能化、平台操作的便捷性方向持续发展,进一步提升预报分析制作的支撑能力;在系统建设方面,按照中国气象局的信息化与现代化统一发展规划进行集约化协同化发展,主要包括以下4个方面。

① 提升MICAPS4系统的预报支撑能力。以预报员为核心,围绕实时预报业务需求,提升平台操作的便捷性与功能模块的智能化水平。通过对预报员操作行为进行深度挖掘,对平台及数据的操作方式与对应的业务场景进行归类,从而完善用户的常用功能模块,并可在各个操作阶段为用户推荐最优工具;利用自然语言处理算法,自动将预报员制作的落区产品、格点预报产品生成对应的文字材料,让预报员的主要精力集中在预报思路的形成上;集成成熟的客观分析方法,配合大数据处理技术与人工智能计算,提升对原始海量数据的处理与加工能力,通过将原始数据的预处理加工,快速提取和集成有效信息,缩短预报员的数据使用时间,辅助预报员快速形成分析结论。

② MICAPS4体系的云化发展。“气象云”是气象信息化发展的必经之路[28],随着全国气象信息共享系统的业务化及深入发展,各业务系统所依赖的数据环境必然会从分散封闭的“信息孤岛”状态向开放集约的“气象云”发展。为了充分利用气象云所提供的集约化数据资源与计算资源,为各级预报人员提供统一、便捷的气象预报业务平台,为应用开发人员提供开放灵活及集约化的开发环境,MICAPS体系必然会与“气象云”深度结合,一方面CIMISS-MICAPS4数据存储环境将持续为实时气象预报业务应用提供数据支撑;另一方面MICAPS4客户端也会将现有的面向桌面服务的客户端框架改造成面向云端应用的的服务架构(如图 10所示)。

图10 MICAPS4客户端迁移 Fig.10 Migratrion of MICAPS client

未来的MICPAS客户端体系,将利用“气象云”中的底层基础设施,在PaaS(platform as a service,平台即服务)层进行基础框架与底层服务的移植与部署,现有的基础性服务如客观分析、等值线分析、模式剖面制作等方法将作为网络服务提供给前端应用,在SaaS(software as a service,软件即服务)层搭建应用模块,各应用模块使用底层的MICAPS-云端框架层服务,并可根据实际业务场景需要进行模块间的灵活组合,通过网页、桌面程序或者手机APP的方式进行客户端界面化封装,客户端只负责接收用户的交互操作与数据结果展示,形成更加轻量级的瘦客户端。经过移植后的MICAPS所有功能均可部署在云端,实现无处不在的功能支持。

③ MICAPS4体系的智能化发展。随着气象业务的现代化水平不断提高,气象数据仍将以爆发性的速度发展,预报的精细化程度也在不断加深。预报员在有限时间内完成海量数据的阅览分析,精细化预报产品的制作发布等一整套流程已经变得越来越困难。MICAPS4体系未来将在3个方向进行智能化的发展,通过集成成熟的客观预报方法及数据预处理方法,利用天气系统识别、天气概念模型引入等方法,从海量数据中提取对预报员有用的信息,节省预报员浏览及分析数据的时间;通过研发基于机器学习的智能数据处理与预报方法,可基于雷达卫星等观测资料进行外推预报或天气系统识别,为短时临近预报提供预报预警参考信息;利用预报员的预报行为日志分析,可为预报员提供更加便捷的预报工具,节省预报制作与产品制作发布的时间。

④ 利用众创机制,促进MICAPS系统生态圈建设。以天气预报业务发展为驱动,通过“开源共享”的手段,联合各级气象台与高等院校,吸引更多的用户与研发人员参与MICAPS的完善,通过集成更多更优质的客观分析方法提升客户端的智能化水平,利用大数据智能应用算法挖掘出潜藏在海量气象原始数据中的真正价值,建立开放式、服务化的天气预报业务平台生态圈。

5 小结

1) MICAPS作为实时气象预报业务系统,包含了完整的数据采集与预处理服务,异构数据的存储与检索服务,前端预报员交互操作与数据分析服务。系统既可以与上游数据环境以及各地方的本地数据对接,又可以满足支持国家及省、市、县三级的预报业务流程与预报员操作习惯。因此,MICAPS4的系统设计可作为成熟的解决方案供各级预报业务系统开发参考。

2) MICAPS4将先进信息技术与现代天气预报技术紧密结合,实现了与CIMISS数据环境的无缝对接,利用大数据技术将CIMISS数据的应用延伸到实时预报业务场景中,采用微内核开放式系统架构、高级绘图引擎等技术,显著提升了系统对高分辨、多维度气象数据的应用能力和访问效率。同时,为不同的专业预报流程与量身定制了专业化版本,如面向短时临近预报业务需求的SWAN2.0系统,面向台风与海洋精细化预报业务需求的台风海洋一体化平台,面向环境预报业务需求的环境专业预报平台,面向智能网格预报业务需求的MICAPS精细化格点编辑平台等。

3) 随着系统在各级气象部门的持续推广与应用,MICAPS4也会逐渐满足各级预报环境与预报业务发展需求。MICAPS4体系也正从传统的综合气象数据显示分析系统向开放、众创并支持智能化运算的现代天气预报平台演变,通过与“气象云”的协同发展,MICAPS系统将来会吸引越来越多的成熟功能模块与算法进行集成,利用MICAPS体系的数据服务与交互分析及数据显示服务,可为气象预报方法、科研算法、成熟产品提供研发、发布、交流、推广的一体化渠道,从而搭建集约化的、健壮的MICAPS生态环境,为各级气象部门提供更加丰富、更加实用的预报业务应用平台。

参考文献
[1] 李月安, 曹莉, 高嵩, 等. MICAPS业务平台现状与发展. 气象, 2010, 36, (7): 50–55. DOI:10.7519/j.issn.1000-0526.2010.07.010
[2] 于连庆, 胡争光. MICAPS中天气图交互制作子系统. 应用气象学报, 2011, 22, (3): 375–384. DOI:10.11898/1001-7313.20110315
[3] 高嵩, 代刊, 薛峰. 基于MICAPS3.2平台的格点编辑平台设计与开发. 气象, 2014, 40, (9): 1152–1158. DOI:10.7519/j.issn.1000-0526.2014.09.013
[4] 吴林林, 刘黎平, 徐海军, 等. 基于MICAPS3核心的人影业务平台设计与开发. 气象, 2013, 39, (3): 383–388. DOI:10.7519/j.issn.1000-0526.2013.03.014
[5] 毕宝贵, 代刊, 王毅, 等. 定量降水预报技术进展. 应用气象学报, 2016, 27, (5): 534–549. DOI:10.11898/1001-7313.20160503
[6] 矫梅燕. 促进大数据融合应对信息技术挑战. [2016-11-22]. http://www.cma.gov.cn/2011xwzx/2011xqxxw/2011xqxyw/201611/t20161122_342473.html.
[7] 代刊, 曹勇, 钱奇峰, 等. 中短期数字化天气预报技术现状及趋势. 气象, 2016, 42, (12): 1445–1455. DOI:10.7519/j.issn.1000-0526.2016.12.002
[8] 聂峰英. 大数据资源技术服务协同研究——以气象数据为例. 信息化研究, 2016, 42, (1): 6–11.
[9] 朱小祥, 刘震坤, 罗兵, 等. 美国AWIPSⅡ系统开发进展及业务应用. 气象科技合作动态, 2014, (增刊Ⅰ): 1–30.
[10] 姚学祥, 高嵩, 季崇萍, 等. 中国气象局代表团访问德国气象局总结. 气象科技合作动态, 2015, (3): 1–16.
[11] 颜长建, 胡文东, 张春梅, 等. 基于梯度的500 hPa槽线天气系统自动分析方法. 应用气象学报, 2016, 27, (6): 741–749. DOI:10.11898/1001-7313.20160611
[12] 胡文东, 黄小玉, 赵光平, 等. 高空基本影响天气系统定量化自动分析研究. 气象, 2008, 34, (6): 107–111. DOI:10.7519/j.issn.1000-0526.2008.06.016
[13] 胡争光, 郑卫江, 高嵩, 等. 气象GIS网络平台关键技术研究与实现. 应用气象学报, 2014, 25, (3): 365–374. DOI:10.11898/1001-7313.20140314
[14] 熊安元, 赵芳, 王颖, 等. 全国综合气象信息共享系统的设计与实现. 应用气象学报, 2015, 26, (4): 500–512. DOI:10.11898/1001-7313.20150412
[15] 熊安元, 王伯民, 王颖, 等. 气象资料分类与编码. 中华人民共和国气象行业标准QX/T102-2009. 北京: 气象出版社, 2009.
[16] 王遂缠, 吉惠敏, 孙林花. 基于MICAPS系统的数字化天气图及常规气象资料检索分析系统. 气象科技, 2004, 32, (2): 120–122.
[17] 宋桂英, 孙永刚, 胡英华, 等. MICAPS3.0的本地化和二次开发. 内蒙古气象, 2013, (3): 25–27.
[18] 唐圣钧, 王东海, 杜钧, 等. 混合集合预报法在华南暴雨短期预报中的试验. 应用气象学报, 2015, 26, (6): 669–679. DOI:10.11898/1001-7313.20150603
[19] 邓国, 龚建东, 邓莲堂, 等. 国家级区域集合预报系统研发和新能检验. 应用气象学报, 2010, 21, (5): 513–523. DOI:10.11898/1001-7313.20100501
[20] 张涵斌, 陈静, 智协飞, 等. GRAPES区域结合预报系统应用研究. 气象, 2014, 40, (9): 1076–1087. DOI:10.7519/j.issn.1000-0526.2014.09.005
[21] 于连庆, 李月安, 高嵩, 等. 集合预报产品综合分析显示平台关键技术与实现. 应用气象学报, 2015, 26, (3): 369–377. DOI:10.11898/1001-7313.20150313
[22] 陈静, 陈德辉, 颜宏. 集合数值预报发展与研究进展. 应用气象学报, 2002, 13, (4): 497–507.
[23] 黄向东, 王建民, 葛斯函, 等. 一种海量多维文件集合的存储模型//2014年中国数据库学术会议论文集. 2014: 1.
[24] Sherif S, Liu A, Batista D M. A survey of large scaled at a management apporoaches in cloud environments. IEEE Communications Surveys Tutorials, 2011, 13, (3): 311–336. DOI:10.1109/SURV.2011.032211.00087
[25] 李永生, 曾沁, 徐美红, 等. 基于Hadoop的数值预报产品服务平台设计与实现. 应用气象学报, 2015, 26, (1): 122–128.
[26] 王若曈, 黄向东, 张博, 等. 海量气象数据实时解析与存储系统的设计与实现. 计算机工程与科学, 2015, 37, (11): 2045–2053. DOI:10.3969/j.issn.1007-130X.2015.11.009
[27] 冯新扬, 范颖, 崔凯, 等. 利用设计模式改进分层架构. 计算机工程与设计, 2007, 28, (15): 3686–3689. DOI:10.3969/j.issn.1000-7024.2007.15.047
[28] 章国材. 气象云建设的研究与思考. 气象与环境科学, 2015, 38, (4): 1–11.