kafka-connect-jdbc连接器在特定的时间间隔后以批量模式连续发送相同的记录。这是我的连接器属性:
name=test-mssql-jdbc-autoincrement
connector.class=io.confluent.connect.jdbc.JdbcSourceConnector
tasks.max=1
connection.url=jdbc:jtds:sqlserver://localhost:1433/TESTDB;user=sa;password=sa12345
query=SELECT * FROM WF_PROCESS
mode=bulk
topic.prefix=TEST-
key.serializer=io.confluent.kafka.serializers.KafkaAvroSerializer
value.serializer=io.confluent.kafka.serializers.KafkaAvroSerializer
table.blacklist=trace_xe_action_map,trace_xe_event_map
答案 0 :(得分:0)
您必须配置incremental query modes。基本上,Kafka连接器需要一种方法来确定每次触发查询时如何获取增量数据。
答案 1 :(得分:0)
批量模式应该在每次调用poll方法时发送所有记录。使用批量模式的主要用途是定期备份数据库表。您可以通过调整poll.interval.ms来配置备份频率。
为避免这种情况,请勿使用批量模式。而是使用“timestamp + incrementing”或“timestamp”或“递增模式”。有关详细信息,请参阅this链接。