cdc过滤表

【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】
【复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【附件:截图/日志/监控】
昨日升级之后,将drainer的相关组件调整为了cdc ,这个集群有比较重的大批量写入操作,truncate 之后 ,批量 load 数据,造成 cdc 的 checkpoint 延迟。下游并不需要这几张重写入操作的表,想加一下过滤条件,能否在 conf/cdc.toml 文件中只加入

[filter]
rule =[‘xx.xx’]

部分,其他仍然使用默认参数进行 cdc 同步。

另外,cdc 的任务能否使用 tiup 进行管理,类似 drainer
syncer.replicate-do-table:
- db-name: xxx
tbl-name: xxx
的方式,这样可以比较简单的知道这个集群对 drainer 进行了特殊需求的过滤操作。

在启动cdc同步任务的时候可以指定自定义的配置文件,不一定需要往conf/cdc.toml里加吧
自定义配置文件内容可以参考官方文档TiCDC Changefeed 命令行参数和配置参数 | PingCAP 文档中心
编写自己的过滤规则

过滤规则同样可以参考官方规则,是可以满足你筛除其他表的需求 Changefeed 日志过滤器 | PingCAP 文档中心

cdc的同步任务好像没法通过tiup管理。tiup只能查看cdc集群的状态

rule=[‘.’,‘!db1.tb1’,‘!db2.tb2’]

图片

tiup 的管理范畴是节点的配置,比如可以用 tiup 来管理 cdc 节点的配置。而 cdc 的任务单位是 changefeed,一个 changefeed 就是一个同步任务,不同同步任务有不同的配置。所以用 tiup 来管理 changefeed 配置不太合适,可以用 cdc 的 client 来设置 changefeed 的配置。

1 个赞

tiup目前的定位还是软件包管理器、集群管理器,不然给每个组件都适配独有的使用方式太麻烦了。对于各种组件的配置,tiup应该是“不知道”的才好。至于说类似drainer的方式,这个其实是问cdc能不能在配置文件中加入类似选项的问题。如果让tiup做中间的兼容层,来适配这一点,很不合适。

你是想问 tiup cdc xxx 这样用?可以的,本来就推荐这样用吧