在 Dataform 中创建和运行工作流
本快速入门将引导您完成以下 Dataform 流程,以创建工作流并在 BigQuery 中运行该工作流:
准备工作
- 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.
-
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 (
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
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 theserviceusage.services.enablepermission. Learn how to grant roles. -
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 (
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
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 theserviceusage.services.enablepermission. Learn how to grant roles.
所需的角色
如需获得在 Dataform 中创建和运行工作流所需的权限,请让管理员向您授予将托管 Dataform 代码库的项目的以下 IAM 角色:
- 创建和管理代码库、工作区和工作流调用: Dataform Admin (
roles/dataform.admin) - 在 BigQuery 中运行工作流:
- BigQuery Data Editor (
roles/bigquery.dataEditor) - BigQuery Job User (
roles/bigquery.jobUser)
- BigQuery Data Editor (
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
创建 Dataform 仓库
在 Google Cloud 控制台中,前往 Dataform 页面。
点击 创建制品库。
在创建仓库页面上,执行以下操作:
在代码库 ID 字段中,输入
quickstart-repository。在区域列表中,选择
europe-west4。点击创建。
创建并初始化 Dataform 开发工作区
在 Google Cloud 控制台中,前往 Dataform 页面。
点击
quickstart-repository。点击 创建开发工作区。
在创建开发工作区窗口中,执行以下操作:
在工作区 ID 字段中,输入
quickstart-workspace。点击创建。
系统会显示开发工作区页面。
点击初始化工作区。
创建视图
在接下来的部分中,您将定义一个稍后将用作表数据源的视图。
创建用于定义视图的 SQLX 文件
在文件窗格中,点击
definitions/旁边的 更多菜单。点击创建文件。
在创建新文件窗格中,执行以下操作:
在添加文件路径字段中,输入
definitions/quickstart-source.sqlx。点击创建文件。
定义视图
在文件窗格中,展开“定义”文件夹。
点击
definitions/quickstart-source.sqlx。在文件中输入以下代码段:
config { type: "view" } SELECT "apples" AS fruit, 2 AS count UNION ALL SELECT "oranges" AS fruit, 5 AS count UNION ALL SELECT "pears" AS fruit, 1 AS count UNION ALL SELECT "bananas" AS fruit, 0 AS count点击格式。
创建表
在以下部分中,您将在 SQLX 文件中定义表类型,然后编写 SELECT 语句以在同一文件中定义表结构。
创建用于表定义的 SQLX 文件
在文件窗格中,点击
definitions/旁边的 更多菜单,然后选择创建文件。在添加文件路径字段中,输入
definitions/quickstart-table.sqlx。点击创建文件。
定义表类型、结构和依赖项
在文件窗格中,展开
definitions/目录。选择
quickstart-table.sqlx,然后输入以下表类型和SELECT语句:config { type: "table" } SELECT fruit, SUM(count) as count FROM ${ref("quickstart-source")} GROUP BY 1点击格式。
在定义表类型后,Dataform 会抛出查询验证错误,因为 BigQuery 中尚不存在 quickstart-source。在本教程后续部分运行工作流时,此错误将被解决。
在 BigQuery 中运行工作流
在 Google Cloud 控制台中,前往 Dataform 页面。
在
quickstart-workspace页面上,点击开始执行。点击所有操作。
点击开始执行。
在随即打开的对话框中,点击允许,以授予 BigQuery Pipelines 访问您 Google 账号的权限。
Dataform 使用默认代码库设置在名为
dataform的 BigQuery 数据集中创建工作流的内容。
在 Dataform 中查看执行日志
在
quickstart-repository页面上,点击工作流执行日志。如需查看执行详情,请点击最新的执行。
清理
为避免因本页中使用的资源导致您的 Google Cloud 账号产生费用,请按照以下步骤操作。
删除在 BigQuery 中创建的数据集
为避免 BigQuery 资源产生费用,请删除名为 dataform 的数据集。
在 Google Cloud 控制台中,前往 BigQuery 页面。
在探索器面板中,展开您的项目并选择
dataform。点击 操作菜单,然后选择删除。
在删除数据集对话框中,在字段中输入
delete,然后点击删除。
删除 Dataform 开发工作区
创建 Dataform 开发工作区不会产生任何费用,但如需删除开发工作区,您可以按以下步骤操作:
在 Google Cloud 控制台中,前往 Dataform 页面。
点击
quickstart-repository。在开发工作区标签页中,点击
quickstart-workspace旁边的 更多菜单,然后选择删除。请点击删除来确认操作。
删除 Dataform 代码库
创建 Dataform 代码库不会产生任何费用,但如需删除代码库,您可以按照以下步骤操作:
在 Google Cloud 控制台中,前往 Dataform 页面。
在
quickstart-repository旁边,点击 更多菜单,然后选择删除。在删除代码库窗口中,输入代码库的名称以确认删除。
请点击删除来确认操作。
后续步骤
如需详细了解 Dataform,请参阅 Dataform 概览。
如需详细了解 Dataform 功能,请参阅 Dataform 功能。
如需详细了解 Dataform Core,请参阅 Dataform Core 概览。
如需了解如何替换代码库的默认 Dataform 设置,请参阅配置 Dataform 工作流设置。
如需详细了解如何在 BigQuery 中管理数据集,请参阅管理数据集。
如需详细了解如何在 BigQuery 中管理表,请参阅管理表。