我有一个jdbcKafka连接的属性文件。在哪里 topic.prefix=test-mysql-jdbc-
据我所知,当我们运行独立连接器- $ /usr/bin/connect-standalone /etc/schema-registry/connect-avro-standalone.properties/etc/kafka-connect-jdbc/source-quickstart-mysql.properties
将创建一个名为 test-mysql-jdbc-
现在我创建消费者 $ /usr/bin/kafka-avro-console-consumer -–topic test-mysql-jdbc-students --zookeeper localhost:2181 --from-beginning
我成功地获得了json数据。。
现在我所做的是我删除了kafka日志(删除了所有的主题),但是当我重复相同的过程时,创建了同名的主题,但是我没有在consumer中获得任何数据。如果我改变主意 topic.prefix
新的东西。我又得到数据了。请解释一下
2条答案
按热度按时间e0bqpujr1#
我成功地获得了json数据
实际上,您得到的是反序列化的avro(显示为json)
我删除了Kafka日志(删除了所有的主题)
听起来您没有删除任何zookeeper数据,因此主题元数据仍然存在。
watbbzwu2#
我想可能有两种情况。
删除kafka日志时,删除的是控制日志和服务器日志,而不是数据日志。
另外,删除Kafka日志并不能真正删除Kafka主题。你必须使用
./kafka-topics.sh --zookeeper <IP>:<port> --delete --topic <topic_name>
随着delete.topic.enable=true
在server.properties中。使用验证
--describe
选项。您可能会看到分配给-1的分区引线或标记为删除的主题。错误的主题元数据将不允许正确的偏移管理,并阻碍主题的使用。