CalculateRecordStats Processor
描述
计算记录集中的记录数,还可以选择计算每个类别的元素数,其中类别由用户定义的属性定义。
标签
属性
| 名称 | 默认值 | 可选值 | 描述 |
|---|---|---|---|
| Record Reader | | 控制器服务 API:RecordReaderFactorycn.org.acal.lynxus-lynxus-standard-services-api-nar-2.11.8 | 用于读取记录的Record Reader。 |
| Record Stats Limit | 10 | 将每个记录路径返回的单独统计数据的数量限制为前 N 个结果。 支持表达式语言:是(使用 FlowFile 属性与环境/系统变量求值) |
动态属性
| 名称 | 值 | 描述 |
|---|---|---|
| 类别的名称。例如 sport | 指向类别值的 RecordPath。例如 /sport | 指定应计数的类别。例如,如果属性名为 'sport',值为 '/sport',处理器将计算 /sport 字段值为 'soccer' 的记录数、值为 'baseball' 的记录数等。这些计数将作为名为 recordStats.sport.soccer、recordStats.sport.baseball 的属性添加。 |
关系 (Relationships)
| 名称 | 描述 | 自动终止 |
|---|---|---|
failure | 如果由于任何原因无法处理 FlowFile,则会将其路由到此关系。 | 否 |
success | 所有成功处理的 FlowFile 都会路由到此关系。 | 否 |
写入的 FlowFile 属性
| 名称 | 描述 |
|---|---|
record.count | FlowFile 中记录集中的记录计数。 |
recordStats.<User Defined Property Name>.count | 包含用户定义属性值的记录计数。 |
recordStats.<User Defined Property Name>.<value>.count | 为用户定义属性发现的每个值将具有自己的计数属性。前 N 个值计数的总数 |
状态管理
该组件不存储状态。
受限 (Restricted)
该组件不受限。
输入要求
该组件要求有传入连接。
详细说明
CalculateRecordStats
此 Processor 接收一个 Record 集合,统计总记录数以及由动态属性定义的各类计数(每个动态属性将一个属性名 映射到一个 Record Path)。Record Path 计数提供两个层次:
- 成功完成 Record Path 求值的所有记录的总数。
- 按匹配 Record Path 操作的各个唯一值细分的计数。
考虑如下 Record 结构:
{
"sport": "Soccer",
"name": "John Smith"
}
此处一个合法的映射是 sport => /sport。
对于内容为上述 JSON 的 Record 集合,若共有 5 条记录,其中 soccer 出现 3 次、football 出现 2 次, 则会设置以下 Attribute:
- record_count: 5
- sport: 5
- sport.Soccer: 3
- sport.Football: 2