【发布时间】:2019-08-16 21:33:52
【问题描述】:
我正在向 NiFi JoltTransformJSON 发送一些记录,例如:
{"uid":"x1","timestamp_ms":1419717816375}
{"uid":"x2","timestamp_ms":1419717816376}
...
它们是通过 ComsumeKafkaRecord 来的,它的 RecordWriter 是 JsonRecordSetWriter,配置了“每个对象一行”。我通过数据出处验证了,当我将 5 条记录发送到 Kafka 时,有 5 条记录会从中产生。
Shift 变换的 Jolt 规范是
{
"*": "&0",
"timestamp_ms": "timestamp"
}
所以我只想重命名一个字段。我在“高级”部分验证了此规范按要求更改了我的 json。
但是当我启动所有组件并发送 5 条消息时,我只从 JoltTransformJson 获得第一条 - 已通过数据来源验证。
{"uid":"x1","timestamp":1419717816375}
这里有什么问题?
更新:原来我必须使用 JoltTransformRecord,然后它按我的预期进行,即 5 条消息输入,5 条消息输出。
但我仍然不明白是什么让 JoltTransformJson 表现得那样?
【问题讨论】:
标签: json apache-nifi jolt