TDengine IDMP 工业数据建模 —— 数据标准化

3.4 数据标准化

工业环境通常从多个数据源采集数据,这些数据往往命名不一致、物理单位各异、数据结构不同。如果没有标准化,跨资产分析、AI 生成洞察和数据汇聚将变得不可靠甚至无法实现。TDengine IDMP 提供了多种机制,对整个资产模型中的数据进行标准化。

3.4.1 通过数据引用统一命名

不同数据源对同一物理测量量往往使用不同的名称。一个系统可能将温度存储为 temperature,另一个存储为 WD,第三个存储为 tmp_sensor_1。没有标准化,就无法比较或汇聚这些值。

IDMP 通过数据引用 机制解决这一问题:无论 TDengine TSDB 中的底层列名是什么,您都在元素上定义一个统一的标准属性名------例如 室内温度------并将其映射到实际存储数据的那个列。此后,所有用户、仪表板和分析都使用 室内温度 这一名称,而不管数据源系统的命名是什么。

这意味着您可以:

  • 将命名不规范或过于简短的源字段重命名为清晰的工程名称
  • 在同类型的所有资产上应用统一的命名规范
  • 在不影响任何引用该属性的仪表板或分析的情况下更换底层数据源

3.4.2 通过公式和字符串构建器进行数据转换

当来自不同数据源的数据对同一测量量使用不同表示方式时,IDMP 允许您通过公式字符串构建器数据引用对其进行转换。

公式属性可以从其他属性计算推导值。例如:

  • 一个数据源直接记录有功功率;另一个分别记录电流和电压。创建公式属性 有功功率 = 电流 × 电压,无论来源如何都能得到一致的功率值。
  • 进行量程转换:摄氏温度 = (华氏温度 - 32) × 5 / 9

字符串构建器属性可以从多个源字段构建标准化的字符串值。例如,从独立的城市和楼栋字段构建标准位置描述:

text 复制代码
CONCAT(${attributes['City']}, '-', ${attributes['Building']}, '-Floor', CAST(${attributes['Floor']} AS varchar))

通过这些机制,IDMP 吸收异构的原始数据,并通过统一、标准化的属性模型对外提供。

3.4.3 计量单位标准化

IDMP 将存储单位显示单位解耦,实现自动换算:

  • 默认计量单位 --- 数据源存储数据所用的单位(如米、瓦、开尔文)
  • 显示计量单位 --- 在面板和仪表板中向用户展示时所用的单位(如千米、千瓦、°C)

当两者不同时,IDMP 会自动换算。例如,如果默认单位是米,显示单位是千米,则存储值 1000 会显示为 1 km。

两种单位必须属于同一计量单位分类(如长度、功率、温度)。计量单位分类下拉框将兼容的单位归为一组,防止无效配对。

这一机制在不同数据源以不同单位记录数值的情况下,统一了数据的用户端展示,并确保公式表达式中的量纲一致性。

3.4.4 通过模板实现结构标准化

模板是确保同类资产结构一致的最强大工具。IDMP 在多个层面提供模板:

3.4.4.1 元素模板

为每种资产类别(如泵、电表、锅炉)定义标准资产结构。元素模板预先配置了该类资产应有的全套标准属性------包括名称、数据类型、单位、极限值和描述。从模板创建新元素时,所有标准属性会自动添加。

3.4.4.2 属性模板

单个属性定义可以保存到模板库中,并在多个元素或元素模板中复用。这确保了通用属性(如 有功功率运行状态)在所有出现的地方都保持一致的定义。

3.4.4.3 其他模板类型

IDMP 还为分析、面板、仪表板、事件和通知提供模板------确保运营逻辑和可视化在同类资产中保持标准化,而不仅仅是数据模型层面。

详情请参见第 13 章------基础库,了解如何创建和管理模板。

3.4.5 通过类别组织属性

为属性分配类别,按功能、系统或任何与您业务相关的组织方案对其分组(如电气、机械、安全、质量)。类别服务于两个目的:

  • 筛选: 在属性选项卡中,使用类别下拉框只显示特定分组的属性
  • 一致性: 当同类型的所有元素都使用相同的类别标签时,用户始终知道在哪里找到相关属性

类别是自由文本标签,可与模板结合使用,在整个资产模型中强制执行标准化的分类方案。

3.4.6 通过极限值配置实现报警标准化

在属性上定义标准报警阈值------最小值、低低限、低限、目标值、高限、高高限、最大值------使同类资产的运行边界表达方式保持一致。在元素模板中定义后,从该模板创建的所有元素会自动继承相同的极限值,确保整个设备群的报警行为一致。

极限值可以设置为固定数值,也可以关联到其他属性(动态极限值),在保持标准结构的同时提供灵活性。

3.4.7 跨元素复制粘贴

当您需要对多个元素应用相同的属性配置,而这些元素又不在某个模板的覆盖范围内时,可以使用复制操作:

  1. 在属性列表中,点击属性行上的 菜单,选择复制
  2. 导航到目标元素。
  3. 在目标元素的属性选项卡中,粘贴该属性。

复制的属性会将其完整配置------数据类型、单位、极限值、描述和数据引用类型------带到新元素,您只需更新数据引用设置,使其指向该元素正确的源列即可。

这是在临时标准化少量元素时,替代正式模板的一种快速、轻量的方式。

关于 TDengine

TDengine 专为物联网IoT平台、工业大数据平台设计。其中,TDengine TSDB 是一款高性能、分布式的时序数据库(Time Series Database),同时它还带有内建的缓存、流式计算、数据订阅等系统功能;TDengine IDMP 是一款AI原生工业数据管理平台,它通过树状层次结构建立数据目录,对数据进行标准化、情景化,并通过 AI 提供实时分析、可视化、事件管理与报警等功能。

相关推荐
Java后端的Ai之路33 分钟前
Text-to-SQL与智能问数完全指南:基本概念、核心原理、Python实战教学及企业项目落地
数据库·python·sql·text-to-sql·智能问数
Elastic 中国社区官方博客33 分钟前
Prometheus Remote Write 在 Elasticsearch 中的摄取原理
大数据·数据库·elasticsearch·搜索引擎·信息可视化·全文检索·prometheus
2601_9498166836 分钟前
Spring boot启动原理及相关组件
数据库·spring boot·后端
2301_7826591837 分钟前
如何使用Navicat连接云端MariaDB_白名单与实例配置
jvm·数据库·python
2301_803875617 小时前
PHP 中处理会话数组时的类型错误解析与修复指南
jvm·数据库·python
m0_743623927 小时前
c++如何批量修改文件后缀名_std--filesystem--replace_extension【实战】
jvm·数据库·python
张忠琳7 小时前
【vllm】vLLM v1 KV Offload — 模块超深度逐行分析之一(七)
ai·架构·vllm
j_xxx404_7 小时前
大语言模型 (LLM) 零基础入门:核心原理、训练机制与能力全解
人工智能·ai·transformer
汪汪8888888 小时前
测试智能平台落地实践:五大核心能力破解传统测试痛点
ai
2501_914245938 小时前
CSS如何处理CSS变量作用域冲突_利用特定类名重写变量值
jvm·数据库·python