首页 > 数据库 >华为PB级时序数据库Gauss DB,助力海量数据处理

华为PB级时序数据库Gauss DB,助力海量数据处理

时间:2022-10-15 19:32:32浏览次数:58  
标签:数据库 DB Gauss 时序 PB 查询 数据 GaussDB Influx

近年来,时序数据的应用更为广泛,包括物联网、金融领域、监控领域、医学领域、农业生产领域等各方面,都在大量使用时序数据,通过数据来研究对象的趋势性、规律性、异常性;并且在 5G 与人工智能的浪潮下,时序数据作为大数据、机器学习、实时预测的基础数据,作用更加显著。因此,对时序数据的研究与应用应当更为深入。

近 5 年来,时序数据库发展十分迅猛,各大互联网企业包括 Google、阿里、Amazon 都推出自己的时序数据。

华为PB级时序数据库Gauss DB,助力海量数据处理 _时序数据库

图 1 DB-Engines 统计不同类别数据库关注度趋势


图 1 为 DB-Engines 统计从2018年1月到2019 年 12 月截至 24 月各类数据库的关注度趋势,可以看到时序数据库关注度同比 2017 年 12 月上涨 77.3%,相比第二名的图形数据库上涨近两倍。图 2 为 DB-Engines 统计从2013年12月到2019 年 12 月截至 6年来业内流行的时序数据库的关注度和使用度排名。


华为PB级时序数据库Gauss DB,助力海量数据处理 _数据库_02


图 2 DB-Engines 统计时序数据库关注度趋势


从图中可以看到,从 2015 年开始,各种时序数据库如雨后春笋般涌现。


GaussDB(for Influx)时序数据库依靠华为在数据存储领域多年的实践经验,整合华为云的计算、存储、服务保障和安全等方面的能力,在架构、性能和数据压缩等方面进行了突破性的技术创新,达到了较好的效果,对内支撑了华为云基础设施服务,对外以服务的形式开放,帮助上云企业解决相关业务问题。​


GaussDB(for Influx) 具有支持亿级时间线、极致写入性能、低存储成本、高性能多维聚合查询和极致弹性扩缩容等5大特性。以下为特性的大致介绍:​


1、支持亿级时间线


华为PB级时序数据库Gauss DB,助力海量数据处理 _时序数据库_03


由于在时序数据库系统中,无时无刻存在大量并发查询和写入操作,因此合理控制内存的使用量就显得十分重要。而GaussDB(for Influx)便在这一问题上做了进一步优化:​

l 在内存分配与回收上,使用内存池复用技术降低内存碎片,并实现算法动态调整GC频率,加快内存回收。​

l 在单查询上,实行Quota控制,避免单查询耗尽内存。​

l 在缓存中,针对不同节点规格提供不同最优配置。​


2、极致写入性能

GaussDB(for Influx)支持每天万亿条数据写入,在工程实现上有以下优化:​

l 利用所有节点并行写入,充分发挥集群优势。​

l Shard节点采用针对场景优化的LSM-Tree布局​

l 在大规模写入场景下,GaussDB(for Influx)的写入性能线性扩展度大于80%。​


3、低存储成本

GaussDB(for Influx)对数据采用列式存储,相同类型的数据被集中存储,更有利于数据压缩。采用自研的时序数据自适应压缩算法,在压缩前对数据进行抽样分析,根据数据量、数据分布以及数据类型选择最合适的数据压缩算法。同时提供了时序数据的分级存储,支持用户自定义冷热数据,实现数据的冷热分离。热数据相对数据量小,访问频繁,被存储在性能更好、成本较高的存储介质上;冷数据相对数据量大,访问概率低,保存时间较久,被存储在成本较低的存储介质上,进而达到节约存储成本的目的。 ​


4、高性能多维聚合查询

在提升聚合查询整体性能方面,GaussDB(for Influx)做了如下优化:​

l 采用MPP架构:一条查询语句可以在多节点及多核并发执行。​

l 向量化查询引擎:在查询结果数据量很大时,GaussDB(for Influx)内部实现了向量化查询引擎,每次迭代批量返回数据,大大减少了额外开销。​

l 增量聚合引擎:基于滑动窗口的聚合查询,大部分从聚合结果缓存中直接命中,仅需要聚合增量数据部分即可。​

