一种气象模式数据解码处理方法与流程

文档序号:33948753发布日期:2023-04-26 09:45阅读:72来源:国知局
一种气象模式数据解码处理方法与流程

本发明涉及气象模式数据处理。具体地说是一种气象模式数据解码处理方法。


背景技术:

1、模式数据是气象的14大类数据之一,也是气象应用中使用最广泛的数据之一。气象大数据云平台系统中存储和使用的模式数据包括欧洲模式数据、日本模式数据、美国模式数据、德国模式数据、中国气象局的cma-gfs模式和cma-meso模式以及中国气象局实况分析产品等。“天擎”作为中国气象大数据云平台系统,能够面向全国提供数算一体平台化服务。“天镜”作为我国气象综合业务实时监控系统,用于监控气象业务全流程中信息的“流动”、系统的运行、网络安全动态,从而有效保证我国气象业务系统的一体化运行。

2、“天擎”系统中存储和使用的模式数据为gri b格式,gri b格式的模式数据是世界气象组织(wmo)的标准编码手册规定的一种气象类网格模式数据,包括gri b1和gr i b2两种格式。在旧的气象模式数据处理技术中,针对模式数据的每一段的每个字节都要进行解析,技术比较复杂,扩展性不强。因此,有必要开发一种能够结合气象模式数据使用和服务需求的气象模式数据解码处理方法,使其对气象模式数据的处理更具有针对性以及更强的扩展性和平台移植性。


技术实现思路

1、为此,本发明所要解决的技术问题在于提供一种气象模式数据解码处理方法,以解决现有气象模式数据处理技术复杂,扩展性不强等问题。

2、为解决上述技术问题,本发明提供如下技术方案:

3、一种气象模式数据解码处理方法,包括如下步骤:

4、步骤(1):采用多线程方式,读取“天擎”气象业务中grib格式的模式数据源文件;

5、步骤(2):将所述模式数据源文件拆分成模式单场文件;

6、步骤(3):将拆分的所述模式单场文件进行解析,解析完成后得到模式数据属性和模式数据内容;

7、步骤(4):根据气象服务需求,将解析得到的所述模式数据属性和所述模式数据内容,重新存储入分布式表格数据库,和/或重组生成模式产品文件后入分布式文件库+索引表;

8、步骤(5):待数据处理和入库完成后,将入库数据的详细日志d i(detai linformat i on)信息发送至“天镜”监控系统。

9、上述气象模式数据解码处理方法,步骤(1)中,采用rabbitmq消息中间件,对所述模式数据源文件的到达进行通知;通过多线程方式,同时读取两个或两个以上的通知消息,并同时对两个或两个以上的所述模式数据源文件进行并发处理。rabbitmq是实现了高级消息队列协议amqp的开源消息代理软件,亦称面向消息的中间件。

10、上述气象模式数据解码处理方法,步骤(2)中,数据拆分的目的是对模式数据源文件按需进行重组存储。模式数据源文件一般是按多要素、多种层次类型在一个文件中,或者单个时效一个文件,是不规则的组织方式;这种方式不利于进行数据服务。根据wmo的标准编码手册规定的grib1和grib2格式中,数据的多场组织方式不同,采用对应的拆分方法。目前,gri b数据有以下两种多场组织方式:

11、①物理组织方式,大部分的模式数据都是这种组织方式,比如欧洲模式、日本模式、美国模式、德国模式、中国气象局cma模式等。当所述grib格式的所述模式数据源文件以“物理组织”的方式组织在一起时,即:按照“grib…7777gri b…7777”的方式组织在一起,且每个grib…7777之间只有1个场,则将所述gri b格式的所述模式数据源文件的每个场拆分成一个所述模式单场文件;

12、②循环嵌套方式。当所述grib格式的所述模式数据源文件以“循环嵌套”的方式组织在一起时,即:一个所述grib格式的所述模式数据源文件只包含一个“grib…7777”,但是中间嵌套包含两个或两个以上的场数据,且两个或两个以上的场数据从第2段、第3段或第4段开始,到第7段为循环重复段,其它非循环重复段作为固定段;则将固定段和循环重复段拼成一个所述模式单场文件。比如,一个模式数据源文件如下所示:

13、

