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

Flink CDC 为何使用增量快照做全量数据加载的时候, 计算chunks的数量 那么耗时?

Flink CDC 为何使用增量快照做全量数据加载的时候, 计算chunks的数量 那么耗时? 不是直接select count / 设置的chunk size 就得出chunks 然后每个chunk执行数据加载就可以了吗?

我一个上亿的大表光计算chunk数量就花了两天?

展开
收起
真的很搞笑 2023-09-19 08:25:07 64 0
1 条回答
写回答
取消 提交回答
  • 分片时要先获取表结构、分片键、分片键最大值、分片键最小值,估算表数量等信息,如果分片键是INT、BIGINT、DECIMAL类型的会先动态调整分片的大小,然后从最小值开始划分成[null, min + chunkSize]、按你说的那种方式划分。如果不分片键不是这种类型,每次要用SELECT FROM > ChunkStart Limt ChunkSize每次获取到分片的最大值
    非数值类型的主键会扫描整表,均匀拆分数据。 数值类型主键 如果表里空洞太多,删除的数据太多,达到一个阈值,也会扫描整表均匀拆分数据
    每次查询涉及到排序操作,没你想的这么简单,此回答整理自钉群“Flink CDC 社区”

    2023-09-20 09:58:13
    赞同 展开评论 打赏

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

相关产品

  • 实时计算 Flink版
  • 热门讨论

    热门文章

    相关电子书

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