在IoTDB中,需要存储的数据种类繁多。在本文章中,我将为大家介绍IoTDB的数据存储策略,让大家了解IoTDB的数据管理。IoTDB存储的数据分为三类,即数据文件、系统文件和预写日志文件。

数据文件

数据文件存储用户写入IoTDB的所有数据,其中包含TsFile和其他文件。可以使用配置项配置 TsFile 存储目录。其他文件可以通过以下方式配置data_dirs配置项。

为了更好地支持用户磁盘空间扩展等存储需求,IoTDB 支持多种文件目录存储方式进行 TsFile 存储配置。用户可以将多个存储路径设置为数据存储位置,您可以指定或自定义目录选择策略。

系统文件

系统文件包括模式文件,用于在IoTDB中存储数据的元数据信息。它可以通过配置项进行配置。

预写日志文件

预写日志文件存储 WAL 文件。它可以通过配置项进行配置。

设置数据存储目录的示例

为了更清楚地了解配置数据存储目录,我们将在本节中给出一个示例。

存储目录设置涉及的所有数据目录路径为:base_dir、data_dirs、multi_dir_strategy、wal_dir,指系统文件、数据文件夹、存储策略、预写日志文件。

配置项示例如下:

base_dir = $IOTDB_HOME/data
data_dirs = /data1/data, /data2/data, /data3/data 
multi_dir_strategy=MaxDiskUsableSpaceFirstStrategy
wal_dir= $IOTDB_HOME/data/wal

设置配置后,系统将:

  • 将所有系统文件保存在 $IOTDB_HOME/data 中
  • 将 TsFile 保存在 /data1/data、/data2/data、/data3/data 中。而选择策略是,即每次数据写入磁盘时,系统会自动选择一个剩余磁盘空间最大的目录来写入数据。MaxDiskUsableSpaceFirstStrategy
  • 将 WAL 数据保存在 $IOTDB_HOME/data/wal 中