Kafka和Confluent新手在这里…
所以我遵循了这个关于将MySQL数据库连接到Kafka流的小教程:https://github.com/confluentinc/demo-scene/tree/master/kafka-to-database。一切正常。
现在,我正试图得到同样的想法下来,但与源是一个python脚本,其中生产者发送随机生成的数据到一个主题,而Kafka连接发送这些变化到PostgreSQL数据库。我正在运行融合独立模式,并成功地将PostgreSQL数据库连接为sink。然而,当我通过python脚本向主题发送消息时,它不会写入PostgreSQL数据库。从生产者发送消息与从流运行数据不同吗?如果是这样,我怎么让它运行呢?
与从流中运行数据不同
不清楚这是什么意思。"Stream">
它不写入PostgreSQL数据库。
查看Connect进程/服务器日志中的错误,而不是数据库。
您需要一个事件的模式来使用JDBC连接器。ksqlDB为您添加了一个模式…你不能发送纯字符串(或者没有schema
和payload
字段的JSON)。
https://www.confluent.io/blog/kafka-connect-deep-dive-converters-serialization-explained/
参见Confluent提供的使用Python和Schema Registry的生成器示例- https://github.com/confluentinc/confluent-kafka-python/tree/master/examples