You need to enable JavaScript to run this app.
文档中心
大数据研发治理套件

大数据研发治理套件

复制全文
下载 pdf
发布、部署与环境
开发与执行环境依赖配置
复制全文
下载 pdf
开发与执行环境依赖配置

本文介绍 Pipeline 中与计算资源、引擎、Python 依赖和网络相关的环境配置,帮助您正确配置 Activity 的执行环境。

新建资源文件

在我的工作空间中添加资源文件,支持上传文件或绑定对象存储路径
Image
当您选择来自对象存储,系统将会新建一个资源文件,并将文件指向对象存储地址,不会实际将对象存储中的资源文件导入到当前工作目录。
在任务执行时,将会直接使用对象存储中的文件,任务执行身份通常为您配置的用户或角色,请确保该用户或角色有权限访问对象存储中的资源文件。

计算资源绑定

Activity 执行时需要绑定到具体的计算资源组。不同类型的 Activity 使用不同的资源绑定方式。

SQL / Jar Activity

SQL 和 Jar 类型的 Activity 通过 engineType + engineQueue 绑定计算引擎和队列:

- name: extract_orders
  type: sql
  engineType: emr_serverless_spark
  engineQueue: "{{project.computing_queue}}"

字段

说明

engineType

计算引擎类型

engineQueue

计算队列名称,决定使用哪组计算资源。

Notebook Activity

activities:
  - name: data_analysis
    type: notebook
    source: WORKSPACE
    path: /Workspace/Users/zhang3/notebooks/analysis.ipynb
    kernelType: emr_serverless_spark_python
    engineQueue: default
    computingResourceGroupName: default_py_group
    parameterValues:
      biz_date: "{{run_date}}"
      target_region: "cn-beijing"

字段

类型

必填

说明

type

String

固定为 notebook

path

String

Notebook 文件路径

kernelType

String (Enum)

Kernel 类型

engineQueue

String

条件必填

kernelType = emr_serverless_spark_python 时必填

computingResourceGroupName

String

条件必填

kernelType = python_kubernetes 时必填

parameterValues

Map

向 Notebook 传递的参数值

sparkConf

List

条件必填

Spark 配置参数,kernelType = emr_serverless_spark_python 时可用

resources

List

额外资源文件列表

详见:Kernel 类型

资源组标识

资源组通过名称(Name)或 ID(Id)标识,同时提供时以 ID 优先:

# 方式一:仅按名称
computingResourceGroupName: default_python_group

# 方式二:名称 + ID(推荐,更精确)
computingResourceGroupName: default_python_group
computingResourceGroupId: 3

说明

建议将资源组名称配置为项目参数,实现开发/生产环境使用不同的计算资源。

Jar 任务的 Spark 配置

Jar 类型的 Activity 支持通过 sparkConf 自定义 Spark 运行参数:

- name: heavy_etl_job
  type: jar
  engineType: emr_serverless_spark
  engineQueue: prod_queue
  mainClass: com.example.HeavyETL
  sparkConf:
    - key: spark.executor.memory
      value: "8g"
    - key: spark.executor.instances
      value: "20"
    - key: spark.executor.cores
      value: "4"
    - key: spark.sql.shuffle.partitions
      value: "200"
    - key: spark.dynamicAllocation.enabled
      value: "true"
    - key: spark.dynamicAllocation.maxExecutors
      value: "50"

常用 Spark 配置项:

配置项

说明

建议值

spark.executor.memory

单个 Executor 内存

根据数据量设置,通常 4g–16g。

spark.executor.instances

Executor 数量

根据数据量和并行度设置。

spark.executor.cores

单个 Executor CPU 核心数

通常 2–4

spark.sql.shuffle.partitions

Shuffle 分区数

数据量大时增大(如 200–1000)

spark.dynamicAllocation.enabled

动态资源分配

建议开启

额外资源(extraResources)

Jar 类型的 Activity 支持加载额外的依赖资源:

- name: etl_with_udf
  type: jar
  source: TOS
  path: tos://bucket/jars/etl-app.jar
  engineType: emr_serverless_spark
  engineQueue: prod_queue
  mainClass: com.example.ETLJob
  extraResources:
    - source: TOS
      path: tos://bucket/jars/common-udf.jar
    - source: RESOURCE
      path: /workspace/resources/connector.resource.yaml

source 值

说明

TOS

从对象存储加载。

RESOURCE

从资源中心加载已注册的资源。

典型用途:

  • 加载 UDF(用户自定义函数)JAR 包。
  • 加载数据库连接器。
  • 加载共享工具库。

运行实参(arguments)

Python、Shell、Jar 类型的 Activity 支持通过 arguments 传入命令行参数:

# Python 脚本
- name: transform
  type: python
  arguments:
    - "--mode"
    - "full"
    - "--date"
    - "{{pipeline.params.biz_date}}"

# Jar 任务
- name: spark_job
  type: jar
  arguments:
    - "--biz_date"
    - "{{pipeline.params.biz_date}}"
    - "--partition"
    - "{{project.target_partition}}"

说明

arguments 中的每个元素对应一个命令行参数,按顺序传入脚本。支持使用 {{...}} 引用动态值。

配置建议

建议

说明

资源组参数化

computingResourceGroupNameengineQueue 配置为项目参数,实现环境隔离、。

合理配置 Spark 参数

根据数据量和任务特点调整 Executor 数量和内存,避免资源浪费或不足。

锁定 Python 依赖版本

生产环境使用精确版本号,避免自动升级引发问题。

按需配置网络

仅在需要访问外部资源时配置 VPC 网络,减少不必要的网络暴露。

复用资源配置

相同类型的 Activity 使用统一的资源组和引擎配置,便于管理和扩缩容。

最近更新时间:2026.07.01 00:44:44
这个页面对您有帮助吗?
有用
有用
无用
无用