Apache kafka Kafka JSON控制台生成器

Apache kafka Kafka JSON控制台生成器,apache-kafka,kafka-producer-api,Apache Kafka,Kafka Producer Api,我正在尝试使用卡夫卡的控制台制作工具,Kafka控制台制作工具。默认情况下,它似乎使用字符串序列化程序 是否可以将Kafka控制台生成器设置为使用JSON序列化程序?如果您可以控制输入数据,则没有理由将JSON序列化程序显式设置到控制台生成器上 JSON序列化程序只是字符串序列化程序的扩展;它还接受原始字符串对象并转换为字节。另外,不管怎样,普通字符串都是有效的JSON类型 Kafka只存储字节-它不关心数据的格式,我只想添加一个事实,即StringSerializer是默认的,您可以通过在以下

我正在尝试使用卡夫卡的控制台制作工具,
Kafka控制台制作工具
。默认情况下,它似乎使用字符串序列化程序


是否可以将Kafka控制台生成器设置为使用JSON序列化程序?

如果您可以控制输入数据,则没有理由将JSON序列化程序显式设置到控制台生成器上

JSON序列化程序只是字符串序列化程序的扩展;它还接受原始字符串对象并转换为字节。另外,不管怎样,普通字符串都是有效的JSON类型


Kafka只存储字节-它不关心数据的格式,我只想添加一个事实,即StringSerializer是默认的,您可以通过在以下生产者配置中提供类名来选择所需的任何序列化程序(甚至自定义实现):

key.serializer
value.serializer
key.deserializer
value.deserializer
然后,您的使用者将需要使用适当的反序列化程序,您可以在以下使用者配置中进行设置:

key.serializer
value.serializer
key.deserializer
value.deserializer


编辑:起初我认为序列化程序类有一个默认值,但根据Kafka文档,情况似乎并非如此。它可以根据生成的记录中的键对和值对所使用的数据类型进行设置。在任何情况下,这些都是您需要配置的参数,以便通过所需的序列化器/反序列化器的实现来设置特定类。

如果您确实希望在数据上强制实施架构,则可以使用Confluent
kafka avro console producer