国家气象局首席气象专家何文春:新一代信息技术在气象数据业务中的应用实践

11月9日,由百易传媒(DOIT)主办的“2022中国数据与存储峰会”在北京正式开幕。

本次峰会以“数据觉醒新时代”为主题,邀请到了中国信通院、中国电子学会、中国计算机学会信息存储专委会、中国计算机行业协会、清华大学、北京大学、华中科技大学、中国国家气象局等相关单位的领导、专家教授,同国内外领先存储企业的代表及500多名现场观众、20万名线上观众一起,在两天的时间内,就数据存储及相关热门领域的技术创新与应用实践等话题进行分享和互动交流。

在10日举行的东数西算高峰论坛上,中国国家气象局首席气象专家,国家气象信息中心首席、创新团队带头人、气象雷达工程副总设计师、气象信息化系统工程总师助理,中国气象局气象大数据云平台(天擎)技术负责人、系统工程室副主任何文春以“新一代信息技术在气象数据业务中的应用实践”为主题发表视频演讲,分析了“云+端“新型气象业务技术体制,“开放合作,自主设计建设”的气象特色的大数据云平台研发道路,采用的关键技术以及具备的核心功能,并披露了平台全面支撑“云+端”气象应用发展目标。

中国国家气象局首席气象专家何文春

以下内容根据演讲速记整理,未经本人审定。转载须经本人同意。

何文春:

各位朋友大家好,非常高兴能有这样的机会介绍一下气象部门推进信息化工作中的一些经验和成果;希望能对于相关行业部委推进信息化工作有一些借鉴和启发作用,同时也希望IT领域的工作者朋友对气象行业有进一步的了解。有机会能一起合作,共同推进气象事业的高质量发展。

气象数据应用现状与大数据五类特征

气象数据规模非常的庞大,现在有大约60PB的数据,而且每天以40TB的速度在增长。这里不仅仅包括气象自己观测和加工的数据,还有为更好的服务于各行各业,跟一些其他地球科学的数据、行业的数据、社会上的数据共同综合性的应用,需要把相关的数据管理起来。这样的数据,从种类上、量上都很多。另外一方面,气象数据也体现出大数据的五类特征:首先是类型多,观测系统包含着地基、空基、天基、海基,数据种类也很杂;二是体量大,60个PB的数据序列也很长,完整序列超过70年,产品体系也非常完备;三是更新快,普通数据至少是小时级的更新,大部分是分钟级更新,少数是秒级更新,频率非常快,而且气象数据每时每刻都在变化,所以它需要全天候的观测和更新;四是质量高,所有的数据都会经过质量控制再进入业务系统;五是价值高,大家也看得到,气象数据是各行各业各种服务的所需,它的价值体现越来越高。

五类特征之外,气象自身的业务,包括观测、预报、服务以及管理上的一些业务,都是需要大数据技术的支撑。因为数据太多,传统的技术来支撑业务就显得捉襟见肘了,效率肯定跟不上。

所以国家气象局非常重视信息化的工作。

中国气象局:“云+端”新型业务技术体制

为了有效推进信息化工作,近年来,国家气象局陆续出台了很多政策和要求,提出在2025年之前要实现“云+端”的新型业务技术体制,也就是要建立一个气象大数据云平台,提供数据、算力、算法三统一的平台化服务。

目前气象部门已经建成了3000多个业务系统,再独立建数据库和加工平台已经没有必要。因此,要求所有的算法都要在大数据云平台上运行,所有数据都应该取自大数据云平台,所有生产出来的产品也应该存入大数据云平台供给下游共享。所以气象大数据云平台的设计与建设要求、定位非常高,难度也是很大的。

开放合作,自主设计建设

在这个平台建设、设计过程中,配置哪些功能,采用哪些新的技术去落地?我们已经积累了一些经验。

从思路上,一开始我们也是观察和试验了哪家大厂的大数据平台能够直接在行业落地,大家熟悉的大厂都有很多的合作和试验,最后选择的路线是“合作,自主设计建设”路线,其他的行业部委可能也有类似的情况。

气象部门是一个比较传统的行业,有很多经典的算法是用Fortune写的,这些算法非常好,而且运行效率非常高。

