这是我的个人研究 目标:将数据从表流式传输到Kafka主题,然后从Kafka主题中使用该数据以写入文件。
使用的API:我目前正在尝试使用Kafka Connectors,JdbcSourceConnector类是精确的。
约束:使用Confluent Java API而不是通过CLI或执行提供的shell脚本来执行此操作。
我做了什么:创建一个JdbcSourceConnector.java类的实例,并通过提供Properties对象作为参数来调用此类的start(Properties)方法。此属性对象具有数据库连接属性,表白名单属性,主题前缀等。
问题:
感谢任何帮助
答案 0 :(得分:0)
为什么要尝试直接使用Java API? JDBC Source连接器和FileStream Sink连接器实现了Kafka Connect API并完全按照您的要求执行操作。 this article here中的示例说明了这一点。
如果要转换数据,则可以使用Kafka Streams或KSQL来使用要写入的主题并应用所需的转换。如果您想在Kafka Connect工作流程本身中进行简单的转换,也可以查看Single Message Transform。
所以你有:
[database] --- Kafka Connect
JDBC source --> [ Kafka topic A ]
|
|
Kafka Streams
or KSQL
|
|
V
[ Kafka topic B] -- Kafka Connect --> [ /tmp/foo ]
File Sink