开发者社区 > 大数据与机器学习 > 大数据开发治理DataWorks > 正文

DataWorks现在同步mysql报错,mysql里面有个json类型字段,这个如何处理?

DataWorks现在同步mysql报错,mysql里面有个json类型字段,这个如何处理?com.alibaba.datax.common.exception.dataxexception: Code:[Framework-02], Description:[The DataX engine encountered an error during running. For the specific cause, refer to the error diagnosis after DataX stops running. ]. - java.lang.Throwable: Java heap spacehttps://di2-cn-shanghai.data.aliyun.com/web/di/instanceLog?spm=a1z3jh.11711402.0.0.625034137MHkWu&id=1276368315&resourceGroup=S_res_group_616461058880386_1695285968827&projectId=361391

展开
收起
cuicuicuic 2023-11-06 13:45:19 55 0
3 条回答
写回答
取消 提交回答
  • 这个看着报错是内存溢出,目前看资源还足够 可以尝试加一些并发 增加一个并发会多256M内存 当前是3并发768内存,任务转脚本后 将jvm调整到1.5g或2g再试试 不是很建议 可以先尝试一下
    "setting": {
    "errorLimit": {//错误记录数
    "record": "0"
    },
    "jvmOption": "-Xms1024m -Xmx1024m",//JVM内存
    "speed": {
    "throttle": true,//false代表不限流,下面的限流的速度不生效,true代表限流
    "concurrent": 1,//作业并发数
    "mbps": "1"//限流的速度
    }
    }
    直接cast( as char(255)),此回答整理自钉群“DataWorks交流群(答疑@机器人)”

    2023-11-07 21:54:59
    赞同 展开评论 打赏
  • 该问题是由于 Java 内存溢出导致的。要解决该问题,可以尝试以下方法:

    • 减少每批次处理的数量,以减小内存消耗;
    • 增加 DataWorks 作业的 JVM 参数,增大堆栈大小;
    • 对 JSON 字段类型进行格式化或压缩,减少数据传输量。
    2023-11-06 21:50:43
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    出现这个问题的原因可能是 DataWorks 在处理 MySQL 的 JSON 类型字段时遇到了内存不足的问题。
    为了解决这个问题,建议尝试以下几种方法:

    1. 增加 DataWorks 运行时的内存限制:可以在 DataWorks 配置文件中增加内存限制的参数,提高运行时可用内存的数量。
    2. 减少单次同步的数据量:可以将大数据集分成多个小的数据集进行同步,从而降低单次同步的内存占用。
    3. 使用 MySQL 的 json_extract 函数将 JSON 字段转换为字符串类型:这样可以减少处理 JSON 字段所需的空间。
    4. 对 JSON 字段进行预处理:可以在源端进行预处理,将 JSON 字段拆分为多个字段,然后分别进行同步。
    2023-11-06 14:37:19
    赞同 展开评论 打赏

DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。

相关产品

  • 大数据开发治理平台 DataWorks
  • 相关电子书

    更多
    DataWorks调度任务迁移最佳实践-2020飞天大数据平台实战应用第一季 立即下载
    DataWorks商业化资源组省钱秘籍-2020飞天大数据平台实战应用第一季 立即下载
    基于DataWorks数据服务构建疫情大屏-2020飞天大数据平台实战应用第一季 立即下载

    相关镜像