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

使用 oracle cdc抽取数据到doris同步到3500w条数据(17.8G)为何程序同步停止?

使用 oracle cdc抽取数据到doris,同步到3500w条数据(17.8G),程序同步停止,如何解决?运行环境 Centos7source 端DB oracle 11gconnnector oracle cdc 2.3.0sink 端DB doris 1.3.0connector flink-doris-connector-1.16程序运行的 flink web ui 如下图所示 图片.png

展开
收起
wenti 2023-02-06 16:21:53 230 0
2 条回答
写回答
取消 提交回答
  • 从 Oracle CDC 同步数据到 Doris 时出现程序停止的问题,可能是由于以下原因造成的:

    1. 内存不足

    Flink 作业在执行数据同步时需要大量的内存来缓冲数据和状态。当同步的数据量较大时,可能超出 Flink 作业的可用内存。

    2. 网络问题

    Flink 作业在 source 端和 sink 端之间传输数据。如果网络连接不稳定或带宽不足,可能会导致数据传输中断或延迟,从而导致作业停止。

    3. Doris 写入速率限制

    Doris 可能对写入速率有限制,以防止数据写入过快导致系统过载。如果 Flink 作业的写入速率超过了 Doris 的限制,可能会导致作业停止。

    4. 数据格式不匹配

    Flink CDC 从 Oracle 中提取的数据格式可能与 Doris 所需的格式不匹配。这会导致数据写入 Doris 时出现错误,从而导致作业停止。

    5. Flink 配置问题

    Flink 作业的配置可能不适合处理如此大量的数据。例如,并行度设置过低或缓冲区大小设置过小,都可能导致作业停止。

    解决方法:

    • 增加内存:增加 Flink 作业的内存分配,以满足数据同步所需的内存需求。
    • 优化网络:检查网络连接的稳定性和带宽,确保数据传输顺畅。
    • 调整 Doris 写入速率:如果 Doris 有写入速率限制,可以尝试调整 Flink 作业的写入速率,使其低于 Doris 的限制。
    • 检查数据格式:确保 Flink CDC 提取的数据格式与 Doris 所需的格式匹配。
    • 优化 Flink 配置:根据数据量和处理要求,调整 Flink 作业的并行度、缓冲区大小和其他配置。

    其他建议:

    • 使用增量同步:如果可能,使用增量同步而不是全量同步,这样可以减少需要传输的数据量。
    • 使用外部存储:将 Flink 作业的状态存储在外部存储(如 HDFS 或 Amazon S3)中,可以释放内存并提高稳定性。
    • 使用监控工具:使用 Flink Web UI 或其他监控工具监控作业的运行状态,以便及时发现问题并采取措施。
    2024-02-27 18:25:42
    赞同 展开评论 打赏
  • 我觉得可能是由以下原因导致:

    系统资源不足:Flink 程序可能需要更多的内存、CPU 或磁盘空间才能正常运行。

    网络问题:网络故障、带宽不足等因素可能导致数据同步停止。

    Oracle CDC 问题:Oracle CDC 可能存在故障或版本不兼容问题,导致数据抽取不正常。

    DORIS 存储问题:DORIS 可能出现故障或性能问题,导致数据同步停止。

    2023-02-06 17:03:38
    赞同 展开评论 打赏

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

相关电子书

更多
PostgresChina2018_樊文凯_ORACLE数据库和应用异构迁移最佳实践 立即下载
PostgresChina2018_王帅_从Oracle到PostgreSQL的数据迁移 立即下载
Oracle云上最佳实践 立即下载

相关镜像