Flink CDC通过打印sourceRecord发现确实没有收到丢失的数据,有知道什么情况吗?

Flink CDC通过打印sourceRecord发现确实没有收到丢失的数据,有大佬知道什么情况吗?

展开
收起
真的很搞笑 2024-01-01 09:01:18 105 分享 版权
3 条回答
写回答
取消 提交回答
  • 建议从 archive log 是否是每台机器都会同步update 的方向去考虑 ,我没用过oracle ,你可以检查下 ,如果不是你配置的节点执行的CURD操作,相关日志是否会同步到你配置的节点,具体的命令需要你自己去找资料 ,此回答整理自钉群“Flink CDC 社区”

    2024-01-02 08:14:57
    赞同 展开评论
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    Flink CDC 通过打印 sourceRecord 发现确实没有收到丢失的数据,可能有以下几种情况:

    1. 数据源没有发生故障或宕机。
    2. Flink CDC 的读取和处理逻辑没有问题。
    3. Flink CDC 的配置正确,例如检查 Kafka 消费者的配置是否正确。
    4. 数据源和 Flink CDC 之间的网络连接正常,没有阻塞或延迟。
    5. 数据源和 Flink CDC 之间的数据同步策略是正确的,例如使用 exactly-once 语义。

    如果以上情况都没有问题,但仍然无法解决丢失数据的问题,可以尝试以下方法:

    1. 增加 Flink CDC 的重试次数,以便在遇到错误时有更多的机会重新处理数据。
    2. 检查 Flink CDC 的日志,看是否有其他错误信息或警告。
    3. 调整 Flink CDC 的配置参数,例如增加批处理大小或调整并行度。
    4. 如果使用的是 Kafka 作为数据源,可以检查 Kafka 集群的状态和性能,确保其正常运行且没有瓶颈。
    2024-01-01 12:44:51
    赞同 展开评论
  • Flink CDC 通过打印 sourceRecord 发现确实没有收到丢失的数据,这可能是因为 FlinkFlink CDC 通过打印 sourceRecord 发现确实没有收到丢失的数据,这可能是因为 Flink CDC 在处理数据时已经确保了数据的完整性。Flink CDC 会按照一定的时间间隔去拉取数据源的 binlog,然后根据 binlog 中记录的事务信息将数据源中的数据变更转化为 Flink 中的 ChangeLogStream。在这个过程中,Flink CDC 会保证每个事务中的所有数据变更都会被正确地处理,从而避免了数据丢失的情况。

    当然,如果出现了数据丢失的情况,也有可能是由于其他原因导致的。例如,数据源中的某个表被误删了或者被重命名了,导致 Flink CDC 无法正确地读取该表的数据变更。此时需要检查数据源的状态以及 Flink CDC 的配置是否正确。

    2024-01-01 10:15:52
    赞同 展开评论

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

还有其他疑问?
咨询AI助理