TDengine数据建模

文章目录

  • 1 引言
  • 2 数据建模
  • 3 数据建模的步骤
  • 4 创建库
  • 5 创建超级表
  • 实例

1 引言

工业互联网中有大量的时序数据需要存储和处理,tdengine是一个开源的、国产的、云原生时序数据库,tdengine不是基于其他第三方开源软件高级封装,是涛思数据完全自主研发的。

2 数据建模

一个采集点一张表

  • 一个采集点的数据在一个块里面是连续存放的
  • 采取Block Range Index 可快速定位要查找的数据所在的块
  • 高速写入
  • 高速读取访问
  • 兼顾效率和灵活性
  • 节约存储空间
  • 修改静态属性的代价极小

同一类型的采集点用一个超级表描述,也就是一个表结构Schame和静态标签Schame,利用超级表作为模板,生成子表-对应各采集单。

Device ID timestamp current voltage location groupID
D001 1689213147 10.1 220 beijing 2
D002 1689213147 10.1 220 beijing 2
D001 1689213147 10.1 220 beijing 2
D001 1689213147 10.1 220 beijing 2
D002 1689213147 10.1 220 beijing 2

DeviceID 电表ID

动态采集数据
timestamp:时间戳
current:电流
voltage: 电压

静态标签数据
location:位置
groupID:组ID

3 数据建模的步骤

  1. 建库

    create database dbname
    
  2. 切换数据库

    use dbname 
    
  3. 创建超级表

    create stable stbname (ts timestamp, other fields...) tags (tag fields);
    
  4. 创建子表

    create table tbname using stbname tags (具体标签值)
    
  5. 插入数据

    insert into tbname values (now, values...)
    

4 创建库

建议为数据特征相同的表创建一个数据库,每个库可以配置不同的存储策略。

数据特征:
1. 数据采集的频率 1s/2s/3s/4s/5s
2. 保存时间长短 1M/1Y/3Y
3. 副本的数量:

5 创建超级表

实例

TDengine数据建模_第1张图片

TDengine数据建模_第2张图片

TDengine数据建模_第3张图片

你可能感兴趣的:(tdengine,大数据,时序数据库)