Skip to content

ThingsBoard 的实体视图 ​

正文与配图来自原稿。实体视图(Entity View,EV)自 v2.2 起提供,用于控制客户能看到设备/资产的哪些数据。

1、概念 ​

类似 SQL 视图限制表对外暴露的列/行,ThingsBoard 实体视图限制设备或资产的遥测与属性对客户的可见范围。租户管理员可为每个设备或资产创建多个 EV,并分配给不同客户。

实体视图示意

2、支持用例 ​

  • 同时与多个客户共享同一设备/资产的部分数据
  • 允许特定客户用户查看采集数据(如传感器读数)
  • 不同时段的数据归属不同客户

3、架构 ​

3.1、视图包含的字段 ​

字段含义
TenantId视图所属租户
CustomerId有权访问该视图的客户
EntityId目标设备或资产
名称 / 类型展示与搜索
开始 / 结束时间限制客户可访问的遥测时间范围
时间序列键客户可见的遥测 key 列表
属性键客户可见的属性名列表

3.2、遥测数据视图 ​

时序数据仍只存在目标实体上,EV 不复制时序。用户打开仪表板或按 EV ID 调 REST 时:

  1. 请求的起止时间会被校验并裁剪到 EV 的时间窗内(例如仪表板要 1 年,EV 只开 6 个月,则超出部分不可见/失败)
  2. 请求的遥测 key 必须在 EV 配置的允许列表中,否则失败

3.3、属性视图 ​

每次保存或更新实体视图时,会从目标实体复制所配置的属性到视图。出于性能,目标属性变更不会每次都自动同步到 EV。

若要属性变更自动更新到视图:在规则链配置 copy to view 节点,并将 Post attributes、Attributes Updated、Attributes Deleted 等消息连到该节点。


补充(辅) ​

  • 把 EV 分配给客户后,客户仪表板应使用 EV 作为数据源,而不是原始设备 ID。
  • 与「设备认领」不同:认领改所有者;EV 是在不移交设备的前提下做只读数据切片。见 设备认领。

相关文章 ​