开发者社区 问答 正文

各位老师,麻烦问下哈:使用oblogproxy 和 flink cdc同步ob的数据,在flink?

各位老师,麻烦问下哈:使用oblogproxy 和 flink cdc 同步ob的数据,在flink sql client 中会出现重复数据,重复数据除了主键,其他字段为NULL,请问这是什么原因呢? 2361fe413c8868a2def6229e30388003.jpg

展开
收起
真的很搞笑 2023-06-11 19:29:00 113 分享 版权
来自: OceanBase
1 条回答
写回答
取消 提交回答
  • 出现重复数据是一个比较常见的情况,可以从以下几个方面进行排查和解决:

    1. 数据库表的设计问题:重复数据的出现可能是因为数据库表的设计不合理,存在冗余字段或没有设计好唯一性约束和主键等问题。可以仔细检查表结构和约束定义,优化数据库表的设计,以减少重复数据出现的可能性。

    2. OBlogProxy 和 Flink CDC 的配置问题:可以检查 OBlogProxy 和 Flink CDC 的配置,确保配置参数的正确性和一致性。可以查看是否有多个 Flink Task 消费了同一个 partition 中的数据,导致数据重复消费的问题。

    3. Flink SQL 查询语句的问题:重复数据的出现也可能是因为 Flink SQL 查询语句的问题,比如存在笛卡尔积等问题。可以检查 Flink SQL 查询语句的正确性和逻辑是否合理,优化查询计划。

    4. 提高数据一致性:可以考虑使用事务或乐观锁等手段,提高数据一致性和避免重复数据的出现。

    针对重复数据中,主键正确而其他字段为 NULL 这种情况,可能是因为 Flink CDC 从 OLogProxy 中读取的数据有问题,或者是 Flink CDC 的性能瓶颈导致数据错乱。建议您检查日志文件,分析错误信息,查看数据同步的具体情况,以便更好地定位问题并解决。

    2023-06-12 09:55:41
    赞同 展开评论