但是大厂提供的大数据平台是高度服务化的,经典的算法无法在高度服务化的平台下很好地运行。而且,气象数据有特定的格式,与互联网上使用的格式不一样。当然,还有很多其他方面的原因,导致大厂的平台无法直接引进来使用。但大厂的技术非常好,需要花很多的心思在百花齐放的互联网技术中去针对气象业务选择所需要的技术自己去设计整个平台,也需要依靠互联网和IT公司来帮我们进行建设,最后形成有气象特色的大数据云平台。

1.围绕气象大数据资源进行构建

整个平台都是围绕大数据资源进行构建,主要有四大系统:一是交换及质控系统,这是做数据的汇集,将全球和中国的数据汇集到平台上来,二是产品加工系统,对数据进行深加工,三是挖掘分析系统,提供机器学习支撑能力,四是存储与服务系统,面向应用提供大数据的支撑。

2.全网协调互联,信息实时沟通

气象部门是一种垂管体系。因此,平台主要采取“1+31”的布局。

在垂管体系下,国家和省级平台保持完全一致(省级规模略小),这样就有条件在各省形成一个有机的逻辑上的云,针对少数省份能力不足的现象,国家级云平台可以直接分配一些算力和数据支持他们数据互联互通实时的共享。

下面重点介绍几个核心功能,以及实现这些功能采取的相关技术。

一是海量数据快速汇聚。采用流式传输尤其是分布式的流处理,对海量而且密度非常细,到分钟甚至秒级的数据连续不断地收集和处理,全程不落地的入驻服务,数以万计的数据就直接秒级到达应用端。

二点气象大数据存储体系。这是整个平台建设的重点。气象平台要支撑所有的业务,而目前3000多个业务系统的使用场景多种多样,不可能靠一个存储技术去解决所有的需求,所以要把这些应用场景进行归纳,然后从不同的存储技术中选择最适合气象数据应用场景以及对应的产品。

在选择产品的过程中,国家气象局秉持优先国产化、开源方式的原则,将多种分布式存储技术和产品组合起来形成气象部门自己的大数据存储体系。

这个大数据存储体系并不是简单的拼装,因为对于同一种数据可能采用多个存储技术,用不同的组织方式把它重复地进行多副本管理。不同的存储技术之间的多副本如何保持一致性,是这个存储体系最核心、也是我们在这里面研发下的工夫最多的,这就是定制开发工作。不同数据库之间的同步,尤其是传统的数据库与现在新型存储数据库产品之间的同步,没有现成的工具,需要定制开发,而且也不能简单地用ETL去实现,因为ETL的效率太低。

保持在几个存储技术之间数据的一致性,是我们最核心的武器。

我们选择的存储技术包括内存数据库、分布式表格系统、分布式关系型、分析型数据库、分布式的文件系统HDFS、对象存储、ES等,它们面向的场景都是不一样的。

同时,数据因为量非常多,不可能全部在线,加上增长量十分猛烈,总有数据要冷下来,所以要对数据进行热、温、冷三个层次分级存储,但面向用户要保持统一。所以气象局有自研统一的服务接口,用户通过一种接口形式就可以获取数据,尽管数据可能分散在不同的存储介质或者存储数据库上。

三是统一服务接口。面向应用端提供的是统一服务接口。因为底层存储技术太多,而且随着信息技术的发展,新的存储技术还在陆续补充或者取代其他的技术,但服务用户的需求保持不变。从上一代平台到现今一代平台,气象大数据平台已经实现了平稳迭代。迭代的过程用户是无感的,瞬间完成,原因是建立了一个比较好的服务接口,基于在标准方面展开的大量工作,屏蔽了底层存储技术对上层的影响。接口也提供了多种服务的形式。因为应用系统比较多,编程习惯、编程语言都不一样,所以提供了SDK、web service、REST、脚本、文件目录服务以及气象部门一些比较常用的协议,像PDS还有OGC的服务。方式多种多样,但是标准只有一个。

此外,基于负载均衡软件定制了API的网关,API网关完成用户的认证和授权、服务的路由、流量的控制、负载均衡等等。

