【问题标题】:max.poll.records vs batch.max.rows kafka. What is difference between two properties?max.poll.records 与 batch.max.rows 卡夫卡。两个属性有什么区别?
【发布时间】:2020-01-31 06:54:20
【问题描述】:
max.poll.records 与 batch.max.rows 卡夫卡。这两个属性有什么区别?
我正在使用 Kafka Sink Task 从 Kafka 主题中读取记录。 SinkTask 方法中的 put() 是获取所有记录的入口点。目前,当连接器启动时,它将一起获取所有未提交的记录。我希望工作任务一次获取一条记录。怎么做?
我应该将以上哪些属性放入连接器配置文件中?
【问题讨论】:
标签:
jdbc
apache-kafka
apache-kafka-connect
【解决方案1】:
max.poll.records是Kafka Consumer的配置属性:
max.poll.records:单次调用poll()返回的最大记录数。
batch.max.rows是Kafka Jdbc Source Connector的配置属性:
batch.max.rows:轮询新数据时单个批次中包含的最大行数。此设置可用于限制连接器内部缓冲的数据量。
因此,在您的情况下,您不能使用不合适的 batch.max.rows 属性,但您可以使用 consumer 前缀配置batch.max.rows:
consumer.max.poll.records=1