基于用户位置的天气实况数据服务接口系统技术方案

技术编号:36433528 阅读:12 留言:0更新日期:2023-01-20 22:46
本发明专利技术提出了一种基于用户位置的天气实况数据服务接口系统,其基于网格数据分块处理和快速查询的数据存储模型,采用微服务应用模式设计并实现了基于用户位置的天气实况数据服务接口,提升了数据服务时效和用户并发数,为解决同一时刻同一位置不同应用发布的天气实况数据不一致的问题提供了技术支撑。并向全国气象部门54个应用提供天气实况数据,单月访问量超过1亿,系统的高并发、高时效、高可用得到验证。到验证。到验证。

【技术实现步骤摘要】
基于用户位置的天气实况数据服务接口系统


[0001]本专利技术设计气象服务
,具体涉及一种基于用户位置的天气实况数据服务接口系统。

技术介绍

[0002]十三五期间,我国气象观测和预报预测能力稳步提升,2017年中国气象局天气预报业务由原来的站点预报升级为智能网格预报,一系列多源数据融合天气实况网格产品(包括气温、降水、湿度、风、总云量、能见度等)在业务中得到应用,但在气象服务方面供给不平衡不充分问题依然突出。
[0003]公众气象服务和交通、旅游等行业气象服务对精细化天气实况产品的需求十分旺盛,基于站点实况观测数据的服务方式已无法满足需要。为满足公众气象服务和交通、旅游等行业气象服务对精细化天气实况产品的需求,采用多源资料融合技术等方法,生成高分辨率的实况网格数据(包括气温、降水、湿度、风、总云量、能见度等)。由于各单位获取数据的时效和融合技术差异较大,在面向用户服务时,存在不同单位发布的同一时刻、同一地点的实况数据不一致的问题。然而目前主要利用6万多个站点数据或5KM的网格数据向用户提供天气实况数据服务,由于分辨率不高,数据服务精度与实际情况存在较大差异。
[0004]另外,根据目前气象数据站网分布以及融合技术的发展现状,实况服务精度确定为1KM(对应地理坐标系大约0.01
°
),服务时根据用户的地理位置信息提供目标位置最新时刻精细化的天气实况要素数据服务。依据我国行政边界、主要城市和人口分布,天气实况要素数据网格定义的区域覆盖范围为北纬0~60
°
,东经70
°
~140
°
,空间分辨率为0.01
°
,一个网格数据文件大约120MB。对于非连续的气象要素比如降水和基于降水、气温等要素反演的天气现象,采用每5分钟整体更新一次网格数据,连续性气象要素比如气温、相对湿度等每小时更新一次。现有的气象实况要素数据存储与查询定位时通常采用关系型数据库或内存数据库,存在并发支撑能力不足或数据入库、更新延时高等的问题,极大降低了数据服务的时效性。

技术实现思路

