我正在运行一个CDC管道(数据流),源数据库为PostgreSQL(Debezium Source Connector)和目标数据库也是PostgreSQL,带有confluent JDBC Sink Connector(10.6.4)从Kafka阅读数据。我遇到了大约40条消息的持续延迟。发布速率为每秒5条消息。我还使用了另一个JDBC Sink Connector运行到不同的PostgreSQL数据库,但滞后大约是10条消息。
即使我尝试修改以下属性,延迟仍然没有减少:
max.poll.records=5000
max.poll.interval.ms=300000
fetch.min.bytes=100000
fetch.max.wait.ms=500
fetch.min.bytes=100000
consumer.override.auto.commit.interval.ms=100
consumer.override.offset.flush.interval.ms=200
batch.size=4000
字符串
如何减少延迟,使管道在真实的时间或接近真实的时间内工作?
1条答案
按热度按时间brgchamk1#
该问题很可能是因为JDBC接收器连接器在接收到要处理的
SinkRecord
集合时不主动执行任何批处理操作。这是一个正在积极工作的增强功能,我们计划在Debezium 2.5.0.Final中引入批处理支持,预计将于12月发布。
如果您想跟踪此工作的进度,请参阅DBZ-6317