规划IoTDB容量
IoTDB自身有多副本机制,region(schema region和data region)默认是3副本。ConfigNode上保存region和IoTDBServer的映射关系,IoTDBServer保存region数据,直接使用操作系统自身的文件系统来管理元数据和数据文件。
容量规格
- ConfigNode容量规格
当创建新的存储组时,IoTDB默认为该存储组分配10000个槽位,数据写入时根据写入的设备名和时间值,分配或创建一个data region并挂载在某个槽位上。所以ConfigNode的内存容量占用跟存储组个数和该存储组持续写入的时间相关。
槽位分配相关对象
对象大小(字节)
TTimePartitionSlot
4
TSeriesPartitionSlot
8
TConsensusGroupId
4
根据上表计算可得一个ConfigNode,如果创建一个存储组,持续运行10年,大约需要0.68G内存 :
10000(槽位) * 10(年)* 53 (分区) * (TTimePartitionSlot size + TSeriesPartitionSlot size + TConsensusGroupId size)= 0.68G
- IoTDBServer容量规格
IoTDB中数据以region分配在IoTDBServer上,region副本数默认是“3”,最终在IoTDBServer文件系统上表现为3个文件。上限为操作系统可存储文件个数最大值,对于Linux系统即是inode个数。