开源物联网平台ThingsBoard数据库40张数据表设计一览
开源物联网平台ThingsBoard数据库40张数据表设计一览
- 1 ThingsBoard数据库总览
- 1.1 数据库信息
- 1.1.1 数据库名称
- 1.1.3 数据库用户名及密码
- 1.1.3 数据库表
- 1.2 数据库表命名规范
- 1.3 40张数据表信息
- 2 遥测数据存放数据表
- 2.1 分区表
- 2.2 字段
- 2.3 压缩
- 3 一些字段命名问题
- 3.1 create_time字段必有
1 ThingsBoard数据库总览
ThingsBoard软件版本为 3.3.2
。
ThingsBoard使用的数据库类型为关系型数据库PostgreSQL
。
1.1 数据库信息
1.1.1 数据库名称
数据库名称为thingsboard
,数据库名一般和应用名称保持一致。
1.1.3 数据库用户名及密码
默认的用户名和密码均为postgres
。
1.1.3 数据库表
数据库包含共计40张数据表。
1.2 数据库表命名规范
- 首先确定单个单词能否涵盖业务的全部功能;
- 其次按照“业务名称_表的作用”进行细分;
- 最后按照“业务名称_表的作用_状态信息”继续细分;
1.3 40张数据表信息
按照功能单元分类如下表所示。
序号 | 业务名称 | 功能 | 表名 | 描述 |
---|---|---|---|---|
1 | 规则引擎 | 规则链 | rule_chain | 存放规则链信息,如规则链的模式 |
2 | 规则引擎 | 规则链节点 | rule_node | 存放规则节点信息,如节点的配置信息 |
3 | 规则引擎 | 规则链节点状态 | rule_node_state | 存放规则节点的状态数据 |
4 | 设备实体 | 设备信息 | device | 存放设备基本信息,如设备配置文件、固件及软件版本 |
5 | 设备实体 | 设备鉴权 | device_credentials | 存放设备鉴权信息,如鉴权类型、鉴权号码 |
6 | 设备实体 | 设备配置 | device_profile | 存放设备配置文件数据,如设备的图标、配置详情信息 |
7 | 资产实体 | 资产信息 | asset | 存放资产信息数据,如资产的类型、资产的描述 |
8 | 租户实体 | 租户信息 | tenant | 存放租户数据,如租户的地址、电话信息 |
9 | 租户实体 | 租户配置 | tenant_profile | 存放租户数据,如租户的地址、电话信息,租户的租用能力 |
10 | 客户实体 | 客户信息 | customer | 存放客户数据,如客户的详细地址、所归属的租户 |
11 | 用户实体 | 用户信息 | tb_user | 存放软件用户信息,如用户所属的客户及租户 |
12 | 用户实体 | 用户鉴权 | user_credentials | 存放软件用户鉴权信息,如用户的用户名、密码,重置令牌 |
13 | 告警实体 | 告警信息 | alarm | 存放软件告警信息,如告警信息的程度、处理状态 |
14 | OTA实体 | 空中下载升级包信息 | ota_package | 存放设备升级软件包的信息,如软件的版本、文件名、校验码 |
15 | 仪表盘实体 | 用户信息 | dashboard | 存放软件看板信息,如看板的配置、分配客户的信息 |
16 | 属性实体 | 属性信息 | attribute_kv | 存放属性键值对信息,如属性的类型、属性值 |
17 | 遥测实体 | 遥测信息 | tb_kv | 存放遥测键值对数据,如遥测的键及其值 |
18 | 遥测实体 | 最新遥测信息 | tb_kv_latest | 存放最新的遥测键值对数据,如遥测的键及其值 |
19 | 遥测实体 | 遥测字典 | tb_kv_dictiontry | 存放遥测键的字典数据 |
20 | 组件 | 组件描述 | component_descriptor | 存放规则引擎组件的描述信息,如配置数据 |
21 | 部件 | 部件类型 | widget_type | 存放部件信息 |
22 | 部件 | 部件库 | widget_bundle | 存放部件库信息,相当于将部件归类 |
23 | 审计 | 审计日志信息 | aduit_log | 存放审计日志数据,如用户使用本软件的ip地址、浏览器信息、操作系统信息 |
24 | OAuth2 | 授权服务注册 | oauth2_registration | 存放授权注册信息,如访问令牌URI、授权用户信息 |
25 | OAuth2 | 授权服务注册 | oauth2_client_registration_template | 存放客户端注册信息模板,如GitHub的授权信息所需配置项、Apple的授权信息所需的配置项 |
26 | OAuth2 | 授权服务注册 | oauth2_params | 存放授权用户信息,如租户信息 |
27 | OAuth2 | 移动端授权 | oauth2_mobile | 存放移动端授权登录信息,如应用包名、应用令牌 |
28 | OAuth2 | 授权域信息 | oauth2_domain | 存放授权域相关信息,如域名、域访问协议 |
29 | OAuth2 | 授权域信息 | oauth2_client_registration_info | 存放授权客户端注册相关信息,如域名、域访问协议 |
30 | OAuth2 | 授权域信息 | oauth2_client_registration | 存放授权域相关信息,如域名、域协议 |
31 | 边缘计算 | 边缘计算 | edge | 存放边缘计算服务信息 |
32 | 边缘计算 | 边缘计算事件 | edge_event | 存放边缘计算发生的事件数据,如事件信息 |
33 | 实体视图 | 实体视图 | entity_view | 类似数据库的视图功能,存放视图信息,如分配视图的起止时间 |
34 | 资源 | 资源 | resource | 存放资源数据信息,如秘钥文件信息 |
35 | rpc | 远程过程调用 | rpc | 存放远程过程调用数据,如请求数据、响应数据 |
36 | 关系实体 | 关系数据 | relation | 存放实体间的关系,如资产与资产的包含类型、起始实体类型数据 |
37 | 事件实体 | 事件 | event | 存放各实体类事件的信息,如事件类型、事件数据 |
38 | 设置 | 管理员设置 | admin_setting | 存放设置信息,如基本设置、邮件设置 |
39 | 接口 | 接口状态 | api_usage_state | 存放接口使用信息,如各类展示卡片激活状态 |
40 | 版本 | 版本设置 | tb_schema_settings | 存放软件版本信息 |
2 遥测数据存放数据表
2.1 分区表
遥测数据存放表名为ts_kv
,按照时间(月份)进行分区表设计,如下图所示。
2.2 字段
遥测的数据类型有五种,包括:
public enum DataType {STRING, LONG, BOOLEAN, DOUBLE, JSON;}
最新遥测数据保存表名为ts_kv_latest
,当表达到预定行数值后将数据复制到表ts_kv
中。
2.3 压缩
键名字段key
是数值,在表ts_kv_dictionary
有其对应关系,当遥测数据中含有相应的键名时,在ts_kv
使用数字进行对应存储,可以节省磁盘空间。
3 一些字段命名问题
3.1 create_time字段必有
大致看一下这40张表的字段,create_time
字段的出现的频次极高,因为数据的创建时间对后期运维有很大参考价值。
开源物联网平台ThingsBoard数据库40张数据表设计一览相关推荐
- 开源规则引擎比较_开源物联网平台ThingsBoard
1 介绍 开源物联网平台ThingsBoard不像AWS IOT.Azure IoT等大平台那样功能完善,但对于小企业或者小项目需要一个物联网平台,是个不错的选择,可以作为一个参考和起点,10 ...
- 详述 MIMIC 数据库 26张数据表(二)之 五种字典表
往期相关文章: 1.MIMIC数据库简介_越努力 越幸运-CSDN博客_mimic数据库 2.[保姆级教程]教你如何轻松获取MIMIC数据使用权限_越努力 越幸运-CSDN博客 3.MIMIC-III ...
- 详述 MIMIC 数据库26张数据表(一)
MIMIC-III每张表格在官网(https://mimic.mit.edu/docs/iii/tables/)都有介绍,作者按照自身理解和实验要求对26张数据表进行整理归纳并进行介绍. 一.数据表简 ...
- 国外开源IoT平台Thingsboard社区版本(V3.3.2)在Win10环境下进行源码编译及运行指南
国外开源IoT平台Thingsboard社区版本源码编译及运行指南 1 下载 2 软件环境及版本 2.1 系统环境 2.2 数据库环境 2.3 前端环境 2.4 编译环境 2.5 应用环境 3 编译 ...
- 【物联网平台】ThingsBoard 是一个用于数据收集、处理、可视化和设备管理的开源物联网平台
[物联网平台]ThingsBoard 是一个用于数据收集.处理.可视化和设备管理的开源物联网平台. 物联网用例 智慧能源 车队追踪 智慧农业](https://thingsboard.io/smart ...
- 物联网平台thingsboard在Windows上的安装和部署
物联网平台thingsboard在Windows上的安装和部署 前言 安装环境 部署和安装 测试 http测试 测试MQTT 前言 thingsboard是一个完全开源的物联网应用平台,个人感觉如果不 ...
- 开源 物联网平台管理系统_我们如何创建物联网系统来管理太阳能使用
开源 物联网平台管理系统 If you have no idea about the development architecture and mechanical/electrical design ...
- 开源物联网平台推荐介绍
开源物联网平台调研 文章目录 开源物联网平台调研 一. 调研推荐开源物联网平台及背景介绍 二.社区支持度与技术栈角度优缺点对比 三.开源项目地址及中文教程地址 四.部署要求 五.功能截图 六.个人总结 ...
- 开源物联网平台有哪些?
目前市面上有许多开源物联网平台可供选择.以下是其中一些较为流行和知名的平台: Eclipse IoT:Eclipse IoT 是一个开源的物联网平台,旨在提供可扩展.灵活和高度集成的工具和框架,用于构 ...
最新文章
- ThinkPad安装deepin操作系统报错解决方法
- android6.0单独编译和调试framework源码的方法
- UNIX再学习 -- 网络与网络协议
- 上有硬核理论下能操刀AI落地,这里走出来的人都有“开挂人生”
- 对话MPEG创始人Leonardo Chiariglione: MPEG精神将在MPAI中延续
- 向日葵远程使用备忘录
- 使用GZIP和Zip压缩Java数据流
- TZOJ 5101 A Game(区间DP)
- Linux下用FFMPEG采集usb摄像头到RTMP
- Practice:Demonstrating the Key TCP/IP Protocols
- 【详解】EL表达式和JSTL标签库的使用
- zendstudio13.6配置xdebug调试
- Android开发 匹配软键盘回车键
- java助教面试自我介绍,面试英语助教自我介绍
- 利用html创建新闻页面
- CSS查漏补缺(一)—页面内容不足铺满屏幕高度和有滚动条时,footer始终保持底部显示
- 目标检测学习笔记1---RCNN、SS、SVM
- java象棋联网架构与设计_中国象棋程序的设计与实现(零)--原始版源码
- linux平台开源oa系统
- 自动提取关键词的软件-根据核心关键词提取长尾词
热门文章
- Android 银行卡快捷支付
- 虚拟机Centos网络配置
- GRE词汇分类之责骂词汇
- 缺陷管理工具bugfree快速安装配置
- システム関連の完了コード
- java毕业生设计学术会议论文稿件管理系统计算机源码+系统+mysql+调试部署+lw
- 概率论中常见的几种分布
- 当前NBIoT设备的省电技术之PSM/DRX/eDRX
- 【风控系列】2. 如何构建一个有效的风控系统
- 浏览器中的data类型的Url格式,data:image/png,data:image/jpeg!