国产分析型数据库在气象数据存储中的应用

2023-02-28 15:28孔小怡付杰刘洋徐娟
现代信息科技 2023年20期
关键词:结构化集群分布式

孔小怡 付杰 刘洋 徐娟

摘  要:近年来,在信息化建设中国家自主权显得尤为重要。利用这次气象信息化升级改造即“天擎”系统部署的契机,甘肃省气象信息中心选用南大通用公司的Gbase 8a MPP产品建设历史分析库,很大程度上满足了用户对长时间序列数据的需求。强大的数据库性能得以支撑起地面、高空、海洋、农气、辐射、大气成分、服务产品等全集数据,同时数据分布策略、列存储模式、并行数据加载、高可用机制、标准语言和接口等核心技术将会在数据服务中充分发挥优势。

关键词:结构化数据;Gbase 8a MPP;分布式数据库

中图分类号:TP39  文献标识码:A  文章编号:2096-4706(2023)20-0144-04

Application of Domestic Analytical Database in Meteorological Data Storage

KONG Xiaoyi, FU Jie, LIU Yang, XU Juan

(Gansu Meteorological Information &Technology Equipment Support Center, Lanzhou  730020, China)

Abstract: In recent years, national autonomy has become particularly important in the construction of informatization. Taking advantage of the opportunity of the meteorological information upgrading and transformation, the deployment of the “Tianqing” system, the Gansu Provincial Meteorological Information Center has selected the Gbase 8a MPP product from Nanda General Company to build a historical analysis library, which largely meets users' needs for long time series data. The powerful database performance can support a complete set of data such as ground, high altitude, ocean, agricultural gas, radiation, atmospheric composition, and service products. At the same time, core technologies such as data distribution strategy, column storage mode, parallel data loading, high availability mechanism, standard language, and interface will fully leverage their advantages in data services.

Keywords: structured data; Gbase 8a MPP; distributed database

0  引  言

數据库是信息化建设的关键性支撑技术,随着数据互联理念的不断深化,数据库技术也不断迭代更新,以更好适应持续高速膨胀的数据环境和数据需求。在数据库的发展历史上,其先后经历了层次数据库、网状数据库和关系数据库等各个阶段。随着数据库关键技术在各个方面的快速发展,关系型数据库已经成为目前数据库产品中最为重要的一员。20世纪80年代以来,几乎所有的数据库厂商推出的数据库产品都支持关系型数据库,即使一些非关系数据库产品也几乎都支持关系数据库的接口。进入21世纪以来,云计算的发展和大数据时代到来、分布式等新技术的出现也对数据库的技术提出了新的要求,NewSQL概念[1]此时被提出。NewSQL是对各种新的可扩展、高性能数据库的统称,这类数据库不仅具有NoSQL对海量数据的存储管理能力,还保持了传统数据库支持ACID和SQL等特性,同时还具有很好的扩展性能。近年随着国际局势的日益紧张,信息网络安全尤为重要,自主品牌硬软件产品的全面替代已经是大势所趋[2]。中国自主品牌、南大通用公司研发的GBase 8aMPP分布式集群数据库属于NewSQL分析型数据库,其在针对海量气象数据存储、查询和关联分析方面都有着卓越的处理能力,开始在数据库大市场中占据一席重要的位置。

1  数据存储现状

气象数据庞大而繁杂,近20年来,伴随科技不断发展、气象观测技术不断进步、气象信息系统不断革新、新型气象数据不断被研发推广、新型预报预测模型迭代、人工加自动观测频次增加、行业用户数据需求持续增长等原因,气象数据呈现出井喷式发展[3]。2022年省一级气象部门的日数据存储量就已经达到了700 GB以上,各类气象数据在数据库内日存储记录数达到千万条以上。依托于大数据理念,这些气象数据同样被划分为结构化、半结构化和非结构化据数据。观测站采集到的原始数据以结构化数据为主,在入库时会进行要素拆封,譬如温、压、湿、风等要素30余类。用户在调取使用数据时也更加倾向于对某一地区某一要素单独进行检索反演,最终在反演结果上再进行多要素的叠加综合分析。在很长的一段时间里,结构化数据主要依托于小机加存储的SQLserver数据库系统进行数据存储和数据服务,用户通过直连数据库的方式进行数据检索及使用,这种单机数据库无论是数据存储承载力还是用户并联访问效率以及安全机制都是极其低下的,数据存储表结构由甘肃省信息中心同事联合研发创建,合理性和扩展性明显不足。2015年开始,从国家局开始自上而下部署全国气象综合信息共享平台(CIMISS),系统由四台服务器构成的oracle数据库集群,其中只有两台服务器承载实时数据存储。用户通过接口访问方式进行数据调取,将用户与原始数据进行物理隔离。即便如此,依托于两台服务器的实时数据库中也无法承担长时间序列的数据存储,为了数据库系统的稳定运行,数据存储时效一降再降,最终地面分钟级数据只能保存一个月。

