使用工作流配置安排执行作业

本文档介绍了如何在 Dataform 中创建工作流配置,以安排和配置 SQL 工作流执行。您可以使用工作流配置按计划执行 Dataform SQL 工作流。

工作流配置简介

如需在 BigQuery 中安排对所有或所选 SQL 工作流操作的 Dataform 执行,您可以创建工作流配置。在工作流配置中,您可以选择编译版本配置、选择要执行的 SQL 工作流操作,并设置执行时间表。

然后,在按计划执行工作流配置期间,Dataform 会将您从发布配置的最新编译结果中选择的操作部署到 BigQuery。您还可以使用 Dataform API workflowConfigs 手动触发工作流配置的执行。

Dataform 工作流配置包含以下执行设置:

  • 工作流配置的 ID
  • 版本配置
  • 服务账号

    与工作流配置关联的服务账号。您可以选择默认的 Dataform 服务账号、与您的 Google Cloud 项目关联的服务账号,也可以手动输入其他服务账号。默认情况下,工作流配置使用与其代码库相同的服务账号。

  • 要执行的 SQL 工作流操作:

    • 所有操作
    • 选择操作
    • 选择代码
  • 执行时间表和时区

准备工作

  1. 在 Google Cloud 控制台中,进入 Dataform 页面。

    前往 Dataform 页面

  2. 选择或创建代码库

  3. 创建发布配置

所需的角色

如需获得创建工作流配置所需的权限,请让您的管理员为您授予代码库的 Dataform Admin (roles/dataform.admin) IAM 角色。 如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

您也可以通过自定义角色或其他预定义角色来获取所需的权限。

如需使用默认 Dataform 服务账号以外的服务账号,请向自定义服务账号授予访问权限

创建工作流配置

如需创建 Dataform 工作流配置,请按以下步骤操作:

  1. 在代码库中,前往版本和时间安排
  2. 工作流配置部分,点击创建
  3. 创建工作流配置窗格的配置 ID 字段中,输入工作流配置的唯一 ID。

    ID 只能包含数字、字母、连字符和下划线。

  4. 版本配置下拉菜单中,选择一个编译版本配置

  5. 可选:在频率字段中,输入unix-cron 格式的执行频率。

    为确保 Dataform 在相应发布配置中执行最新的编译结果,请在编译结果创建时间和安排的执行时间之间至少间隔 1 小时。

  6. 服务账号下拉菜单中,为工作流配置选择一个服务账号。

    在下拉菜单中,您可以选择默认的 Dataform 服务账号,也可以选择与您的 Google Cloud 项目关联且您有权访问的任何服务账号。如果您未选择服务账号,工作流配置将使用代码库的服务账号。

  7. 可选:在时区下拉菜单中,选择执行作业的时区。

    默认时区为世界协调时间 (UTC)。

  8. 选择要执行的 SQL 工作流操作:

    1. 如需执行整个 SQL 工作流,请点击所有操作
    2. 如需在 SQL 工作流中执行所选操作,请点击选择操作,然后选择操作。
    3. 如需针对所选代码执行操作,请点击代码选择,然后选择代码。
    4. 可选:如需执行所选操作或代码及其依赖项,请选择包含依赖项选项。
    5. 可选:如需执行所选操作或代码及其依赖项,请选择包含依赖项选项。
    6. 可选:如需从头开始重新构建所有表,请选择运行并完全刷新选项。

    如果不使用此选项,Dataform 会更新增量表,而无需从头重建这些表。

  9. 点击创建



例如,以下工作流配置会在 CEST 时区每小时执行带有 hourly 标记的操作:

  • 配置 IDproduction-hourly
  • 版本配置:-
  • 频率0 * * * *
  • 时区Central European Summer Time (CEST)
  • 选择 SQL 工作流操作:选择标记、hourly 标记

修改工作流配置

如需修改工作流配置,请按以下步骤操作:

  1. 在代码库中,前往版本和时间安排
  2. 在要修改的工作流配置旁边,点击 More 菜单,然后点击 Edit
  3. 修改工作流配置窗格中,修改版本配置设置,然后点击保存

删除工作流配置

如需删除工作流配置,请按以下步骤操作:

  1. 在代码库中,前往版本和时间安排
  2. 在要删除的工作流配置旁边,点击 更多菜单,然后点击删除
  3. 删除版本配置对话框中,点击删除

后续步骤