本文档可帮助您执行以下操作:
开发工作区概览
在 Dataform 中,您可以在开发工作区中与工作流代码互动,开发工作区是您自己的可修改的代码库副本。在工作区中,您可以创建、修改或删除代码库的内容,而不会影响在同一代码库中工作的其他人,然后将更改提交并推送到代码库。
您可以使用 Dataform 核心或 JavaScript 开发工作流。 Dataform 会实时将您的代码编译为 SQL 查询。
在开发工作区中,您可以执行以下任务:
- 配置 Dataform 设置。
- 创建所有受支持类型的表格。
- 文档表格。
- 分区表。
- 向表添加 BigQuery 标签和政策标记。
- 覆盖表格设置。
- 配置其他操作。
- 为工作流声明数据源。
- 向工作流添加自定义 SQL 操作和标记。
- 触发执行工作流或其选定操作。
- 监控执行日志。
开发工作区的组成部分
Dataform 开发工作区包含以下各部分中所述的标签页。
代码标签页
您可以使用代码标签页中的开发环境来探索文件、开发查询、对更改进行版本控制,以及触发对 BigQuery 的执行。该标签页包含以下组件,可用于开发工作流:
- 文件窗格:显示工作区的文件结构,并自动保存对文件结构的修改。所选文件会在开发窗格的标签页中打开。在输入内容进行搜索字段中,您可以按路径搜索工作区中的文件或目录。
- 版本控制窗格:显示工作区的版本控制状态和版本控制选项。
- 开发窗格:以标签页形式显示打开的文件。自动保存对已编辑文件的更改。
- 运行按钮:运行已编译 SQL 查询的预览。
- 格式按钮:用于设置 Dataform 核心代码或 JavaScript 代码的格式。
- 编译状态:显示工作区中代码的编译状态。
- 元数据窗格:显示已编辑文件的元数据。
- 已编译的查询窗格:将已编辑文件中的查询编译为 SQL。如果查询编译失败,该窗格会显示编译错误。如果查询编译成功,该窗格会显示已编译的查询,并通过针对 BigQuery 的试运行来验证这些查询。如果查询验证失败,该窗格会显示验证错误。如果查询验证成功,该窗格会显示向 BigQuery 执行查询将使用的字节数。
- 开始执行菜单:显示用于触发工作区中整个工作流或其所选元素执行的选项。
已编译的图表标签页
在已编译的图标签页中,您可以看到工作区中定义的已编译工作流,它以交互式有向无环图 (DAG) 的形式显示。该图显示了工作流中的所有操作以及它们之间的关系。如果工作流中存在编译错误,该标签页会显示错误消息,而不是图表。
您可以在图表中放大和缩小,并使用拖放功能进行导航。
您可以按以下属性过滤图表:
- 名称
- 标记
- 输入
- 断言
- 声明
- 增量表
- 物化视图
- 运维
- 表
- 未知
- 查看
您可以一次性选择多个过滤条件。Dataform 会通过 OR
条件应用这些过滤条件。
您可以点击图表中的某项操作,以在以下窗格中查看其详细信息:
- 元数据窗格:显示所选操作的完整名称、类型、依赖项和被依赖项。
- 查询窗格:显示所选操作的已编译 SQL 查询。
“执行”标签页
此标签页显示了工作区中触发的所有执行的日志。您还可以查看所选执行的操作及其详细信息。如需了解详情,请参阅监控执行日志。
工作区中的版本控制
在工作区中,您可以通过基于 Git 的版本控制与代码库进行交互。您对工作区中的文件所做的修改最初是未提交的本地更改,您可以提交这些更改,然后将其推送到代码库,以便所有代码库用户都可以使用这些更改。
如果您的代码库已连接到远程 Git 提供商,则您可以将工作区中的更改推送到主开发分支。将代码库连接到远程 Git 提供方时,您需要选择主分支。在未关联的 Dataform 代码库中,您将更改推送到默认分支。
您还可以从 Dataform 代码库或远程代码库中拉取任何更改,并将其与开发工作区中的本地更改合并。如需详细了解 Dataform 中的版本控制,请参阅对代码进行版本控制。
准备工作
创建 Dataform 代码库(如果您尚未创建)。
所需的角色
如需获得创建、初始化和删除开发工作区所需的权限,请让管理员向您授予工作区的 Dataform Editor (roles/dataform.editor
) IAM 角色。
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
创建 Dataform 开发工作区
首次在新代码库中创建开发工作区时,Dataform 会提示您使用一组配置文件来初始化开发工作区,这些配置文件是 Dataform 正常运行所必需的。
初始化后的开发工作区包含以下目录和文件:
definitions/
:用于存放 Dataform 核心或 JavaScript 中的资源定义的目录。includes/
:一个空目录,用于存放可在整个代码库中重复使用的脚本和变量。workflow_settings.yaml
:包含 Google Cloud 项目 ID 和用于发布资产的 BigQuery 架构的默认 Dataform 配置文件。您可以替换默认设置,根据自己的需求进行自定义,但自定义并不是开始使用 Dataform 的必要条件。package.json
:包含最新版@dataform/core
的默认 Dataform 依赖项配置文件。您可以使用此文件导入软件包。definitions/sample.sqlx
:一个示例 SQLX 文件,可帮助您入门。
如需创建新的 Dataform 开发工作区,请按以下步骤操作:
在 Google Cloud 控制台中,前往 Dataform 页面。
选择要在其中创建新开发工作区的代码库。
在代码库页面上,点击创建开发工作区。
在创建开发工作区窗口中,执行以下操作:
在工作区 ID 字段中,输入开发工作区的唯一 ID。
ID 只能包含数字、字母、连字符和下划线。
点击创建。
在 Dataform 代码库中初始化工作区
如需初始化 Dataform 开发工作区,请按以下步骤操作:
在 Google Cloud 控制台中,前往 Dataform 页面。
选择要初始化空工作区的代码库。
在开发工作区标签页中,点击要初始化的空白工作区的名称。
在开发工作区页面上,点击初始化工作区。
删除 Dataform 工作区
创建 Dataform 开发工作区不会产生任何相关费用。不过,如果您想删除开发工作区,请按以下步骤操作:
在 Google Cloud 控制台中,前往 Dataform 页面。
选择包含要删除的工作区的代码库。
为避免删除未提交的更改,请提交更改并将其推送到 Git 代码库。
在开发工作区标签页中,选择要删除的开发工作区,然后点击删除所选工作区。
您可以一次性删除多个工作区。
请点击删除来确认操作。