目前行业内涉及的结构化观测资料主要包括地面资料、高空资料、海洋资料、农气资料、辐射资料、大气资料及服务产品等。这些数据或是通过bufr消息传输方式或是通过文件级ftp传输方式传输,数据通过入库解析程序被拆分为数十个具体要素信息后入库。这里以地面小时数据为例,一条数据信息中除了记录有温、压、湿、风等常规要素外,同时还记录了采集器参数、台站参数、资料采集时间、各类要素极值、极值出现时间等近200个要素信息。现阶段全国有2 550余个地面自动站点、17 200余个区域站点,这些站点不间断向省局信息传输5 min加密数据。整个数据集的体量将会非常巨大,并且持续快速增长。这种情况极大地制约了用户对数据的使用及二次开发。

作为用户访问最为密集的资料,地面数据日访问量为848.27 GB,占所有资料日访问量的48.7%,日访问次数为27.92万次,海量的数据被实时存储和读取,每日数据交互大数百万次。在这之中,结构化数据的使用量占所有数据的一半以上,是气象用户的主要关注点。用户对结构化数据进行要素选取后综合统计分析。基于结构化数据特点和气象业务特点,GBase 8a数据库在这种复杂关联查询、准实时即离席查询方面展现出了卓越的性能。如图1所示。

气象观测数据正确、及时、有效是整个气象预报预测业务有序开展、科研顺利推进的基石。对大量高质量观测数据抽取、分析、加工再处理是气象工作开展的第一步。最终实现对海量数据进行价值最大化提取、总结经验规律、优化算法、形成成果结论,最终贡献于气象预报、预测、预警业务。

2  系统建设

针对长时间序列历史数据的无法存放及读取分析不能满足需求等问题,亟需重新建设一套大规模分布式数据库。2020年开始,我省开展建设全新的分析型数据库分布式集群。GBase 8a MPP Cluster数据库系统是一款Shared Nothing架构的分布式并行数据库集群,具备高性能、高可用、高扩展、多兼容等特性[4],可以为超大规模数据管理提供高性价比的通用计算平台,在架构设计、资源管理、功能实现等方面这款数据库产品都可以有效地解决大量气象结构化数据的长时间序列存储、统计计算等问题。数据不再被分片存储,而是集中、统一的进行存储,实现了各种数据之间的整合管理,增强了数据库的数据分享能力。GBase 8a数据库以更低的成本、更高的性能,较好地契合了气象历史数据的数据存储需求,MPP集群支持节点动态扩展,横向扩展无须停止服务,既保证了服务的连贯性,又保证了数据处理能力。同时集群部署、负载均衡、计算分布、存储分布[5]有效避免了单节点故障和性能瓶颈。如图2所示。

目前我省建立的GBase 8a数据库由10台服务器和两台万兆光纤交换机连接而成,组成内外两个独立网络。数据交互和用户访问相互不干涉重叠,有效提高网络利用率。每台服务器配置了22块1.2 TB的SAS盘,以RAID50方式有效保证数据安全。

数据库系统由两个角色组成,管理集群和数据集群。1台作为纯管理节点和监控节点,2台作为兼容管理节点和数据节点,7台作纯为数据节点。9台数据节点构成的数据集群,数据节点之间两两交叉进行主备。管理集群部署调度(GCluster)和管理(GCware)组件,数据集群部署分部署存储(GNode)组件。GCluster负责SQL解析、优化、分布式执行计划生成和执行调度。GNode负责在数据节点上的实际存储并从GCluster接收和执行经分解的执行计划,继而将结果返回给GCluster。GCware负责给各节点GCluster实例见共享信息以及控制多副本数据操作时提供可操作性节点,控制各节点数据一致性状态。系统逻辑架构如图3所示。

