InfluxDB主要有七个概念:database、measurement、timestamp、filed、tags、point、series。下面简单介绍一下各个概念的含义,更详细的概念将在后面的章节介绍。
● database:数据库。用户、保留策略、连续查询和时间序列数据的逻辑容器。
● measurement:相当于关系型数据库中表的概念。可以理解为一条条记录都是存储于measurement中的,一个数据库中可以有多个measurement,一个measurement中可以存储很多的数据。
● timestamp:时间戳。与point关联的日期和时间,每条记录都会带有一个单独的时间戳。
● filed:未加索引的字段,用来存储具体的时序数据,即随着时间变化而变化的数据。是InfluxDB数据结构中记录元数据和实际数据的键值对,用来保存真实数据的结构,由key-value键值对组成,在InfluxDB的数据结构中是必需的。
● tags:标签,一般用于存储标识数据来源的属性信息。是记录元数据的键值对,在InfluxDB的数据结构中是可选的,tags和filed一样是key-value的结构,但会在tags上加索引,因此对tags的查询是高效的。
● point:一条记录。相当于关系数据库中的一条记录。
● series:InfluxDB中一些数据的集合。在同一个database中,retention policy、measurement、tag完全相同的数据属于一个series,同一个series的数据在物理上会按照时间顺序排列存储在一起。
为了更好地理解这些概念,表1-2将InfluxDB与MySQL的关键概念做了对比。
表1-2 InfluxDB与MySQL概念对比