Apache kafka Kafka JDBC源连接器每秒只能获得1000条记录。如何提高记录提取率

Apache kafka Kafka JDBC源连接器每秒只能获得1000条记录。如何提高记录提取率,apache-kafka,apache-kafka-connect,confluent-platform,Apache Kafka,Apache Kafka Connect,Confluent Platform,我正在使用kafka connect与JDBC源代码连接器。连接器工作正常,但我每秒只能收到1000条消息。从OracleDB转到主题。我尝试了大多数配置设置,但没有成功。我尝试了独立模式和分布式模式。请。帮帮忙。下面是我的JDBC源连接器配置: curl -X POST http://localhost:8083/connectors -H "Content-Type: application/json" -d '{"name": "ORA_SRC_DEVDB", "config": {

我正在使用kafka connect与JDBC源代码连接器。连接器工作正常,但我每秒只能收到1000条消息。从OracleDB转到主题。我尝试了大多数配置设置,但没有成功。我尝试了独立模式和分布式模式。请。帮帮忙。下面是我的JDBC源连接器配置:

curl -X POST http://localhost:8083/connectors -H "Content-Type: application/json" -d '{"name": "ORA_SRC_DEVDB",
"config": {                "connector.class": "io.confluent.connect.jdbc.JdbcSourceConnector",                 
"connection.url": "jdbc:oracle:thin:@xxxxxxx/DBDEV",                 
"connection.user": "xxxxxx",                 
"connection.password": "xxxxxx",                 
"query": "select * from A.LOG_AUDIT",               
"topic.prefix": "Topic_POC", 
"tasks.max": "1",  
"poll.interval.ms": "5000", 
"batch.max.rows": "1000", 
"table.poll.interval.ms": "60000",  
"mode": "timestamp",    
"timestamp.column.name": "MODIFIED_DATEnTIME"                 }        
 }'

还有目标主题“Topic_POC”,由3个分区和3个副本创建

轮询.interval.ms:在每个表中轮询新数据的频率(默认值5000)

批处理。最大行数:单个批处理中要包含的最大行数(默认为100)

在您的情况下,每5秒您将轮询数据库中的最大1000条记录。尝试减少poll.interval.ms并增加batch.max.rows可以提高提取率

不仅如此,以下因素也会影响您的回迁率

  • 将数据传入数据库的速率也取决于
  • 从DB到JDBC连接器再到Kafka的I/O速率
  • 如果时间列上有适当的索引,则DB表性能
  • 毕竟它使用JDBC从数据库中获取数据,这意味着您在单个JDBC应用程序中所面临的一切

  • 根据我的经验,JDBC连接器是相当快的批处理。最大行数是1000,
    table.poll.interval.ms
    是60000。到目前为止,您尝试过改变什么?您的问题是“1000”限制吗?您的“问题”并没有明确说明,但我们可以假设您希望处理比当前更多的消息?好奇-您是否设计了一种能够成功轮询超过1000次/秒的配置?感谢您的快速响应,是的,我希望从Oracle DB获得更高的获取率。目前我只获得1000次/秒。