3  数据存取

数据经过前期解码处理后被存入缓冲库,通过GBase 8a内部的consumer消费功能组件消费kafka消息队列,将数据同步至GBase分析库,做到数据库逻辑层独立。数据入库流程如图4所示。

GBase数据库以列存储模式,不读取无效列,提高了I/O效率,这也契合结构化数据气象要素分析习惯。同时MPP并行多节点计算、联邦并行数据加载,产生m(线程)×n(节点)的效果,良好支撑起气候监测预测、决策服务等业务系统对数据服务和分析的需求。

数据库表结构继承了CIMISS数据库表结构,对数据文件进行全要素拆解,数据表包括分钟、小时、月、旬、年、年代,等等,用户的个性化需求在经过审核后,通过统一服务器接口,选择不同数据类别的进行调用或下载,保证数据的安全隔离。

4  应用情况

目前甘肃省GBase分析库共有300余张数据表(包括实时业务数据表及行业专题数据库),包含了地面(分钟、小时、再分析)、高空(各层次数据)、农气(人工观测、自动观测)、大气成分(酸雨等)、沙尘资料、辐射资料等所涉及的所有结构化数据。在数据表建设完成后,進行了大量数据的历史资料导入工作,保证部分数据的历史完整性,包括农气资料,自2008年开始;沙尘资料,自2015年开始;地面资料,自1951年开始等。截至目前,部分数据存储时间序列能延伸到1951年。极大地满足了用户需求。现阶段共计有122个kafka消息同步队列实时运行,进行历史分析库实时数据同步。用户通过接口对数据进行访问,因此不会因为并行连接数过多造成数据库压力。

以查询性能为例对数据库性能进行评测,当采取select特定列的方式进行检索,避免对全部列进行检索,该行为既能减少传输数据同时还能进一步提升性能,即便是数据量很大的地面分钟和小时表(80亿条数据),常规检索时间也能够保持在300 ms以内,这能很好反映出GBase 8a数据库事务执行的高效性。检索用时举例如图5所示。

由于列存储模式较高的数据压缩比,在做完全量数据导入后数据空间使用率平均仅为5%。未来相当长一段时间内都不需要再进行存储规模扩容。

表1能很好地反映出GBase数据库与Oracle数据库相比之下卓越的数据存储承载能力。

5  结  论

通过Gbase 8A MPP数据库的搭建,10台服务器组建的集群以及庞大的磁盘存储容量,解决了存储瓶颈,甘肃省结构化历史数据存储需求得到了极大的满足,时间存储序列扩展至数十年;高性能服务器有效支撑起日常的数据交互,常规检索和统计效率也得到了极大的提升,响应能力都明显优于以往,能够满足用户的数据使用需求;可靠性、稳定性、安全性、可扩展性都得以优化。GBase8a数据库在气候天气分析、历史数据融合反演等业务中开始发挥出重要作用。

参考文献:

[1] 徐述,汪彦,曾海洋,等.大数据应用下的新型分布式数据库NewSQL [J].数字技术与应用,2018,36(8):51-52.

[2] 马季芳.气象信息网络安全发展状况研究 [J].网络安全技术与应用,2021(9):120-121.

[3] 沈文海,周勇,唐伟,等.浅论气象数据发展规划 [J].中国信息化,2020(9):100-102.

[4] 邵麒,李亚鹏,佟文朋.基于分布式系统设计中NewSQL数据库技术分析 [J].电子制作,2021(24):66-67+46.

[5] 张彩云,池继忠.分布式数据库在气象数据存储中的应用 [J].信息技术与信息化,2021(10):119-121.

作者简介:孔小怡(1989—),女,汉族,甘肃永靖人,工程师,本科,研究方向:气象信息技术。

收稿日期:2023-03-13

猜你喜欢
结构化集群分布式
促进知识结构化的主题式复习初探
结构化面试方法在研究生复试中的应用
海上小型无人机集群的反制装备需求与应对之策研究
一种无人机集群发射回收装置的控制系统设计
分布式光伏热钱汹涌
分布式光伏:爆发还是徘徊
Python与Spark集群在收费数据分析中的应用
勤快又呆萌的集群机器人
基于DDS的分布式三维协同仿真研究
基于图模型的通用半结构化数据检索