带有MSSQL的Kafka JDBC Connector仅传输100行

问题描述 投票:0回答:1

我使用标准的Confluent JDBC连接器和Microsoft的JDBC驱动程序连接到Microsoft SQL Server数据库。对于一个特定的表,无论我设置我的mode=timestamp并给它一个时间戳列,或者我只是将它设置为mode=bulk,我只得到100个结果。它永远不会流过这个。以下是我的Connect日志的结尾不断吐出的内容:

[2018-09-19 12:51:51,393] INFO WorkerSourceTask{id=MES-0} Source task finished initialization and start (org.apache.kafka.connect.runtime.WorkerSourceTask:199)
[2018-09-19 12:51:51,412] INFO After filtering the tables are: "MES2ERP"."dbo"."BatchDetails" (io.confluent.connect.jdbc.source.TableMonitorThread:175)
[2018-09-19 12:51:51,412] INFO Finished starting connectors and tasks (org.apache.kafka.connect.runtime.distributed.DistributedHerder:868)
[2018-09-19 12:51:51,475] INFO Cluster ID: GMY7vibUSHGp5xRekGDEwg (org.apache.kafka.clients.Metadata:285)
[2018-09-19 12:52:51,069] INFO WorkerSourceTask{id=MES-0} Committing offsets (org.apache.kafka.connect.runtime.WorkerSourceTask:397)
[2018-09-19 12:52:51,070] INFO WorkerSourceTask{id=MES-0} flushing 0 outstanding messages for offset commit (org.apache.kafka.connect.runtime.WorkerSourceTask:414)
[2018-09-19 12:52:51,077] INFO WorkerSourceTask{id=MES-0} Finished commitOffsets successfully in 7 ms (org.apache.kafka.connect.runtime.WorkerSourceTask:496)
[2018-09-19 12:53:51,082] INFO WorkerSourceTask{id=MES-0} Committing offsets (org.apache.kafka.connect.runtime.WorkerSourceTask:397)
[2018-09-19 12:53:51,082] INFO WorkerSourceTask{id=MES-0} flushing 0 outstanding messages for offset commit (org.apache.kafka.connect.runtime.WorkerSourceTask:414)

我意识到有batch.max.rows并且默认值是100,但是使用mode=timestamp,我应该得到表中的所有行流式传输,而不是在100之后停止。我希望bulk最终也会流式传输所有内容,或者至少重复相同的100每个table.poll.interval.ms ,但它没有...它只是停止。知道发生了什么事吗?

哦,我的桌子上有几十万行。

这是我的连接器配置

name=JSON_OCN_MES-BatchDetails
connector.class=io.confluent.connect.jdbc.JdbcSourceConnector
key.converter.schemas.enable=false
key.converter=org.apache.kafka.connect.json.JsonConverter
value.converter.schemas.enable=false
value.converter=org.apache.kafka.connect.json.JsonConverter
connection.url=jdbc:sqlserver://####;databaseName=####;user=####;password=####;
table.whitelist=BatchDetails
mode=bulk
validate.non.null=false
topic.prefix=JSON_OCN_MES-
sql-server jdbc apache-kafka connect
1个回答
0
投票

您可以尝试更改连接器中的默认(100)batch.max.rows设置

"batch.max.rows": "1234",
© www.soinside.com 2019 - 2024. All rights reserved.