很凑巧,我们在上一篇浅谈数据存储文章中,谈到了时序数据库,最近我们的项目中正好用到了现在很火的时序数据库TDengine,所以在这里,顺便和大家分享一下我在学习以及使用时序数据库的一些心得。
在大数据的背景下,如果我们将数据类型进行细分,每个细分类型的数据都会有一定的存储优化空间,主要是看这个优化有没有新增一套细分类型数据的处理方案来的更有价值(当然如果我们的系统只有某一种细分类型的数据,那么选择细分类型的处理方案会好很多) (来自我的瞎总结)
时序数据就是大数据背景下一种数据类型的细分,由于物联网时代的到来,时序数据的总量越来越多,专门针对于时序数据类型的处理方案不断浮现,它们被称为时序数据库,下面,我们就开始揭开时序数据库的神秘面纱吧!
下面,我们主要是通过这几个方面聊聊:
1.时序数据的特点以及大数据背景下的可优化空间?
2.TDengine时序数据库的解决方案?
3.influxdb相对于TDengine在使用场景上又有什么区分(为什么TDengine的性能要比其他时序数据库高,为了高性能它牺牲了什么)?
1.时序数据的特点以及大数据背景下的可优化空间?
大数据时代已经到来了很多年,大数据解决方案基本成熟, Hadoop集群处理方案基本成为了一个处理大数据的最佳实践。他所处理的数据包含结构化,半结构化,非结构化的数据,通过Sqoop、Flume、kafka收集数据,通过hbase、hdfs存储数据、通过mapreduce、sparkstreaming等计算数据,最后通过hive作为数据仓库为应用层提供需要的数据。
这是一套通用的,综合的大数据解决方案。
那如果把数据类型细分一下,针对于大量的时序数据,我们应该怎么优化存储?
首先,什么是时序数据?
简单来说,时序数据就是按照时间维度索引的数据,比如车辆轨迹数据,传感器温度数据。随着物联网时代的到来,时序数据的数据量呈井喷式爆发,针对于这一数据细分的优化存储显得越来越重要。
那么时序数据有什么特点呢?针对于这些特点我们怎么去优化存储呢?
同样在