一、IoTDB的架构
IoTDB的架构主要分为三个部分:
时序文件(Tsfile):
- 专为时序数据设计的文件存储格式。
- 支持高效的压缩和查询性能。
- 可独立使用,并可通过TsFileSync工具同步至HDFS进行大数据处理。
数据库引擎:
- 负责数据的收集、写入、存储和查询等核心功能。
分析引擎:
- 可选的分析组件,用于数据处理和分析。
二、IoTDB的安装启动方法
1. 使用环境:
- 需要具备JDK>=1.8的运行环境,并配置好JAVA_HOME环境变量。
2. 下载指引:
- Windows系统:前往IoTDB官网下载页面,选择对应版本的“All-in-one”下载。
- Linux系统:使用wget指令从官方下载地址下载。
3. 配套指南:
- Windows和Mac系统只需解压下载包。
- Linux系统解压后需设置最大打开文件数为65535以保证运行稳定。
4. 启动IoTDB Server与Cli工具:
- 启动IoTDB Server:
- Linux及Mac系统:使用
nohup sbin/start-server.sh
指令启动。 - Windows系统:使用
sbin\start-server.bat
指令启动。
- Linux及Mac系统:使用
- 启动Cli工具:
- Linux及Mac系统:使用
sbin/start-cli.sh
指令启动。 - Windows系统:在解压文件夹下使用
sbin\start-cli.bat
指令启动。
- Linux及Mac系统:使用
5. 退出方法:
- 退出Cli工具:输入
quit
命令。 - 退出IoTDB Server:使用
sbin/stop-server.sh
(Linux及Mac)或sbin\stop-server.bat
(Windows)指令。
三、IoTDB的数据模式与建模方式
1. 数据层级与命名格式:
- IoTDB采用树形结构定义数据模式,根节点为
root
。 - 数据命名格式为从根节点到叶子节点的路径,如
root.BHSFC.Q1.W002.WROT_HubTmp
。
2. 数据概念:
- 时间戳(Timestamp):数据采集的时间点。
- 测点:监测数据的物理量,一个测点的数据构成一条时间序列。
- 时间序列:以时间戳为索引的数据序列,由测点数据构成。
3. 基于物联网数据模型的IoTDB元数据建模:
- 物联网数据模型通常包括集团层、工厂层、设备层和测点层。
- IoTDB数据模型基于物联网数据模型,以
root
为根节点,第二层及以下可设置为存储组(storage group)。 - 存储组可根据需要设置多个层级,至少为2层。
- 设备层为实体,测点层为物理量,即时间序列。
综上所述,IoTDB具有高效的时序数据处理能力,其架构灵活、安装启动简便,且数据模式贴合物联网实际应用场景,为时序数据管理提供了强有力的支持。