DataWorks离线任务如何提速

已解决

DataWorks离线任务如何提速

展开
收起
阿里云服务支持 2022-12-13 17:20:57 414 分享 版权
1 条回答
写回答
取消 提交回答
  • 推荐回答
    官方回答

    提速通用逻辑

    ● 走内网相对走公网速度、安全性、稳定性更优,跨国网络建议走专线打通内网。

    ● 离线任务通常情况下并发("concurrent"参数)数越高,同步速度越快,部分插件需要配置切分键(例如"splitPk参数")才生效,否则使用单通道进行同步,具体可参见插件文档。注意资源可用并发数。

    ● 写端数据库负载不高的情况下,可以关闭限流,不限流的情况下则会提供现有硬件环境下最大的传输性能。"setting": { "speed": { "throttle": true // 是否限流。 "mbps": 1, // 具体速率值。 } }。

    ● 大并发任务(>8个并发)且独享数据集成资源组有2台及以上,可以开启分布式"executeMode":"distribute"。

    ● 将写端插件中前后置语句移出同步任务外执行。

    ● 读端插件过滤条件中尽量使用索引字段避免全表扫描,避免或减少函数等复杂处理。

    常用插件提速

    插件文档

    ● MySQL Reader

    1、where条件中优先选择使用索引字段避免全表扫描,尽量避免使用函数处理等

    2、上调并发需设置splitPk,不设置数据同步视作使用单通道同步该表数据。

    3、参考上文提速通用逻辑,优先考虑走内网、加并发。

    ● Datahub Reader

    配置了8并发,任务实际并发只有1,原因是实际并发受限于datahub topic shard数,shard数只有1。

    ● OTSStream Reader

    OTSSream一直没有速度,原因是填写的结束时间大于了最新数据时间。

    ● OTS Reader

    可以通过分片方式提升ots读取性能,具体可咨询OTS。

    ● ClickHouse Writer

    1、参考上文提速通用逻辑,优先考虑走内网、加并发。2、batchSize参数:一次性批量提交的记录数大小,该值可以极大减少数据同步系统与ClickHouse的网络交互次数,并提升吞吐量。如果该值设置过大,会导致数据同步运行进程OOM异常。

    相关参考

    更多关于离线任务调优场景,详情请参见场景离线同步任务调优

    2022-12-13 17:32:14
    赞同 展开评论

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

收录在圈子:
作为全球云计算的领先者,阿里云为全球230万企业提供着云计算服务,服务范围覆盖200多个国家和地区。我们致力于为企业、政府等组织机构提供安全可靠的云计算服务,给用户带来极速愉悦的服务体验。
还有其他疑问?
咨询AI助理