创建开发工作区

本文档可帮助您执行以下操作:

开发工作区概览

在 Dataform 中,您可以在开发工作区中与工作流代码进行交互,开发工作区是您自己的代码库可修改副本。在工作区中,您可以创建、修改或删除代码库的内容,而不会影响在同一代码库中工作的其他人,然后提交更改并将其推送到代码库。

您可以使用 Dataform 核心JavaScript开发工作流。Dataform 会实时将您的代码编译为 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:默认的 Dataform 配置文件 其中包含 Google Cloud 项目 ID 和 BigQuery 架构,用于发布 资产。您可以 替换默认设置 以根据需要进行自定义,但自定义不是 开始使用 Dataform 的必要条件。

  • package.json:默认的 Dataform 依赖项配置文件,其中包含最新版本的 @dataform/core。您可以使用此文件来 导入软件包

  • definitions/sample.sqlx:一个示例 SQLX 文件,可帮助您入门。

如需创建新的 Dataform 开发工作区,请按以下步骤操作:

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

    前往 Dataform

  2. 选择要在其中创建新开发工作区的代码库。

  3. 在代码库页面上,点击创建开发工作区

  4. 创建开发工作区 窗口中,执行以下操作:

    1. 工作区 ID 字段中,输入开发工作区的唯一 ID。

      ID 只能包含数字、字母、连字符和下划线。

    2. 点击创建

在 Dataform 代码库中初始化工作区

如需初始化 Dataform 开发工作区,请按以下步骤操作:

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

    前往 Dataform

  2. 选择要在其中初始化空工作区的代码库。

  3. 开发工作区 标签页中,点击要初始化的空工作区的名称。

  4. 在开发工作区页面上,点击初始化工作区

删除 Dataform 工作区

创建 Dataform 开发工作区不会产生任何相关费用。但是,如果要删除开发工作区,请按以下步骤操作:

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

    前往 Dataform

  2. 选择包含要删除的工作区的代码库。

  3. 为避免删除未提交的更改, 请提交更改并将其推送到 Git 代码库

  4. 开发工作区 标签页中,选择要删除的开发工作区,然后点击删除所选工作区

    您可以一次删除多个工作区。

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

后续步骤