时间序列数据库概览——基于文件(RRD)、K/V数据库(influxDB)、关系型数据库
一般人们谈论时间序列数据库的时候指代的就是这一类存储。按照底层技术不同可以划分为三类。 直接基于文件的简单存储:RRD Tool,Graphite Whisper。这类工具附属于监控告警工具,底层没有一个正规的数据库引擎。只是简单的有一个二进制的文件结构。 基于K/V数据库构建:opentsdb(基于hbase),blueflood,kairosDB(基于cassandra),influxdb,prometheus(基于leveldb) 基于关系型数据库构建:mysql,postgresql都可以用来保存时间序列数据 另外一类数据库其表结构是: [timestamp] [d1] [d2] .. [dn] [v1] [v2] .. [vn] 其优化的查询方式不限于查询原始数据,而是可以组合查询条件并且做聚合计算,比如: SELECT d2, sum(v1) / sum(v2) FROM metric WHERE d1 = “A” AND timestamp >= B AND timestamp < C GROUP BY d2 我们希望时间序列数据库不仅仅可以提供原始数据的查询...