l 多维倒排索引:支持多维多条件组合查询,加快数据查询中过滤无关数据。​


5、极致弹性扩缩容

在时序数据库的运行过程中,随着业务量的增加,常常需要对数据库进行在线扩容,以满足业务的要求。​

l 传统数据库中的数据存储在本地,扩容后往往需要迁移数据。当数据量达到一定规模时,数据迁移所耗费的时间往往按天计算,给运维带来了很大的困难。​

l GaussDB(for Influx)相比于传统的数据库,最大的特点就是将计算与存储分离,能够轻松实现分钟级扩容。​


此外,在能源、制造、IOT、互联网等行业的监控统计及分析的应用场景中,时序洞察提供了针对时序数据的可视化功能。在监控领域,我们常看到能实时反映整个系统运行情况的绚丽监控大屏,这便是数据库的监控看板功能,可以高效地运用监控数据辅助定位故障、性能调优、容量规划;可以查看各产品的监控数据走势及对比;跨产品展示关键指标的实时数据、历史数据和整体走势。业务人员可以根据该信息对业务进行及时调整。​


通过对时序数据库的发展分析,时序数据库的发展空间巨大,但也存在很多问题,GaussDB(for Influx)针对其存在的问题,都进行了针对性的创新与发展,可以说GaussDB(for Influx)为时序数据库的发展提供了巨大推动力。​

标签:数据库,DB,Gauss,时序,PB,查询,数据,GaussDB,Influx
From: https://blog.51cto.com/u_15805954/5759256

相关文章

  • 温控采集器对接-java版-modbus4j
    @​​TOC​​​​​​看此文说明你已经了解了modbus协议,这里不再赘述​​业务需求采集冷柜温控采集器的温度,web端显示各个冷柜的温度(​​定时采集​​)需求分析1,采集温度2.......
  • k8s上的 部署TiDB 集群
    k8s上的部署TiDB集群一、k8s环境准备略二、k8s上部署TiDB2.1、部署StorageClass-nfs方案sc种类很多,模拟的话此处就有较为简单的nfs类型的sc#nfs部署方案http......
  • day47-JDBC和连接池03
    JDBC和连接池038.事务8.1事务介绍基本介绍JDBC程序中当一个Connection对象创建时,默认情况下是自动提交事务:每次执行一个SQL语句时,如果执行成功,就会向数据库自动提交......
  • autoit_passwordbook
    autoitpasswordbook#include<GUIConstantsEx.au3>#include"GUIScrollbars_Ex.au3"Global$buttonList[100]=[0];CreateGUIwithredbackground$hGUI=GUI......
  • db2 导入导出工具
    一、概述DB2提供了三个用于数据移动的程序:export:使用sqlselect语句将数据从数据库表中提取到一个文件中import:将输入文件中的数据导入到表中load:将输入文件中的数据导入到......
  • jdbc.properties
    jdbc.properties#MySQL5.0+版本jdbc.driver=com.mysql.jdbc.Driver#MySQL8.0版本#jdbc.driver=com.mysql.cj.jdbc.Driver#时区GMT%2B8东八区jdbc.url=jdbc:mysql......
  • 驱动开发:WinDBG 配置内核双机调试
    WinDBG是在windows平台下,强大的用户态和内核态调试工具,相比较于VisualStudio它是一个轻量级的调试工具,所谓轻量级指的是它的安装文件大小较小,但是其调试功能却比VS更为强......
  • MongoDB:MongoDB 安装和使用(exe)
    MongoDB安装和使用(exe)   一、准备工作: 1、mongodb下载(格式:mongodb-windows-x86_64-6.0.2-signed.msi): https://www.mongodb.com/try/download/community2......
  • MongoDB: MongoDB 安装和使用
    MongoDB安装和使用    一、MongoDB准备工作:  1、MongoDB下载:1.1、mongodb下载(version-windows-zip):https://www.mongodb.com/try/download/......
  • Redis的持久化(RDB和AOF)
    RDB(RedisDataBase)在指定的时间间隔内将内存中的数据集快照写入磁盘,也就是行话讲的Snapshot快照,它恢复时是将快照文件直接读到内存里。Redis会单独创建(fork)一个子进程来......