Cumulant Decomposer*

支持计算当前 Record 以及该 Record 的 attr 字段中的 LastRecord 的 delta 值。该算子为电量计算专用,依赖于 Last Record Appender 算子。与旧数据格式不兼容,即无法按 ModelId::PointId 进行数据过滤

配置详情

该算子的配置包括 GeneralBasic,和 Input/Output 的详细信息,各字段的配置如下:

General

名称 是否必须 描述
Name Yes 算子名称
Description No 算子描述
Stage Library Yes 算子所属的库
Required Fields No 数据必须包含的字段,如果未包含指定字段,则 record 将被过滤掉
Preconditions No 数据必须满足的前提条件,如果不满足指定条件,则 record 将被过滤掉。例如:${record:value('/value') > 0}。有关 EL 语句的使用方法,参考 Expression Language
On Record Error Yes

对错误数据的处理方式,可选:

  • Discard:直接丢弃
  • Send to Error:发送至错误中心
  • Stop Pipeline:停止流任务运行

Basic

名称 是否必须 描述
Quality Filter No 根据数据质量过滤处理数据,只有符合质量条件的 record 才会进行此次处理

Input/Output

名称 是否必须 描述
Input Measurement Yes 数据输入点。同一行的输入点和输出点之间的 MeasurementId 必须不同。
Scale Type Yes

设置电能表倍率类型,可选项为:

  • By Model Attribute:关联模型属性
  • By Input:固定值
Scale via attribute No 当选择 By Model Attribute 倍率类型时,输入模型的属性项。数据类型可以为float、double、int,如果运行过程中实例设备数据类型不合规范、为空值、或值不匹配数据类型时,则倍率默认值为1。
Fixed Scale No 当选择 By Input 倍率类型时,输入大于0的数值(double类型)
Slope Type Yes

设置斜率类型,可选项为:

  • By Model Attribute:关联模型属性
  • By Input:固定值
Min Slope No

设置斜率范围的下限值:

  • 当选择 By Model Attribute 斜率类型时,输入模型属性项。默认值为 0。数据类型可以为float、double、int,开闭规则为双闭。如果运行过程中实例设备数据类型不合规范、为空值、或值不匹配数据类型时,则斜率不限制。
  • 当选择 By Input 斜率类型时,下限值必须是大于等于0的数值(double类型),且下限值小于上限值。
Max Slope No

设置斜率范围的上限值:

  • 当选择 By Model Attribute 斜率类型时,选择模型属性项。数据类型可以为float、double、int,开闭规则为双闭。如果运行过程中实例设备数据类型不合规范、为空值、或值不匹配数据类型时,则斜率不限制。
  • 当选择 By Input 斜率类型时,上限值必须是大于等于0的数值(double类型),且下限值小于上限值。
Output Measurement Yes 数据输出点,如果配置内输出点重复将分组之后输出。

输出结果

该算子的配置参数值(如果配置的是固定值,则为配置的倍率、最大/最小斜率;如果配置的是属性值,则为处理该 record 时,设备属性的具体值),计算出的斜率,包含在 attr 结构体中。

输出示例

无 LastRecord

../../../_images/delta_operator_result_111.png

有 LastRecord

../../../_images/delta_operator_result_211.png