IoTDB 入门教程⑤——数据模型和基础概念

文章目录

  • 一、前文
  • 二、数据模型
    • [2.1 关系型数据库MySQL。](#2.1 关系型数据库MySQL。)
    • [2.2 时序数据库TDengine](#2.2 时序数据库TDengine)
    • [2.3 时序数据库InfluxDB](#2.3 时序数据库InfluxDB)
    • [2.4 时序数据库IoTDB(本专栏的正主)](#2.4 时序数据库IoTDB(本专栏的正主))
  • 三、基础概念
    • [3.1 数据库(Database)](#3.1 数据库(Database))
    • [3.2 设备模板(元数据模板)](#3.2 设备模板(元数据模板))
    • [3.3 设备(实体)](#3.3 设备(实体))
    • [3.4 物理量(字段)](#3.4 物理量(字段))
  • 四、数据类型
  • 参考

一、前文

IoTDB入门教程------导读
本文主要讲述IoTDB的数据模型和基础概念。
不同的数据库都有不同侧重,IoTDB亦如是。

二、数据模型

2.1 关系型数据库MySQL。

  • 是我们最熟悉的:先建库(database),再建表(table).
  • 表里面有不同的字段,数据库的使用就是对表数据进行增删改查。

2.2 时序数据库TDengine

增加了超级表和普通表的概念。

2.3 时序数据库InfluxDB

增加了无模式写入的概念。

2.4 时序数据库IoTDB(本专栏的正主)

增加了物联网数据模型,即企业组织结构和设备实体层次结构。如下图。

  • IoTDB 采用树形结构定义数据模式。
  • 以从 ROOT 节点到叶子节点的路径来命名一个时间序列,层次间以"."连接。

三、基础概念

3.1 数据库(Database)

  • 允许将任意前缀路径设置成数据库,例如root.user1
  • 不允许将一个完整路径(例如的root.ln.wf01.wt01.status) 设置成 database。
  • 被设置为数据库的路径总字符数不能超过64,包括路径开头的root.这5个字符。
  • 一个 database 中的所有数据会存储在同一批文件夹下。

比较大的槽点是数据库必须是root.*开头。

很不习惯,也感觉很没必要。

如果实在必要,在代码层面隐藏掉root.*不就行了吗。

3.2 设备模板(元数据模板)

有点类似关系型数据库中的表。

只不过更加复杂,有创建、挂载、激活、修改、查看、解除、卸载、删除等步骤。

具体查看:元数据操作 | IoTDB Website

3.3 设备(实体)

  • 一个物理设备,也称实体(Entity),是在实际场景中拥有物理量的设备或装置。
  • 设备(实体)无需手动创建,默认为倒数第二层。
  • 在数据库到设备之间还有一层,属于企业组织结构的一层。

3.4 物理量(字段)

  • 物理量也就是,等同于关系型数据库中的表的字段。
  • 是在实际场景中检测装置所记录的测量信息。

四、数据类型

IoTDB 支持以下六种数据类型:

  • BOOLEAN(布尔值)
  • INT32(整型)
  • INT64(长整型)
  • FLOAT(单精度浮点数)
  • DOUBLE(双精度浮点数)
  • TEXT(字符串)

参考

数据模型 | IoTDB Website

数据类型 | IoTDB Website

元数据操作 | IoTDB Website

觉得好,就一键三连呗(点赞+收藏+关注)

相关推荐
vvvae12342 小时前
分布式数据库
数据库
雪域迷影2 小时前
PostgreSQL Docker Error – 5432: 地址已被占用
数据库·docker·postgresql
bug菌¹3 小时前
滚雪球学Oracle[4.2讲]:PL/SQL基础语法
数据库·oracle
逸巽散人3 小时前
SQL基础教程
数据库·sql·oracle
月空MoonSky4 小时前
Oracle中TRUNC()函数详解
数据库·sql·oracle
momo小菜pa4 小时前
【MySQL 06】表的增删查改
数据库·mysql
向上的车轮5 小时前
Django学习笔记二:数据库操作详解
数据库·django
编程老船长5 小时前
第26章 Java操作Mongodb实现数据持久化
数据库·后端·mongodb
全栈师5 小时前
SQL Server中关于个性化需求批量删除表的做法
数据库·oracle
Data 3176 小时前
Hive数仓操作(十七)
大数据·数据库·数据仓库·hive·hadoop