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

大数据研发治理套件

复制全文
下载 pdf
Pipeline 开发
Pipeline 配置文件
复制全文
下载 pdf
Pipeline 配置文件

本文为您介绍 Pipeline YAML 配置文件的格式规范和完整字段定义。

文件格式与命名规范

Pipeline 配置文件采用 YAML 格式,命名约定为:

${name}.pipeline.yaml

例如:daily_etl_orders.pipeline.yaml
命名规则:

  • 文件名中的 ${name} 部分建议与 metadata.name 保持一致。
  • metadata.name只包含字母、数字、下划线。
  • Pipeline 文件存储在项目 Git 仓库中,可放置在任意目录下。
  • 同一项目中可包含多个 Pipeline 文件。

配置文件整体结构

apiVersion: newide.studio.dataleap.volc/v1
kind: Pipeline
metadata:
  name: daily_etl_orders
spec:
  displayName: "每日订单 ETL"
  description: "从 ODS 层抽取订单数据,清洗后写入 DWD 层"
  runAs: User/123456
  schedulingResourceGroupName: default_scheduling_group

  activities:
    - name: extract_orders
      type: sql
      # ...
    - name: transform_orders
      type: notebook
      # ...

  trigger:
    type: SCHEDULED
    cronExpression: "0 2 * * *"
    frequency: daily

  parameters:
    - name: biz_date
      default: "${date}"

  variables:
    - name: record_count
      default: "0"

  dependsOn:
    pipelines:
      - name: upstream_ods_pipeline

顶层字段说明:

字段

类型

必填

说明

apiVersion

String

是

文件定义版本,固定为 newide.studio.dataleap.volc/v1。

kind

String

是

资源类型,固定为 Pipeline。

metadata

Object

是

元信息

spec

Object

是

Pipeline 详细配置

metadata 字段说明

metadata:
  name: daily_etl_orders

字段

类型

必填

说明

name

String

是

Pipeline 唯一标识名。在同一项目中唯一,建议只包含字母、数字和下划线,长度不超过 127。

注意

  • name 在项目内唯一,发布时系统自动维护 name 与发布态 Pipeline ID 的映射。
  • 如果两个 .pipeline.yaml 文件中 metadata.name 相同,它们发布时会发布到同一个 Pipeline。
  • Pipeline 一经生产发布后不建议修改 name(修改会导致发布为新的 Pipeline)。
  • 如需重命名,请使用 spec.displayName 字段。

activities 定义

spec.activities 是一个数组,定义 Pipeline 中所有执行单元:

spec:
  activities:
    - name: extract_orders
      type: sql
      source: WORKSPACE
      path: /Workspace/Users/zhang3/sql/extract_orders.sql
      engineType: emr_serverless_spark
      engineQueue: default
      parameterValues:
        biz_date: "${date}"
      position:
        x: "200"
        y: "100"

    - name: transform_orders
      type: notebook
      source: WORKSPACE
      path: /Workspace/Users/zhang3/notebooks/transform.ipynb
      kernelType: emr_serverless_spark
      engineQueue: default
      dependsOn:
        activities:
          - name: extract_orders
      position:
        x: "400"
        y: "100"

每个 Activity 的通用字段:

字段

类型

必填

说明

name

String

是

Activity 名称,当前 Pipeline 内唯一,只包含字母、数字和下划线,长度不超过 127

type

String

是

Activity 类型(如 sql、notebook、jar 等)

description

String

否

描述信息

dependsOn

Object

否

上游依赖配置

retryPolicy

Object

否

重试策略

position

Object

是

画布位置信息(x, y 坐标)

说明

各 Activity 类型的特有字段详见 Activity(任务节点)类型。

trigger 定义

spec.trigger 定义 Pipeline 的触发方式:

spec:
  trigger:
    type: scheduled
    cronExpression: "0 2 * * *"
    frequency: daily
    priority: d4

字段

类型

必填

说明

type

Enum

是

触发类型:scheduled / manual / external

cronExpression

String

条件必填

Cron 表达式(type=scheduled 时必填),标准 5 位格式。

frequency

Enum

否

调度频率:minutely / hourly / daily / weekly / monthly

priority

Enum

否

调度优先级:d1–d5(默认 d5)

Cron 表达式格式:

┌────── 分钟 (0-59)
│ ┌──── 小时 (0-23)
│ │ ┌── 日 (1-31)
│ │ │ ┌ 月 (1-12)
│ │ │ │ ┌ 星期 (0-6, 0=周日)
│ │ │ │ │
*  *  * *  *

常用表达式示例:

表达式

含义

0 2 * * *

每天凌晨 2:00

0 */6 * * *

每 6 小时

30 1 * * *

每天 1:30

0 3 * * 1

每周一 3:00

0 0 1 * *

每月 1 日 0:00

*/10 * * * *

每 10 分钟

parameters 定义

spec.parameters 定义 Pipeline 可接收的输入参数:

spec:
  parameters:
    - name: biz_date
      description: "业务日期"
      default: "${date}"

    - name: target_region
      description: "目标区域"
      default: "{{project.default_region}}"

    - name: run_mode
      description: "运行模式:full 全量 / incremental 增量"
      default: "incremental"

字段

类型

必填

说明

name

String

是

参数名,Pipeline 内唯一(字母、数字、下划线)。

description

String

否

参数描述

default

String

是

默认值

默认值支持的来源:

来源

语法

示例

硬编码值

直接写入

"incremental"

系统变量

${变量名}

"${date}"

项目参数

{{project.xxx}}

"{{project.default_region}}"

上游 Pipeline 输出

{{pipeline(name).output.xxx}}

"{{pipeline(upstream).output.status}}"

variables 定义

spec.variables 定义运行时可修改的内部变量:

spec:
  variables:
    - name: record_count
      description: "已处理记录数"
      default: "0"

    - name: error_flag
      description: "错误标记"
      default: "false"

    - name: file_list
      description: "待处理文件列表"
      default: "[]"

字段

类型

必填

说明

name

String

是

变量名,Pipeline 内唯一。

description

String

否

变量描述

default

String

是

初始值

变量的值可在运行过程中通过 set_variable 类型的 Activity 修改,适用于 Activity 间传递中间状态(如计数器、标记位、中间结果等)。

最近更新时间:2026.06.30 23:26:19
这个页面对您有帮助吗?
有用
有用
无用
无用