[0005]针对上述存在的问题,本专利技术提供利用公有云的资源进行存储和提供数据服务的基于用户位置的天气实况数据服务接口系统,并为平衡数据入库和查询的高时效性,提出了一种分块存储和查询定位的方法,将该方法应用于面向位置服务的天气实况数据服务接口系统中。
[0006]实现本专利技术目的的技术解决方案为:
[0007]一种基于用户位置的天气实况数据服务接口系统,其特征在于,包括:
[0008]资源层,包含云服务器ECS、表格存储Tablestore、云数据库MySQL、消息服务Kafka、负载均衡SLB、专用网络VPC、云解析DNS,用于提供基础设施服务;
[0009]业务层,包含天气实况数据存储和与天气实况数据有关的应用服务程序,用于向
用户层提供应用服务;
[0010]用户层,包括第三方应用,用于通过Restful方式获取业务层发布的服务。进一步地,所述天气实况数据来源于站点观测数据和天气实况网格数据;所述天气实况网格数据包含若干个气象服务要素,并采用分块存储方法存储于表格型数据库中,且通过分块查询定位方法进行查询;
[0011]所述应用服务程序采用SpringBoot进行微服务开发,包括接口用户注册与认证服务、天气实况数据服务接口、数据接收服务和数据解析与处理。
[0012]进一步地,所述天气实况网格数据采用二进制网格数据存储模式,字节顺序采用大尾,每个要素作为一个网格文件进行数据交换。
[0013]进一步地,所述天气实况网格数据的分块存储方法包括以下步骤:
[0014]步骤1:将天气实况网格数据气象服务要素存储定义为一个三维模型,其x维度为经度,y为纬度,z为气象服务要素,且x,y共同组成某个气象服务要素的网格数据;
[0015]步骤2:依据经度方向对天气实况网格数据进行分块整合,以0.01度分辨率,按1
°
进行分块整合,使每个分块中包含100个点的某个气象服务要素对应的气象值;
[0016]步骤3:将所有气象服务要素数据存储于一个数据表中,并将天气实况网格数据的维度作为分区键,将气象服务要素作为第二主键,两者组成该数据表的查询主键;
[0017]步骤4:按照天气实况网格数据的区域覆盖范围定义70个属性列,每个属性列均为一个分块;
[0018]步骤5:将天气实况网格数据拆分为每行数据为70*400的字节数组,将数据存储至到数据表中;
[0019]步骤6:对于站点观测数据,根据站点的经纬度信息,将对应的气象服务要素值叠加到网格上,替换对应网格的值。
[0020]进一步地,所述天气实况网格数据的分块查询定位方法包括:
[0021]S1:根据用户的位置信息计算其位于0.01
°
网格中最临近的经纬度值,利用纬度值和经度整数位的值,得到用户所处位置对应天气实况网格最临近数据点位数据块;
[0022]S2:通过查询主键定位到待查询用户位置最邻近天气实况数据的气象服务要素所在行和列的数据块;
[0023]S3:通过经度小数点位值,采用字节位移从二进制数据块中取出对应的四个字节,并转换为具体数值。
[0024]第一,本专利技术基于实时更新的站点观测数据和高频更新的1KM天气实况网格数据,利用分布式表格存储定义了中国区域天气实况网格数据分块存储模型和查询定位方法,能够解决数据入库或更新延时高,以及支撑用户高并发数据查询能力不足等问题,有利于提升天气实况数据的服务时效,为解决全国不同应用在同一时刻同一位置获取的天气实况数据一致性问题提供技术支撑。
[0025]第二,本专利技术采用阿里云作为基础设施服务,包含云服务器ECS、表格存储Tablestore、云数据库MySQL、消息服务Kafka、负载均衡SLB、专用网络VPC、云解析DNS等,利于应对未来更多用户并发时系统能力的扩充和基础资源运维成本。
附图说明
[0026]图1为本专利技术所提系统的架构图;
[0027]图2为天气实况数据更新频次示意图;
[0028]图3为天气实况数据处理与服务流程;
[0029]图4为数据查询访问的流程示意图;
[0030]图5为数据签名认证实现流程图;
[0031]图6为数据处理实现流程图;
[0032]图7为实况数据服务业务运行监控;
[0033]图8为实况服务接口并发性能测试结果;
[0034]图9为中国气象APP应用效果;
[0035]图10为中国天气小程序应用效果;
[0036]图11为数据服务口接口调用情况;
具体实施方式
[0037]为了使本领域的普通技术人员能更好的理解本专利技术的技术方案,下面结合附图和实施例对本专利技术的技术方案做进一步的描述。
[0038]本专利技术提出了一种基于用户位置的天气实况数据服务接本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于用户位置的天气实况数据服务接口系统,其特征在于,包括:资源层,包含云服务器ECS、表格存储Tablestore、云数据库MySQL、消息服务Kafka、负载均衡SLB、专用网络VPC、云解析DNS,用于提供基础设施服务;业务层,包含天气实况数据存储和与天气实况数据有关的应用服务程序,用于向用户层提供应用服务;用户层,包括第三方应用,用于通过Restful方式获取业务层发布的服务。2.根据权利要求1所述的一种基于用户位置的天气实况数据服务接口系统,其特征在于,所述天气实况数据来源于站点观测数据和天气实况网格数据;所述天气实况网格数据包含若干个气象服务要素,并采用分块存储方法存储于表格型数据库中,且通过分块查询定位方法进行查询;所述应用服务程序采用SpringBoot进行微服务开发,包括接口用户注册与认证服务、天气实况数据服务接口、数据接收服务和数据解析与处理。3.根据权利要求1所述的一种基于用户位置的天气实况数据服务接口系统,其特征在于,所述天气实况网格数据采用二进制网格数据存储模式,字节顺序采用大尾,每个要素作为一个网格文件进行数据交换。4.根据权利要求1所述的一种基于用户位置的天气实况数据服务接口系统,其特征在于,所述天气实况网格数据的分块存储方法包括以下步骤:步骤1:将天气实况网格数据气象服务要素存储定义为一个三维模型,其x维度为经度...

【专利技术属性】
技术研发人员:何文春霍庆徐拥军倪学磊郑波陈士旺王舒
申请(专利权)人:国家气象信息中心中国气象局气象数据中心
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1