GaussDB(DWS)带你走近IoT时代-时序数据库为万物互联打下坚实的数仓基石【这次高斯不是数学家】

网友投稿 923 2022-05-29

摘要

万物互联的时代,最不缺少的就是海量数据,爆炸性增长的数据能给我们带来什么价值,我们如何通过这些海量数据看清事物的本质,甚至能够预测事物的发展趋势,这些是我们面对的挑战和需要解决的问题。时序数据库是这个时代的产物,也不断驱动着这个世界向万物互联不断迈进。

概述

GaussDB(DWS)带你走近IoT时代-时序数据库为万物互联打下坚实的数仓基石【这次高斯不是数学家】

随着5G技术的不断成熟,物联网技术得到了快速发展,万物互联的场景在我们身边也越来越触手可及。我们身边的电子设备变得越来越多,手机、电脑、智能手表、全屋智能、自动驾驶汽车等等,承载的信息量成倍增加,数以亿计的信息昼夜不停地描绘着这个世界。

物联网时代,每个物体每时每刻都在产生各种维度的数据信息,这些信息尽可能全面的刻画我们所生活的世界,这些采集到的数据信息,帮助我们更好的生活,不断改变我们的生活方式。例如当下非常火热的自动驾驶,需要在汽车上配备各种传感器,用以实时采集运行时汽车的各项监控数据,采集的维度包括:坐标、速度、方向、温度、功率等等。每辆汽车上的传感器每天采集数据的数量级可能达到TB级。

这些采集到的数据和时间强相关,采样时间间隔固定,描述了物体在历史时刻中测量数据的变化,我们将这种类型的数据统称为时间序列(Time Series)数据。我们将这些时序数据存储起来,这些海量数据不仅帮助我们了解物体的实时状态,通过多个维度的分析,更能够帮助数据使用者更好的指定策略,分析目标对象的趋势和规律等,甚至能够帮助我们预测不确定的未来。

时序数据的特征

下图是一个典型发电机组数据采样示意图。共有三台发电机组,每个时间点分别采样四种数据:包括电压、功率、频率和电流相角。随着时间的流逝,每个采样的时间点将采样到的数据源源不断的传输。

这样的时序数据场景随处可见,那么面对采样到的这些时序数据,我们应该怎样存储呢。

我们将示意图转化为具体的一张表中的数据存储,从上图中我们可以看到,橙色区域的列包含发电机、生产厂商、型号、位置、ID这五列,可以看到这五列表示发电机组的一些物理信息,不会随时间的变化而变化;蓝色部分的列包含电压、功率、频率、电流相角这四列,这些列是我们目标采样维度,这些列存储的采样数据会随着时间动态变化;最后一列为时间列,表示我们采样的时间点。

综上,我们将时序数据列做了以下三种分类:

Tag列:通常将表征数据源来源或者属性信息的列作为Tag列,该列的数值通常相对稳定,不随时间变化而变化。

Field列:一般将采样的维度作为数据列,因为该列的数据一般随时间变化而变化,存储各个指标的value。

Time列:表示采样时刻的时间戳。

发电机组的某个指标随时间变化形成一条时间线,通过tag + field + time组合确定一条时间线。发电机组采样示意图中每条虚线都可以表示为一条时间线。通过上述的发电机组的采样模型我们对时序数据有一定的初步认识。那么相比较于传统数据库的应用场景,时序场景下的数据存储带来了哪些挑战呢?时序数据在实际采集过程中存在以下技术要求和特点:

海量数据写入能力

例如在自动驾驶汽车监测的数据每秒只采集5种测量数据(速度、温度、发动机功率、方向、坐标),1000W量汽车每秒中将会有5000W的TPS。

写入平稳、持续

传统业务数据通常和应用的访问量成正比,而访问量通常存在波峰波。不同于传统业务场景,时序数据的产生通常以一个固定的时间频率进行采集,不会受其他因素的制约,其数据生成的速度是相对比较平稳。

写多读少

时序数据90%左右的操作都是写操作。主要与其应用场景相关,例如在监控场景下,虽然每天需要存储很多数据,但是真正去读取的数据通常比较少,通常只会关注几个特定关键指标在一定时间范围内的数据。

高压缩率

高压缩率能够带来两方面的收益。一方面能够节省大量的硬件存储成本,节省硬盘的开销。另一方面压缩后的数据可以更容易存储到内存中,显著提高查询的性能。

实时写入最近生成的数据,无更新

时序数据的写入是实时的,采集的数据是反应物体客观信息,数据是随着时间推进不断产生,不存在旧数据更新场景。

最近的数据读取概率高

最近时间的数据具有的价值越高,因此最近的数据被读取的概率越高。例如在监控场景下,最近几个小时或者几天的监控数据最可能被访问,而一个季度或者一年前的数据极少访问。

多维度分析

时序数据来自不同个体,这些个体可能拥有不同的属性。在监控场景下,我们对某个集群上每台机器上的网络流量监控,可以对集群下的某台机器的网络流量查询,也可以对集群总的网络流量查询。

时序数据库应用场景

典型时序数据库主要服务两类业务场景,应用性能监控(Application Performance Management, APM)和物联网(Internet of Things, IoT)

商业零售:电商系统订单交易金额,支付金额数据,尚品库存,物流数据;

金融交易:股票交易系统持续记录股票价格,交易量等;

社会生活:智能电表会实时记录每个小时的用电量数据等;

工业领域:工业机器数据例如风力发电机,获取实时转速、风速数据、发电量数据等;

系统监控:IT基础设施的负载和资源使用率,DevOps监控数据、移动/Web应用程序事件流等;

环境监测:自然环境(如温度、空气、水文、风力等)的监测,科学测量结果等;

城市管理:城市交通的监测(车辆、人流、道路等);

自动驾驶:自动驾驶汽车持续收集所处环境中的变化数据等。

总结

在万物互联的时代,时序数据库将会是一个非常具有市场和挑战性的领域。如何帮助用户更好的解决时序场景下遇到的难题,也是华为云服务的宗旨,帮助客户在物联网时代更快更好的适应潮流的发展,发挥出更有力的作用和创造更大的价值。

GaussDB(DWS) IoT数仓针对时序场景下的各种特点和技术要求,在高性能(全并行架构、实时分析)、高扩展(1024大集群、逻辑集群)、多模融合、安全可靠(HA、容灾、备份)、智能运维(智能调优,智能调度)等方面,不断进行创新和挑战中前进,为万物互联的美好时代,打下坚实的数据存储基石。

【这次高斯不是数学家】有奖征文火热进行中:https://bbs.huaweicloud.com/blogs/345260

GaussDB数据库 IoT 云端实践 数据仓库服务 GaussDB(DWS) 数据库

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:和逛微博、刷朋友圈一样玩转 GitHub
下一篇:软件工程专业C#程序设计基础 课程期末试卷
相关文章