四是气象加工流水线。气象部门业务系统非常多,以前都是各自做自己的加工,但是业务之间本身存在业务衔接上下游关系,比方气象部门先做观测,之后生成观测产品,再基于观测天气的现象去推演,预报推演未来一两天、7天、14天的天气,这就是天气预报。天气预报做好之后,要做天气的预警产品,这就相当于服务了。

观测、预报、服务之间产品是上下游关系。以前都是自己做,要什么数据就去找,数据到了就加工,加工完之后就保存起来供别人使用,这是脱节的。

如今建立起了加工流水线,大家把算法都进行注册,告诉平台需要什么样的数据源,生产出什么产品,什么时间该启动,加工流水线平台自然而然把整个流程串接起来;数据源一到就启动算法,算法逐个运行,形成无缝衔接,保持气象业务高效自动运转。

加工流水线基于消息总线、分布式调度算法,全面采用容器技术。

说实话,容器技术能在气象部门落地,能够放在如此实时核心的业务里,当时也是下了很大的决心,因为容器的发展趋势的确是非常好。容器云平台完全被集成到加工流水线里,形成一种紧耦合的关系。可以说,容器云是加工流水线的一部分,容器云里面的容器“器体”完全按照业务逻辑,把算法都封装在容器里,需要启动的时候用K8s调度接口算法在某些节点上用起来,而且达到一种负载均衡、弹性的调度。

有了加工流水线之后,气象部门的些科学家、业务系统的研发人员的工作就变得非常轻松,因为他们主要关注于算法的逻辑实现,实现好了之后注册上来,因为设置在容器里,无需关心运行环境、运维监控,而且它生产出来的产品,直接就放到平台的数据库里面,不用关心如何把它发布出来提供服务,下游自然而然在平台上就发布了。

专业人员做专业的事情,业务人员就减少了很多IT方面的工作量。

五是气象机器学习平台,这也是气象部门近年来发展的一个重要趋势。气象部门做预报是以前最主要的业务模式,就是用物理动力学的方法去推演天气的变化,目前正在积极改进,如极端天气需要通过机器学习的方法对数字预报进行补充,气象局就定制化建立了机器学习平台,我们也会集成一些大家用的比较多的像Tensorflow这样的学习框架,把台风、暴雨、强对流这样的天气过程做好训练的样本机放到平台上,还把气象行业通用的一些基础智能算法集成进来。

这些基础给用户提供两种建模的方式:第一种是拖拉拽,构建算法去训练,第二种是编程,又提供两种,一是交互式的脚本,简单的连接上就可以直接去训练,另外像CloudIDE,可以有一个丰富编程的环境,在上面进行调试,构建一个复杂的机器学习算法。

模型构建好之后,平台对于训练任务、资源都有一个完善管理流程,训练好成熟之后,就纳入加工流水线,变成一个业务运行。

发展目标:全面支撑“云+端”气象应用

刚才介绍了五个功能,这里面还使用到了一些技术,尤其是技术怎么落地的。其实气象部门还用到了数据湖、存储比较多,分批采购的一些分布式NAS、分布式对象存储,管理起来比较麻烦一些。我们用数据湖技术整个逻辑化,面向上层是一个分布式的系统,数据湖的技术也落地了。

气象大数据云平台去年年底开始在全国运行,效果非常好:每天的访问量8000多万次,服务数据有143TB,平均访问耗时是0.24秒,气象部门3000多个业务系统,都是这个平台提供的数据支撑。当然,离最终的目标还有差距,最终目标是3000多个系统都云化。

平台在不断地发展,最终所有气象部门的数据都要存储在这个平台里,所有的算法都要在这个平台上运行,算法加工出来的产品也都回到这个平台上,供其他用户去使用,最终,应用都变成端、一个个轻量级的端,可以快速迭代,不断去响应一些新的需求和服务的要求。

感谢大家的聆听,有不对的地方,欢迎大家来讨论交流,谢谢!

编后:在当天召开的“2022中国数据与存储峰会”东数西算高峰论坛上,中国信通院云大所副所长栗蔚、英特尔运营商事业部技术总监侯志强、联想凌拓存储产品经理徐波以及中国科学院计算机技术研究所研究员张云泉等主管单位领导、行业专家也先后发表致辞或主题演讲。

【如需回看此次视频演讲报告,请关注DOIT官网或公众号】