TiCDC 可以通过一个start_ts启动,那这个 start_ts 非常早,会有什么问题吗?

接着 @h5n1 的回答,

这个start_ts不能超过gc_safe_point

TiKV 没有传统意义上的 “binlog”,TiCDC 是通过读取 TiKV 中保存的数据的历史版本来获取历史数据的。
当 start ts 早于 gc_safe_point 时,TiCDC 无法读到早于 gc_safe_point 的版本,这会导致同步任务创建失败。

如果 start ts 很早,可能会导致

  • TiCDC 在读取大量历史版本时,可能提高 TiKV 节点的 IO 压力,间接影响业务。
  • TiCDC 读取历史版本后,它会将数据缓存在本地磁盘上,如果数据量大于 TiCDC 磁盘容量,会导致同步中断。