首页 > 解决方案 > Kafka 控制台消费者在 HDP 3 中读取 avro 消息

问题描述

尝试使用来自控制台消费者的 kafka Avro 消息,但不确定如何反序列化消息。

sh /usr/hdp/current/kafka-broker/bin/kafka-console-consumer.sh --bootstrap-server localhost:6667 --topic test --consumer.config /home/user/kafka.consumer.properties --from-beginning --value-deserializer ByteArrayDeserializer

测试主题的模式注册表中的 Avro 模式是:

{
 "type": "record",
 "namespace": "test",
 "name": "TestRecord",
 "fields": [
  {
   "name": "Name",
   "type": "string",
   "default": "null"
  },
  {
   "name": "Age",
   "type": "int",
   "default": -1
  }
 ]
}

使用 HDP 3.1 版本和 Kafka-clients-2.0.0.3.1.0.0-78

有人可以帮我从控制台读取 Avro 消息所需的反序列化器是什么。

标签: apache-kafkakafka-consumer-apiclouderahdp

解决方案


利用kafka-avro-console-consumer

例如

sh /usr/hdp/current/kafka-broker/bin/kafka-avro-console-consumer.sh \
--bootstrap-server localhost:6667 \
--topic test \
--from-beginning \
--property schema.registry.url=http://localhost:8081

推荐阅读