创建开发环境

本快速入门将引导您完成在 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 账号以及默认 Dataform 服务代理所需的角色。

    向您的自定义服务账号或 Google 账号授予角色

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

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

    如需向自定义服务账号或 Google 账号授予 BigQuery 角色(预览版),请按以下步骤操作:

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

      转到 IAM

    2. 点击授予访问权限

    3. 新的主账号字段中,输入您的自定义服务账号 ID 或 Google 账号电子邮件地址(预览版)。

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

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

    向默认 Dataform 服务代理授予角色

    如果您使用自定义服务账号在 BigQuery 中运行工作流,则必须允许 Dataform 使用您的自定义服务账号。如需向自定义服务账号资源上的默认 Dataform 服务代理授予 Service Account Token Creator 角色 (roles/iam.serviceAccountTokenCreator),请按以下步骤操作:

    1. 在 Google Cloud 控制台中,依次前往 IAM > 服务账号

      转到“服务账号”

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

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

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

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

      service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com
      

      PROJECT_NUMBER 替换为您的Google Cloud 项目编号。

    5. 选择角色列表中,添加 Service Account Token Creator 角色。

    6. 点击保存

    创建 Dataform 仓库

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

      前往 Dataform

    2. 点击 创建制品库

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

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

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

      3. 点击创建

    4. 点击前往代码库

    配置工作区编译替换

    如需使用 Dataform 工作区编译替换创建隔离的开发环境,请按以下步骤操作:

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

      前往 Dataform

    2. 点击 quickstart-dev

    3. 点击设置,然后点击修改

    4. 工作区编译替换窗格的架构后缀字段中,输入 ${workspaceName}

      当您在工作区中触发运行后,Dataform 会将工作区的名称作为后缀附加到工作流设置中设置的默认架构。本快速入门使用默认的 Dataform 设置和 dataform 默认架构。

    5. 点击保存

    Dataform 会将工作区编译替换应用于您代码库中的所有工作区。

    通过此配置,当您在工作区中手动运行工作流时,Dataform 会使用工作区编译替换来运行该工作流。因此,Dataform 在 BigQuery 的 dataform_workspaceName 架构中运行工作流,将工作区转换为隔离的开发环境。

    例如,当您在 sasha 工作区中手动触发运行时,Dataform 会在 BigQuery 的 dataform_sasha 架构中运行工作流。

    如需在运行工作流时不使用工作区编译替换,但仍为开发环境保留工作区编译替换,您可以创建发布配置以配置其他执行环境,例如,stagingproduction

    清理

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

    删除在 BigQuery 中创建的数据集

    为避免 BigQuery 资产产生费用,请删除名称以 dataform 开头的数据集,例如 dataform-sasha

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

      转到 BigQuery

    2. 浏览器面板中,展开您的项目并选择数据集。

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

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

    删除 Dataform 代码库

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

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

      前往 Dataform

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

      1. 删除代码库窗口中,输入代码库的名称以确认删除。
    3. 请点击删除来确认操作。

    后续步骤