请问tidb集群通过cdc同步到kafka如何增加速度

为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:
【 TiDB 使用环境】
【概述】场景+问题概述
tidb5.1.4版本同步到kafka,速度峰值从监控看是4000左右,但是延迟在5分钟以上,查了官网并没有看到并发参数配置的选项,但是同步到mysql是有参数的。请问,如何增加同步速度?
谢谢

【背景】做过哪些操作
【现象】业务和数据库现象
【业务影响】
【TiDB 版本】
【附件】

  1. TiUP Cluster Display 信息

  2. TiUP Cluster Edit Config 信息

  3. TiDB- Overview 监控

  • 对应模块日志(包含问题前后1小时日志)

changefeed的启动命名和配置发出来看下

cdc cli changefeed --config=/data/cdc_task_conf/xxx.toml --changefeed-id=xxx create --pd=http://192.168.1.20:2379 --sink-uri=“kafka://192.168.1.60:9092/topic_name?partition-num=1&max-message-bytes=8388608&replication-factor=3&kafka-client-id=aced7e3319b64774800c2920fc840c3b”

/data/cdc_task_conf/xxx.tom
这个发出来看看

试试调整相关参数 partition-num,max-message-bytes,max-batch-size,再不行就拆成多个任务

1 个赞

case-sensitive = true

[filter]
ignore-txn-start-ts = []
rules = [‘dbname.tbname’]

[mounter]
worker-num = 2

[sink]

对于 MQ 类的 Sink,可以通过 dispatchers 配置 event 分发器

分发器支持 default, ts, rowid, table 四种

protocol = “default”

[cyclic-replication]
enable = false

# 对于 MQ 类的 Sink,可以通过 dispatchers 配置 event 分发器
# 支持 default、ts、rowid、table 四种分发器,分发规则如下:
# - default:有多个唯一索引(包括主键)时按照 table 模式分发;只有一个唯一索引(或主键)按照 rowid 模式分发;如果开启了 old value 特性,按照 table 分发
# - ts:以行变更的 commitTs 做 Hash 计算并进行 event 分发
# - index-value:以表的主键或者唯一索引的值做 Hash 计算并进行 event 分发
# - table:以表的 schema 名和 table 名做 Hash 计算并进行 event 分发

根据以上的描述,default 是采用 table 模式进行分发的,如果想实现 partition 均衡能力,就需要调整这个协议策略
如果对数据无顺序的要求,可以改为 ts
如果有顺序要求,则需要根据自己的场景进行判断了…

以上希望对你有所帮助!

此话题已在最后回复的 1 分钟后被自动关闭。不再允许新回复。