入门指引:多路数据归并处理

本教程能帮助你快速学习如何使用 多路归并模板 进行单设备多测点间的数据运算处理。

前提条件

  • 已被授权流数据处理模块

  • OU已申请流数据处理资源

  • 已接入设备并且设备已经在发送数据

教程目标及数据准备

教程目标

本教程要实现的场景是:将原始采集点 testA_rawtestB_raw 的数据求和,取值结果输出给新点testC

数据准备

  • 模型配置

本教程使用的模型 test_Model 的配置如下:

功能类型

名称

标识符

测点类型

数据类型

测点

testA_raw

testA_raw

AI

DOUBLE

测点

testB_raw

testB_raw

AI

DOUBLE

测点

testC

testC

AI

DOUBLE

  • 存储配置:对testA_rawtestB_rawtestC 点进行存储配置。这三个测点都可以配置为AI原始数据和AI分钟级归一化数据。具体配置方法,请参考 配置TSDB存储

  • 数据接入:请参考 设备连接 来完成 testA_rawtestB_raw 测点的数据的采集。

操作步骤

使用 多路归并模板 对单设备多测点数据进行处理的步骤如下:

  • 创建并配置多路数据归并处理任务

  • 保存并发布任务

  • 启动任务

  • 查看任务任务运行结果

第一步:创建并配置多路数据归并处理任务

  1. 进入控制台,点击 流数据处理 > 流开发 菜单可浏览当前组织所有已创建的流数据处理任务,双击某一任务,可进行详情查看并编辑

  2. 在任务列表上方,点击 + 添加新任务,并选择 多路归并模板

  3. 触发方式设置:选择 按点触发 的数据处理触发方式;选择上一个值作为时序插补策略。

    备注

    按点触发是指当指定测点的数据达到时,按照编写的数据处理逻辑表达式开始一次计算。当计算开始时,如果该时间切片上某一路参与计算的测点的数据未到达,则使用该测点的上一时刻数据参与计算。

  4. 数据处理:点击 新增策略,完成以下数据处理策略配置:

    • 输出点:选择测点 testC 作为承载计算结果的测点。

    • 触发点:如果同一时刻,testA_rawtestB_raw 数据较晚上送,则选择 testA_raw 作为触发计算的测点。当系统检测到 testA_raw 的数据到来时,则触发输出逻辑。

    • 输出逻辑:编写输出点的输出逻辑表达式,点击 校验语法,确保表达式语法正确。此教程中,输出逻辑为:

    ${test_Model::testA_raw}+${test_Model::testB_raw}
    

第二步:保存并发布流数据处理任务

流数据处理任务配置完成后,需要对配置进行保存,保存后可激活发布按钮。点击发布,将任务发布上线。下图为任务配置示例:

../_images/multi_point_strategy.png

第三步:启动流数据处理任务

进入 流数据处理 > 流运维 页面,就能看到已发布的所有流数据处理任务了。找到已经发布的任务,点击启动按钮启动任务。

备注

  • 启动任务之前,需确保组织已分配流数据处理资源。

  • 如有运行中的流数据处理任务,启动新任务前,可暂停一个或多个运行中的任务,然后一并启动需要运行的任务。系统会为启动的任务重新分配计算资源。

第四步:查看任务运行结果

流运维 页面,在 名称 一栏中,点击已启动的流数据处理任务名称,可查看任务运行情况:

  • Summary: 查看任务运行情况总结,比如整体处理记录统计、各个时间段聚合情况。

  • Log: 点击页面右上角 View Logs 图标,可查看任务运行日志。

  • Results: 可通过接口 Get Asset Raw Data by Time Range 来获取输出点testC的数据。调用用Open API的代码示例,请前往 EnOS管理门户 > EnOS API,查看API文档。