14、在上述模式数据源文件中,如果循环重复段为第4-7段,则非循环重复段为第0-3段和第8段,即固定段为第0-3段和第8段,则将固定段第0-3段和第8段与循环重复段第4-7段拼成一个模式单场文件;如果循环重复段为第3-7段,则非循环重复段为第0-2段和第8段,即固定段为第0-2段和第8段,则将固定段第0-2段和第8段与循环重复段第3-7段拼成一个模式单场文件;如果循环重复段为第2-7段,则非循环重复段为第0-1段和第8段,即固定段为第0-1段和第8段,则将固定段第0-1段和第8段与循环重复段第2-7段拼成一个模式单场文件。

15、针对上述两种多场组织方式,采用对应的方法进行拆分,将原始文件拆分成一个场一个文件。

16、上述气象模式数据解码处理方法,步骤(3)中,模式数据源文件拆分成模式单场文件后,按wmo的标准编码手册规定的grib1和grib2格式对模式单场文件进行解析;使用unidata(统一数据)社区发布的netcdf(network common data form)网络通用数据格式的netcdf-java组件,用java开发语言实现,将所述grib格式的所述模式数据源文件拆分后的所述模式单场文件进行解析。grib1和grib2格式解析出的属性相同。

17、上述气象模式数据解码处理方法,步骤(3)中,所述模式单场文件解析的要素名称包括资料时间、要素、网格类型、gri b版本、层次类型、经纬度范围、区域、空间分辨率、预报时效、层次、场类型、加工过程类型、模式数据和要素长名。

18、上述气象模式数据解码处理方法,所述要素学科、参数类型和参数编码与要素编码对应的配置文件(此配置文件是学科、参数类型和参数编码的组合,与要素编码为对应关系)中获取,所述学科从所述模式单场文件的第0段获取,所述参数类型和所述参数编码均从所述模式单场文件的第4段获取;所述grib版本从所述模式单场文件的第0段获取;所述资料时间和所述场类型从所述模式单场文件的第1段获取;所述网格类型、所述经纬度范围和所述空间分辨率均从所述模式单场文件的第3段获取;所述层次类型、所述预报时效、所述层次和所述加工过程类型均从所述模式单场文件的第4段获取;所述模式数据从所述模式单场文件的第7段获取;所述要素长名从所述模式单场文件的要素变量中获取。

19、上述气象模式数据解码处理方法,步骤(4)中,将解析获得的所述模式数据属性和所述模式数据内容作为参数传递给应用表格存储开发包ats(app l i cat ion tab l estore)入库接口,完成入分布式表格数据库的操作;通过所述应用表格存储开发包ats入库后的模式数据按照网格化的数据模型进行存储;所述模式数据的存储分为索引表和实体数据表,以便让存储数据分布均衡,所述实体数据表按分块方式进行存储,可以实现数据存储和查询的快速响应,数据查询的效率最高达到毫秒级。

20、上述气象模式数据解码处理方法,步骤(4)中,将所述模式单场文件解析后获得的所述模式数据属性和所述模式数据内容进行文件的重组,得到模式产品文件,并将所述模式产品文件入库到分布式文件库+索引表中;所述模式产品文件的命名格式为:[资料标识]_[要素]_[层次类型]_[资料时次]_[区域]_[场类型]_[加工过程类型].格式类型。

21、上述气象模式数据解码处理方法,步骤(4)中,所述资料标识为每个资料的名称标识;所述要素是根据“天擎”的要素规范制定的要素编码;所述层次类型遵照世界气象组织wmo的标准编码手册的编码规范;所述资料时次为所述模式数据源文件的起报时间;所述区域是根据所述模式数据源文件的经纬度范围得到的区域编码;所述场类型遵照世界气象组织wmo的标准编码手册的编码规范;所述加工过程类型也是遵照世界气象组织wmo的标准编码手册的编码规范。

22、上述气象模式数据解码处理方法,步骤(5)中,详细日志d i信息为json格式,且符合“天镜”的模式数据类型的d i规范。

23、本发明的技术方案取得了如下有益的技术效果:

24、本发明是针对根据世界气象组织(wmo)的标准编码手册规定的gri b1和gr i b2格式的气象类网格模式数据,进行解析和处理的技术方法;本发明根据gr i b文件格式的特点,结合气象业务中模式数据使用和服务的需求,进行特定的解析、处理和存储,为气象预报、气候分析、气象服务提供模式数据的支撑。在气象模式数据解码处理方法中,采用专用的开发包进行解析,可扩展性强,平台移植性高。

25、本发明通过rabb i tmq消息中间件获取数据源文件,使用多线程技术并发处理多个文件,再对文件拆分后,基于netcdf开发包进行解析,获取需要的模式属性信息,最后以两种格式类型进行存储,分别是分布式表格数据库和分布式文件库。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1