工作流概览

本文档可帮助您了解 Dataform 中工作流的架构和执行。

您可以使用 Dataform 开发、测试和版本控制工作流,然后在 BigQuery 中运行这些工作流,以转换数据供分析之用。您可以使用 Dataform 核心(使用 SQLX 文件和可选的 JavaScript 文件)或 JavaScript 开发工作流。

工作流可以包含以下对象:

数据源声明
BigQuery 数据源的声明,可让您在 Dataform 表定义和 SQL 操作中引用这些数据源。
Tables
您在 Dataform 中基于声明的数据源或工作流中的其他表创建的表。Dataform 支持以下表类型:表、增量表、视图和物化视图。
断言
可用于验证表格数据的数据质量测试查询。 Dataform 每次更新工作流时都会运行断言,并在任何断言失败时提醒您。
自定义 SQL 操作
Dataform 在 BigQuery 中按原样运行的 SQL 语句,无需修改。
包含
包含变量和函数定义的 JavaScript 文件,您可以在整个工作流程中重复使用这些变量和函数。

工作流的可视化

您可以查看以有向无环图 (DAG) 形式直观呈现的工作流。DAG 会显示工作区中定义的工作流的所有对象以及它们之间的关系。您可以在 DAG 中放大和缩小,并使用拖放导航。如果工作流中存在编译错误,Dataform 会显示错误消息,而不是 DAG。

如需查看工作流的 DAG,请在工作区中点击已编译的图

工作流的执行

在开发工作区中,您可以手动触发运行整个工作流、所选操作或所选代码。

您可以使用 Dataform 版本配置工作流配置来安排运行。 首先,创建发布配置,以创建代码库的编译结果。然后,创建工作流配置,选择发布配置,选择要运行的工作流操作,并设置运行时间表。

或者,您也可以使用 Cloud ComposerWorkflows 和 Cloud Scheduler 来安排运行。

在执行期间,Dataform 会按照工作流中的对象依赖项顺序在 BigQuery 中运行 SQL 查询。执行后,您可以使用定义的表和视图在 BigQuery 中进行各种分析。

执行配置选项

如需运行工作流操作的特定群组,您可以向所选文件添加 Dataform 执行标记。然后,您可以在手动触发运行后仅运行具有所选标记的文件

默认情况下,Dataform 会使用 dataform.json 文件中定义的执行设置来运行工作流。您可以使用编译替换项替换这些执行设置。

借助工作区编译替换,您可以将工作区转变为隔离的执行环境。这意味着,当您在工作区中手动触发执行时,Dataform 会在 BigQuery 的隔离位置运行输出。

如需创建和运行具有编译替换项的单个编译结果,您可以通过 Dataform API 传递请求。

借助发布配置,您可以为整个代码库配置编译替换项,还可以配置使用应用设置创建编译结果的频率。

如需详细了解如何在 Dataform 中配置编译和代码生命周期,请参阅 Dataform 中的代码生命周期简介

后续步骤