1.基本概念
时序数据库(Time Series Database)是用于存储和管理时间序列数据的专业化数据库。时序数据库特别适用于物联网设备监控和互联网业务监控场景。
下面介绍下时序数据库的一些基本概念(不同的时序数据库称呼略有不同)。
1.1 度量(metric)
监测数据的指标,例如风力和温度。相当于关系型数据库中的table。
1.2 标签(tag)
指标项监测针对的具体对象,属于指定度量下的数据子类别。一个标签(Tag)由一个标签键(TagKey)和一个对应的标签值(TagValue)组成。
例如在监测数据的时候,指定度量(Metric)是“气温”,“城市(TagKey)= 杭州(TagValue)”就是一个标签(Tag),则监测的就是杭州市的气温。更多标签示例:机房 = A 、IP = 172.220.110.1。
1.3 域(field)
在指定度量下数据的子类别,一般情况下存放的是会随着时间戳的变化而变化的数据。一个metric可支持多个field,如metric为风力,该度量可以有两个field:direction和speed。
1.4 度量值(value)
度量对应的数值,如56°C、1000r/s等(实际中不带单位)。如果有多个field,每个field都有相应的value。不同的field支持不同的数据类型写入。对于同一个field,如果写入了某个数据类型的value之后,相同的field不允许写入其他数据类型。
1.5 时间戳(Timestamp)
数据(度量值)产生的时间点。
1.6 数据点 (Data Point)
针对监测对象的某项指标(由度量和标签定义)按特定时间间隔(连续的时间戳)采集的每个度量值就是一个数据点。1个metric+1个field(可选)+1个timestamp+1个value + n个tag(n>=1)”唯一定义了一个数据点。相当于关系型数据库中的row。
1.7 时间序列(Time Series)
1个metric+1个field(可选) +n个tag(n>=1)”定义了一个时间序列。主要是针对某个监测对象的某项指标(由度量和标签定义)的描述。某个时间序列上产生的数据值的增加,不会导致时间序列的增加。
例1(单域):对温度的时间序列监测值
温度(temperature)作为一个度量(metric),共4个数据点,每个数据点由如下组成:
timestamp:时间戳
三个tag:每个tag都是一个key-value对,tag的key分别是deivceID、floor、room。
一个field:温度值
其中4个数据点使用的metric、t