Batch Merger

支持按照配置为每个数据(Record)生成分组标签(tag),并从本批数据中将相同标签的数据合并到同一个Record 中输出,其主要功能包括:

  • 提供2种生成标签的规则:基于字段的值(field.value)或基于EL表达式来生成标签。

配置详情

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

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 Point

Yes

数据输入点,格式为:{模型标识}::{测点标识}

Output Point

Yes

数据输出点,格式为:{模型标识}::{测点标识}

Group Key

名称

是否必须

描述

Key Generate Method

Yes

选择生成分组标签(tag)的方式,可选 By Record Field Value 或 By EL Expression

Fields

No

当选择 By Record Field Value 生成分组标签时,选择或输入字段名称

EL Expression

No

当选择 By EL Expression 生成分组标签时,输入生成分组标签的表达式

输出结果

该算子的输出结果包含在 attr 结构体中,各字段的描述如下:

名称

数据类型

描述

crossBatch

Map

具有相同标签的记录集合

输出示例

../../../_images/cross_batch_merger1.png