观远 BI

ETL高级设置

创建于 2023-03-10 / 最近更新于 2024-08-21 / 4189
字体: [默认] [大] [更大]

1. ETL高级设置概述

本文将为您介绍Smart ETL的高级设置的功能说明与具体操作。

2. ETL高级设置说明

操作路径:数据准备 - 智能ETL - ETL详情页 - 高级设置;

功能说明:可设置四个运行参数 ,下文将详细说明。

image.png

2.1 参数1:ETL中间结果缓存

当ETL相对较复杂时(至少包含两个输出数据集且超过设置的复杂度阈值),通过启用该配置,系统会自动将中间运算结果进行缓存以加速整个ETL的运行效率。特殊情况下,可以在ETL粒度上停用该功能。

  • 复杂度的阈值设置页面路径:管理中心 - 运维管理 - 参数配置 - ETL参数配置;

  • 默认推荐的复杂度阈值为100。设置过低,可能造成更多ETL运行过程中自动缓存中间结果。

image.png

2.2 参数2:BroadcastJoin 

在系统内,Spark为默认启用。但当两张关联表的数据量都较大时,其实并不适合启用Spark的 BroadcastJoin 功能。

对此,您可以通过配置“BroadcastJoin”选项,将其禁用,从而降低风险。  针对特殊情况,是否启用,可以联系观远数据技术支持。

3.png

2.3 参数3:Spark单Job超时时间(分)

为某个ETL任务提供更灵活的精准控制。通过设置Spark运行超时时长,可以限制任务的执行时间,确保任务在合理的时间范围内完成,避免因任务执行时间过长导致延迟和资源浪费,从而提升数据分析与处理的效率。

  • 默认设置为跟随全局

  • 自定义时长修改范围为1-300分钟;

1.png



2.4 参数4 

设置Spark运行参数 (6.5版本开始生效)

ETL的计算引擎预置了部分Spark运行规则,极端情况下,一些规则会使部分ETL运行异常,此时可以针对这些ETL进行参数与规则的配置,使其在运行中使用特定的参数。支持配置多个规则,多个规则通过换行来区分。

目前支持的参数如下:

  • shuffleBytes

    • guandata.jobLimit.shuffleBytes=200

    • 单位为G

  • 输出数据集行数

    • guandata.jobLimit.numOfOutputRows=1

    • 单位为亿

  • shuffleDisk阈值

    • guandata.shuffleDisk.threshold=0.85

  • tableExpansionRate

    • guandata.jobLimit.tableExpansionRate=100

  • broadcast join阈值 

    • spark.sql.autoBroadcastJoinThreshold=10Mb

设置示例:

image.png

如果对具体的参数设置不熟悉,请勿自行配置。可以提前联系观远数据对接人员。

停用特定Spark优化规则 (6.5版本之前生效,6.5版本后不生效)

ETL的计算引擎预置了部分Spark运行优化规则,如OptimizeRepartition、ColumnPruning等。非常特殊情况下,一些规则会使部分ETL运行异常,此时可以针对这些ETL进行配置,使其在运行中不采用预制的优化规则。

支持同时剔除、停用多个规则,不同规则之间采用英文逗号分割即可,如下所示。

CombineUnions,ConstantPropagation

若您在配置过程中遇到问题,可联系观远数据对接人员。


9 人点赞过