在数据库领域有一种数据库叫做时序数据库,那么相比于传统的关系数据库这种数据库有什么特点呢?
首先我们需要了解一下什么是时序数据,以及它有什么特点?
什么是时序数据?
时序数据库中存储的时序数据就是带着时间戳的数据,采集时序数据的目的是监测数据的前后差异,然后做出响应。
时序数据的特点
- 一旦被存储就不会被修改
新的数据只会被添加到系统中,数据不会在将来的某个时段被修改为其他的值。 - 最近产生的数据的重要性超过老数据
- 数据量巨大
因为每隔一个时间段就会新增一批数据,所以数据量非常大。比如对于一个有5000个数据点的工厂,每秒采集一次数据,一小时的数据量就会超过18,000,000条。 - 往往是时间间隔越小差异性越小
比如某地的温度,如果用秒级监控,差异会很小
时序数据的来源
时序数据的主要来源有以下三个方面:
- IOT
主要来源是传感器,比如某点的温度、湿度、压力、电流、电压等 - 金融和科学数据
比如交易时段的证券价格,地震监控数据等 - IT 基础架构
这里的主要来源是软硬件的监控数据
为什么要用时序数据库
时序数据有数据量特别巨大的特点。数据量大需要解决两个问题:
- 每秒接收和存储数据必须快
时序数据的数据点多,更新频率高,目前时序数据普遍使用LSM技术,而不是B树来存储数据。LSM先在内存中积累数据然后再批量写入磁盘,而B树的优势在于读取而不是存储。 - 能有效压缩数据,节省存储空间
目前大部分时序数据库采用Facebook提出的Gorilla算法,简单说就是存储数据的差异

时序数据库如VictoriaMetrics和InfluxDB专门处理带有时间戳的大规模数据。VictoriaMetrics在CPU线性可扩展性、写盘带宽效率和查询速度上表现出色,尤其在数据压缩方面优于竞品。时序数据库采用列存储和特殊压缩算法,以应对时序数据的高频率和小差异性,降低存储成本并提升查询性能。对于需要实时监控和分析大量时序数据的场景,如IoT、金融和IT基础设施监控,选择合适的时序数据库至关重要。
最低0.47元/天 解锁文章





