开发者社区 > 大数据与机器学习 > 实时计算 Flink > 正文

Flink CDC这种情况怎么处理?

Flink CDC中,在Incremental Snapshot PG数据库的时候,默认按主键第一个column来split chunk,但是遇到一张大表,主键是多个字段组成的,按第一个主键的column划分出现了数据倾斜的,这种情况怎么处理?CDC的TM日志返回的信息如下:
Snapshot step 1 - Determining low watermark Offset{lsn=LSN{5AD/DB087398}, txId=1277515238, lastCommitTs=-9223372036854775808] for split SnapshotSplit{tableId=rls_schema.t_gl_xxx, splitId='rls_schema.t_gl_balance:56', splitKeyType=[fdbid BIGINT NOT NULL], splitStart=[1651016882125489413], splitEnd=[1651020940074771723], highWatermark=null}

展开
收起
真的很搞笑 2024-01-01 07:01:42 54 0
3 条回答
写回答
取消 提交回答
  • 这哪里是数据倾斜 明明是数据重复 ,此回答整理自钉群“Flink CDC 社区”

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

    是的,Flink CDC在Incremental Snapshot PG数据库中默认按主键第一个column来split chunk。当遇到一张大表,主键是多个字段组成的时,按第一个主键的column划分可能会出现数据倾斜。

    要解决这个问题,可以尝试以下方法:

    1. 调整scan.incremental.snapshot.chunk.sizescan.incremental.snapshot.chunk.key-column配置,以便根据指定的主键组合键来划分chunk。例如,如果主键是(fdbid, BIGINT NOT NULL),则可以将scan.incremental.snapshot.chunk.key-column设置为fdbid。这样,Flink CDC将根据这个列的值来划分chunk,从而减少数据倾斜的可能性。
    2024-01-01 13:37:54
    赞同 展开评论 打赏
  • Flink CDC在处理Incremental Snapshot PG数据库时,默认按主键第一个column来划分chunk。如果遇到一张大表,主键是多个字段组成的,按第一个主键的column划分出现了数据倾斜的问题,可以尝试以下方法解决:

    1. 调整scan.incremental.snapshot.chunk.size参数,增加每个chunk的大小,以便容纳更多的数据。
    2. 使用scan.incremental.snapshot.chunk.key-column配置指定某个表按配置的pk组合键来划分chunk。例如,如果你想要按fdbidBIGINT NOT NULL两个字段的组合键划分chunk,可以这样配置:
    flink-cdc:
      source:
        connector:
          type: ... # 您的数据源连接器类型
          ...
        properties:
          scan.incremental.snapshot.chunk.size: 8096
          scan.incremental.snapshot.chunk.key-column: "fdbid, BIGINT NOT NULL"
    
    1. 如果上述方法仍然无法解决问题,可以考虑对数据进行预处理,将多字段的主键拆分成多个列,然后根据这些列的值进行分区。这样可以避免数据倾斜问题。
    2024-01-01 10:02:34
    赞同 展开评论 打赏

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

相关产品

  • 实时计算 Flink版
  • 相关电子书

    更多
    Flink CDC Meetup PPT - 龚中强 立即下载
    Flink CDC Meetup PPT - 王赫 立即下载
    Flink CDC Meetup PPT - 覃立辉 立即下载