数据源和数据集


可视化页面展示的核心是数据,数据可以有不同来源,例如来自一份文件,或一个动态数据库。只有数据源与数字孪生可视化(Digital Twin Visualization,以下简称 DTV)之间建立了连接,可视化页面中才能展示和分析这些数据。

数据源


数据源是指可视化页面数据的来源。它可以是各种不同的数据集合,如数据库、API、文件等。

外部和内置数据源


在 DTV 中,你可以导入文件作为数据源,或手动连接数据库和 API 作为数据源,这些统称为 外部数据源。此外,DTV 内置了多个常用的 EnOS 数据源,可直接使用,叫做 内置数据源


../_images/data_source.png


DTV 支持的数据源类型如下:

数据源类型 外部/内置 描述
Static Data 外部 导入的 CSV 文件中的数据。
Data Federation 外部 接入 EnOS 数据联邦 的各类数据系统的数据。
Swagger 外部 通过 Swagger API 调用的数据。
MySql 外部 外部 MySQL 数据库中的数据。
Rest API 外部 通过 Rest API 调用的数据。
TSDB 内置 存储在 EnOS 时序数据库 中的数据。
Common Data Service 内置 通过 EnOS 通用数据服务 API 调用的数据。
Metric Management 内置 通过 EnOS 指标管理 API 调用的数据。

数据源的数据结构


数据可视化需要清晰的数据结构。只有通过结构化的数据,才能在页面中准确展示、分析、关联和过滤。数据源的数据结构可分为两类:

  • 默认结构:数据库存储数据,或 API 调用数据时,可能对数据进行了默认结构化处理。例如 MySQL 数据库中的数据默认以 的形式存储,TSDB 存储的数据默认按 模型 分类。
  • 自定义结构:如果数据源并未对数据进行结构化处理,或默认结构无法满足业务需求,可通过创建 数据集 ,进一步分类和整理数据。

在配置 DTV 可视化页面时,可以选择使用默认结构或数据集。


../_images/data_category.png


下表介绍了 DTV 支持的数据源与默认数据结构:

数据源类型 数据源名称 默认结构 描述
Static Data 自定义 无默认结构,必须创建数据集。
Data Federation 自定义 无默认结构,必须创建数据集。
Swagger 自定义 类别 Swagger API 获取的数据类别,例如:单行数据、时序数据、API 返回结果数据、散点图数据、标注数据。
MySql 自定义 MySQL 数据库表。
Rest API 自定义 类别 Rest API 获取的数据类别,例如:资产树结构、设备类型信息、测点组信息等。
TSDB LatestData 模型 EnOS 模型关联资产的实时数据。
TSDB Current Day Electric Power 模型 EnOS 模型关联资产的当日电量数据,范围为本地时间当天 0 点至当前时间的总和。
TSDB Electric Power 模型 EnOS 模型关联资产在一段时间内的电量数据,支持自定义开始时间和结束时间。
TSDB DI Data 模型 EnOS 模型关联资产在一段时间内的状态变化(DI)数据,支持自定义开始时间和结束时间。
TSDB AI Raw 模型 EnOS 模型关联资产的测点在一段时间内的 AI 原始数据,支持自定义开始时间和结束时间。
TSDB AI Aggregation 模型 EnOS 模型关联资产的测点在一段时间内的 AI 分钟级归一化数据,即仅保存 AI 原始数据中每一分钟的最后一条数据。支持自定义开始时间和结束时间。
TSDB Generic 模型 EnOS 模型关联资产的测点在一段时间内通用类型的数据。支持自定义开始时间和结束时间。
TSDB RAW DATA 模型 EnOS 模型关联资产的测点在一段时间内的历史数据,包括 AI 原始数据、AI分钟级归一化数据、DI 数据、PI 数据和通用数据类型)。支持自定义开始时间和结束时间。
Common Data Service Realtime 模型 EnOS 模型关联资产的测点实时数据。支持自定义资产 ID、数据维度、聚合粒度和查询类型等。
Common Data Service Timeseries 模型 EnOS 模型关联资产的测点在一段时间内的时序数据。支持自定义资产 ID、数据维度、聚合方式、聚合粒度、开始时间和结束时间等。
Common Data Service Topology 模型 EnOS 模型关联资产的层级结构(拓扑)信息。支持自定义拓扑 ID、数据维度、聚合粒度等。
Common Data Service Record 资产的事实数据,例如告警、控制请求、服务申请、工单等。支持自定义起始数据序号和数据量。
Common Data Service Alarm 告警 当前 OU 的告警数据。
Metric Management Metric 维度表 EnOS 指标管理中的指标数据。
Metric Management Fact Table EnOS 指标管理中的事实表数据。
Metric Management Dimension 维度表 EnOS 指标管理中的维度表数据。

数据集


数据集是数据源中数据的子集,通过创建数据集,可对数据进行分类和整理,满足不同场景的可视化需求。

  • 当数据源中的数据无默认结构时,必须创建数据集,定义数据的范围和结构。

    • 对于 Static Data 数据源,只有通过数据集,才能导入静态 CSV 文件,作为数据源的数据。此时数据源等于数据集之和。

      ../_images/static_dataset.png
    • 对于 Data Federation 数据源,由于数据的来源复杂多样,没有统一的结构,需要在数据集中自定义 SQL 查询语句,以指定数据的范围和结构。

      ../_images/federation_dataset.png
  • 当数据源中的默认结构化数据无法满足你的需求时,可以创建数据集,自定义数据的范围、请求参数和返回结构。例如下图展示了一个以模型作为默认结构的数据源,在配置可视化页面时,可为页面组件选择任一模型或数据集作为数据范围。

    ../_images/dataset.png
    :width: 400px
    

请求参数


请求参数是页面的组件在请求数据时向数据源发送的参数。创建数据集后,需要为数据集定义请求参数。当为仪表盘组件选择该数据集后,可为组件配置已选的请求参数的值。

../_images/request_param.png


按照参数的来源,请求参数可分为:

  • 原始参数:数据源中自带的请求参数,可直接选择和使用,例如参数 1 和 2。

  • 组合参数:将原始参数的值重新组合而形成的新参数,如参数 5。为组合参数创建值时,可定义组合参数值与原始参数值的关系,例如组合参数值 A = 原始参数值 5 + 原始参数值 7。参与构成组合参数的原始参数将无法直接使用。

    ../_images/combined_param.png

返回结构


返回结构是页面的组件请求数据后,数据源返回的数据结构。返回结构中的参数将影响仪表盘组件中 维度对比度量扩展 等项的数据项选择范围。

../_images/return_struc.png


按照结构的来源,返回结构可分为:

  • 默认结构:数据源中默认的返回结构,默认结构中的字段可分为以下两种:

    • 原始字段:数据源自带的返回字段,可直接选择和使用,例如字段 1 - 4。

    • 计算字段:通过编写 JavaScript 脚本,将原始字段进行求和、平均等简单计算而形成的新字段。例如字段 5 是由字段 1 和字段 2 经过计算得来的。参与构成计算字段的原始字段仍可直接选择和使用。

      ../_images/calculated_field.png
  • 自定义结构:从原始字段中选择字段或创建新字段作为参数,通过编写 JavaScript 脚本将参数重新结构化,形成自定义结构。