安排生产环境的运行

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

准备工作

  1. 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

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

  3. Enable the BigQuery and Dataform APIs, if any are not already enabled.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the APIs

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

所需的角色

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

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

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

授予必需的角色

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

您的自定义服务账号必须具有以下必需角色:

  • 针对 Dataform 需要同时拥有读取和写入权限的项目或特定 BigQuery 数据集的 BigQuery Data Editor (roles/bigquery.dataEditor) 角色。这通常包括托管 Dataform 代码库的项目。
  • 针对 Dataform 需要只读访问权限的项目或特定 BigQuery 数据集的 BigQuery Data Viewer (roles/bigquery.dataViewer) 角色。
  • 针对托管 Dataform 代码库的项目的 BigQuery Job User (roles/bigquery.jobUser)。

如需让 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.
    

    将 PROJECT_NUMBER 替换为您的Google Cloud 项目的数字 ID。您可以在Google Cloud 控制台信息中心内找到 Google Cloud 项目 ID。如需了解详情,请参阅查找项目名称、编号和 ID。

  10. 在选择角色列表中,添加以下角色:

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

如需详细了解如何授予角色,请参阅向 Dataform 授予所需的访问权限。

创建 Dataform 仓库

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

    前往 Dataform

  2. 点击 创建制品库。

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

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

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

    3. 在服务账号列表中,为代码库选择一个自定义服务账号。

    4. 在 actAs 权限检查部分中,对用户在代码库中的操作强制执行权限检查。

    5. 点击创建。

  4. 点击前往代码库。

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

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

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

    前往 Dataform

  2. 点击 quickstart-production。

  3. 依次点击版本和时间安排和创建正式版本。

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

    1. 在版本 ID 字段中,输入 production。
    2. 在 Git 提交字段中,保留默认值 main。 此字段接受 Git 分支、标记或提交 SHA。
    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)。

      每天 UTC+1 下午 5 点,Dataform 都会运行 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. 请点击删除来确认操作。

后续步骤