安排生产运行

本快速入门将引导您完成以下步骤,以便在 Dataform 中安排生产运行:

准备工作

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the BigQuery and Dataform APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the BigQuery and Dataform APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  8. 此外,您还可以选择或创建自定义服务账号,以便在 BigQuery 中运行工作流。

    所需的角色

    如需获得执行本教程中的所有任务所需的权限,请让您的管理员为您授予以下 IAM 角色:

    如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

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

    授予必需的角色

    如需在 BigQuery 中运行工作流,您可以使用自定义服务账号或您的 Google 账号(预览版)。不过,自定义服务账号凭据是预定运行的默认选项。不建议在预定运行中使用 Google 账号用户账号凭据。

    如需在 BigQuery 中运行工作流,您的自定义服务账号必须具有以下必需的角色:

    • 对 Dataform 需要同时具有读取和写入权限的项目(通常包括托管 Dataform 代码库的项目)的 BigQuery Data Editor (roles/bigquery.dataEditor) 角色。
    • Dataform 需要对项目具有只读权限,因此您需要为这些项目授予 BigQuery Data Viewer (roles/bigquery.dataViewer) 角色。
    • BigQuery Job User (roles/bigquery.jobUser) 角色,该角色针对的是托管 Dataform 代码库的项目。

    如需让 Dataform 使用您的自定义服务账号,默认 Dataform 服务代理必须对自定义服务账号资源拥有以下角色:

    如需授予这些角色,请按照以下步骤操作:

    1. 在 Google Cloud 控制台中,前往 IAM 页面。

      转到 IAM

    2. 点击授予访问权限

    3. 新的主账号字段中,输入您的自定义服务账号 ID。

    4. 选择角色菜单中,使用添加其他角色为每个额外角色逐一选择以下角色:

      • BigQuery Data Editor
      • BigQuery Data Viewer
      • BigQuery Job User
    5. 点击保存

    6. 在 Google Cloud 控制台中,打开服务账号页面。

      转到“服务账号”

    7. 选择您的自定义服务账号。

    8. 前往具有访问权限的主账号,然后点击授予访问权限

    9. 新的主账号字段中,输入您的默认 Dataform 服务代理 ID。

      默认 Dataform 服务代理 ID 采用以下格式:

      service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
      
    10. 选择角色列表中,添加以下角色:

      • Service Account User
      • 服务账号令牌创建者
    11. 点击保存

    创建 Dataform 仓库

    1. 在 Google Cloud 控制台中,前往 Dataform 页面。

      前往 Dataform

    2. 点击 创建制品库

    3. 创建仓库页面上,执行以下操作:

      1. 代码库 ID 字段中,输入 quickstart-production

      2. 区域列表中,选择 europe-west4

      3. 服务账号字段中,点击手动输入,然后输入自定义服务账号的名称。请务必在此字段中输入您的自定义服务账号。

      4. 点击创建

    4. 点击前往代码库

    创建发布配置和工作流配置

    如需创建 quickstart-production 代码库的生产编译结果并安排 production 表的运行,请按照以下步骤操作:

    1. 在 Google Cloud 控制台中,前往 Dataform 页面。

      前往 Dataform

    2. 点击 quickstart-production

    3. 点击版本和时间安排,然后点击创建正式版本

    4. 创建发布配置窗格中,配置以下设置:

      1. 版本 ID 字段中,输入 production
      2. Git 提交 字段中,保留默认值 main
      3. 时间表频率部分的重复频率菜单中,选择自定义
      4. 自定义时间表字段中,输入 0 16 * * *
      5. 时区菜单中,选择 UTC+1 时区,例如中欧标准时间 (CET)

        每天 UTC+1 下午 4 点,Dataform 会编译 quickstart-production 代码库,并应用此版本配置中配置的编译设置来创建 production 编译结果。

    5. 点击创建

      production 版本配置会在每天 UTC+1 下午 4 点生成整个 quickstart-production 仓库的编译结果。

    6. 确保您位于版本和时间安排标签页。前往工作流配置部分,然后点击创建

    7. 创建工作流配置窗格中,配置以下设置:

      1. 配置 ID 字段中,输入 production
      2. 版本配置菜单中,选择 production
      3. 时间表频率部分的重复频率菜单中,选择自定义
      4. 自定义时间表字段中,输入 0 17 * * *
      5. 时区菜单中,选择 UTC+1 时区,例如中欧标准时间 (CET)

        Dataform 会在每天 UTC+1 下午 5 点运行 quickstart-production 代码库的最新 production 编译结果。

      6. 点击所有操作

        Dataform 会运行 production 编译结果中的所有工作流操作。

    8. 点击创建

      production 工作流配置会在每天 UTC+1 下午 5 点运行通过正式版配置创建的整个最新编译结果。

    查看过往的 production 编译结果

    如需查看过去的预定 production 编译结果,请按以下步骤操作:

    1. 在 Google Cloud 控制台中,前往 Dataform 页面。

      前往 Dataform

    2. 选择 quickstart-production 代码库。

    3. 点击版本和时间安排

    4. 发布配置部分中,点击 production

    查看过往的 production 工作流程运行情况

    如需查看过往的 production 工作流运行,请按以下步骤操作:

    1. 在 Google Cloud 控制台中,前往 Dataform 页面。

      前往 Dataform

    2. 选择 quickstart-production 代码库。

    3. 点击工作流执行日志

    4. 选择一个工作流运行,即可查看更详细的信息,包括每个操作的状态和所有日志。

    清理

    为避免因本页中使用的资源导致您的 Google Cloud 账号产生费用,请按照以下步骤操作。

    删除在 BigQuery 中创建的数据集

    为避免 BigQuery 资产产生费用,请按照以下步骤删除名为 dataform_production 的数据集:

    1. 在 Google Cloud 控制台中,前往 BigQuery 页面。

      转到 BigQuery

    2. 探索器面板中,展开您的项目并选择 dataform_production

    3. 点击 操作菜单,然后选择删除

    4. 删除数据集对话框中,输入 delete,然后点击删除

    删除 Dataform 版本配置

    创建 Dataform 版本配置不会产生任何相关费用。不过,如果您想删除 production 版本配置,请按照以下步骤操作:

    1. 在 Google Cloud 控制台中,前往 Dataform 页面。

      前往 Dataform

    2. 点击 quickstart-production

    3. 点击版本和时间安排,然后前往版本配置部分。

    4. production 版本配置旁边,点击 更多菜单,然后点击删除

    5. 删除版本配置对话框中,点击删除

    删除 Dataform 工作流配置

    为避免 BigQuery 资产产生费用,请按照以下步骤删除 Dataform production 工作流配置:

    1. 在 Google Cloud 控制台中,前往 Dataform 页面。

      前往 Dataform

    2. 点击 quickstart-production

    3. 点击版本和时间安排,然后前往工作流配置部分。

    4. production 工作流配置旁边,点击 更多菜单,然后点击删除

    5. 删除版本配置对话框中,点击删除

    删除 Dataform 代码库

    创建 Dataform 代码库不会产生任何相关费用。 不过,如果您想删除代码库及其所有内容,请按以下步骤操作:

    1. 在 Google Cloud 控制台中,前往 Dataform 页面。

      前往 Dataform

    2. quickstart-production 旁边,点击 更多菜单,然后选择删除

    3. 删除代码库窗口中,输入代码库的名称以确认删除。

    4. 请点击删除来确认操作。

    后续步骤