Flink CDC中2.4.0的sqlserver cdc为什么要等3分钟多才开始进行同步?在2.3[阿里云实时计算 Flink版]

Flink CDC中2.4.0的sqlserver cdc为什么要等3分钟多才开始进行同步?在2.3.0的时候不存在这个问题initiat模式 模式,然后现在也没有显示Bytes Received的数据了

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
=====这是一个广告位,招租中,联系qq 78315851====
2 条回复 A 作者 M 管理员
  1. 在 Flink CDC 2.4.0 的 SQL Server CDC 中,同步开始之前需要等待 3 分钟多的时间。然而,在 2.3.0 版本中并不存在这个问题。

    这个延迟可能与你使用的 CDC 模式有关。Flink CDC 提供两种 CDC 模式:latest 和 initiat。根据你提供的信息,具体是哪种模式我无法确定,但这些模式对于数据同步的启动时间会有不同的影响。

    – latest 模式:监控 SQL Server 日志,并且会持续不断地将最新的更改数据进行同步。在此模式下,Flink CDC 需要等待一段时间来收集日志中的更改数据,然后才能开始同步。这可能是导致你遇到的延迟的原因之一。

    – initiat 模式:通过定期查询 SQL Server 的 CDC 表来主动发起同步。在此模式下,Flink CDC 不需要等待日志的更改数据,而是定期查询 CDC 表以获取更新并进行同步。这种模式通常可以减少同步的延迟。

    如果你正在使用 latest 模式,并且发现同步开始之前需要等待较长的时间,你可以尝试切换到 initiat 模式来减少同步的延迟。

    另外,关于 “Bytes Received” 数据不再显示的问题,可能是由于配置或日志的变化导致的。建议查阅 Flink CDC 的官方文档、GitHub 仓库或社区论坛,寻找关于该版本的更新和相关讨论,以了解此问题的具体原因和解决方法。

    需要注意的是,由于没有更多的上下文信息和详细的配置,无法给出确切的解决方案。建议根据实际情况检查上述可能的原因,并尝试解决问题。

  2. Flink CDC 2.4.0 中的 SQL Server CDC 支持两种同步模式:initial 与 incremental。其中,initial 模式用于首次启动 CDC 同步任务,会同步所有历史数据,并在同步完成后进入 incremental 模式,只同步增量数据。而 incremental 模式则只会同步增量数据。
    在 initial 模式下,Flink CDC 会等待一段时间后再开始同步数据。这是因为 SQL Server CDC 本身的限制,需要等待一段时间(通常为 3 分钟)以确保 CDC 日志中的数据已经完全生成。因此,Flink CDC 在 initial 模式下会等待这段时间,以确保 CDC 日志中的所有数据都已经生成,然后再开始同步数据。
    对于 Bytes Received 的问题,Flink CDC 2.4.0 中的 SQL Server CDC 已经不再使用该指标。在 Flink CDC 2.4.0 中,可以通过 Flink Web UI 或者 Flink SQL CLI 中的任务监控页面来查看 CDC 任务的运行状态,包括已经同步的数据量、同步速率、同步延迟等指标。

  3. 你的是latest模式还是initiat模式,此回答整理自钉群“Flink CDC 社区”