Flink CDC整库同步到hudi,有部分表数据量超过千万,每次都报内存超出限制oom,每个taskmaster给10g都不够,大家有没有好的解决方案?并行度给的2
有以下几种可能原因:
你的 hudi 表是 parquet 格式,但是没有定义 schema,导致 Flink CDC 写入数据时需要重新解析 parquet 数据,占用大量内存。
你的 hudi 表是 iceberg 格式,但是没有启用分桶功能,导致 Flink CDC 写入的数据分布不均匀,占用大量内存。
你的 Flink 任务没有设置合理的堆内存和堆外内存,导致 Flink CDC 写入数据时内存不足,导致 OOM。
你可以尝试以下方式来解决这个问题:
将你的 hudi 表修改为 iceberg 格式,并启用分桶功能。
为你的 Flink 任务设置更大的堆内存和堆外内存。
将你的 Flink 任务分为多个子任务,每个子任务处理一部分数据。
具体的解决方式,需要根据实际情况进行调整。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。