存储组 物理量 实体 路径 关系
存储组(Storage group)
IoTDB提出的概念,类似于关系数据库中的Database的概念。一个存储组中的所有实体的数据会存储在同一个文件夹下,不同存储组的实体数据会存储在磁盘的不同文件夹下,从而实现物理隔离。对IoTDB内部实现而言,存储组是一个并发控制和磁盘隔离的单位,多个存储组可以并行读写。对用户而言,方便了对设备数据的分组管理和方便使用。
设置合理数量的存储组可以带来性能的提升:既不会因为产生过多的存储文件(夹)导致频繁切换IO降低系统速度(并且会占用大量内存且出现频繁的内存-文件切换),也不会因为过少的存储文件夹(降低了并发度从而)导致写入命令阻塞。
注意:存储组节点名只支持中英文字符、数字、下划线和中划线的组合。例如
root.存储组_1-组1
。
物理量(Measurement)
物理量也称工况、字段field:一元或多元物理量,是在实际场景中传感器采集的某时刻的测量数值,在IoTDB内部采用<time, value>
的形式进行列式存储。 IoTDB存储的所有数据及路径,都是以测点为单位进行组织。测量还可以包含多个分量(SubMeasurement),比如GPS是一个多元物理量,包含 3 个分量:经度、维度、海拔。多元测点通常被同时采集,共享时间列。
实体(Entity)
实体,也称设备 (Device),对应现实世界中的具体物理设备,例如:电厂某制造单元、风力发电机、汽车、飞机发动机、地震波采集仪器等。在IoTDB中, device是时序数据一次写入的单位,一次写入请求局限在一个设备中。
路径(Path)
IoTDB构造了一个以root为根节点、把存储组、设备、传感器串联在一起的树形结构,从root根节点经过存储组、设备到传感器叶子节点,构成了一条路径。也叫时间序列。
如下图所示:
条路径。也叫时间序列。
如下图所示: