openTSDB是一种时序数据库。基于Hbase数据库设计的一款产品,换句话说知识HBase的一种应用而已,有时间可以去看看HBase可以更好的理解openTSDB。

openTSDB主要用于监控系统,比如说我们要监控一台设备的CPU使用率,你需要标识这台设备的IP,电脑型号,CPU型号等等,那么openTSDB中就把你要监控的指标(比如CPU使用率)放在metric字段中,这个是必须要有的。另外的信息放在tag里边,以键值对的形式存在,就是tagk和tagv。

类似于这样(但是这不是openTSDB的表结构,只是帮助与理解)

 

另外,openTSDB是基于时间序列的,它会将采集的数据按每小时记录下来,给定一个时间起点(类似于hour),后边是一小时内的偏移量,15:01 CPU使用率什么样。15:02 CPU使用率什么样,不过真正在openTSDB中使用uninx时间戳来做的,偏移量使用对时间起点取模得到的,要比我说的更精确。

然后openTSDB会给metric和多个tag(tagk和tagv)分别分配一个uuid来标识,然后将所有的uuid拼起来形成了RowKey,最终就变成了这样

这个并不是真正的openTSDB的表结构,只是为了帮助理解而体现出来的存储原理。