【发布时间】:2020-03-17 18:36:30
【问题描述】:
我正在尝试使用 Nifi 使用来自 Kafka 的 Avro 记录。我有 3 个来自 Amazon Lambda 的主题和 2 个 Spark Streaming 作业,所有这些作业都使用 HortonWorks Schema Registry 来获取 Avro 模式。
我尝试使用 ConsumeKafkaRecord_0_10 和 ConsumeKafkaRecord_2_0 并得到相同的错误:
我尝试使用 AvroReader 在内部使用纯文本模式,以确保正在使用的模式,并得到了同样的错误。 当我使用带有 Horton Schema Registry 参数的 AvroReader 时,我收到此错误:
这很有意义,因为它将记录的第一个字节作为模式的版本参数,而第一个字节是 3。但这并不能解释为什么我在将模式放在普通模式时会得到 ArrayIndexOutOfBound文本。
最后我可以使用 Spark Streaming 和 Schema Registry 很好地使用这些主题。在使用 Kafka 时,没有人在 NiFi 和 AvroReader 之间遇到过这样的问题吗?
堆栈:Horton Works HDP 3.4.1 // Nifi 1.9.0 // Spark 2.3 // Schema Registry 0.7
【问题讨论】:
-
是的,使用这个处理器我仍然需要稍后反序列化 avro 消息并得到相同的错误。我认为这与 Nifi 正在使用的 Avro Serializer/Deserializer 有关
标签: apache-spark apache-kafka apache-nifi avro hortonworks-data-platform