在旧版 Dataform 中,您可以在 environments.json
文件中定义环境和进行调度。
以下代码示例显示了旧版 Dataform 中的 environments.json
文件中的 production
和 staging
环境的定义以及相应时间表:
// example of an environments.json file
{
"environments": [
{
"name": "production",
"configOverride": {},
"schedules": [
{
"name": "daily",
"cron": "30 14 * * *",
"tags": [
"daily"
]
},
{
"name": "hourly",
"cron": "*/5 * * * *",
"disabled": false
}
],
"gitRef": "master"
},
{
"name": "staging",
"configOverride": {
"schemaSuffix": "staging"
},
"schedules": [
{
"name": "daily (all)",
"cron": "42 16 * * mon,tue,wed,thu,fri,sat,sun"
}
],
"gitRef": "master"
}
]
}
在 Google Cloud 的 Dataform 中,配置环境和时间表分为两种体验:
- 版本配置
- 与旧版 Dataform 环境类似,用于为不同的环境配置编译设置,例如
staging
和production
。
通过版本配置,您可以配置 Git 提交和编译替换,从而对编译结果的创建进行自定义。Dataform 基于版本配置创建编译结果,与工作流配置时间表无关。这意味着,即使您的远程 Git 提供程序不可用,来自版本配置的已安排编译结果也可以运行。
创建版本配置时,您可以设置创建编译结果的频率。此外,您还可以手动或在自动化的持续部署流程中根据版本配置创建编译结果。
- 工作流配置
- 相当于旧版 Dataform 时间表,用于根据发布配置安排编译结果的执行。
首先,您需要创建版本配置并为所选环境(例如 staging
)定义编译设置。然后,创建工作流配置并定义执行 staging
编译结果的时间表。
迁移环境和时间表的方法
您可以通过以下方式将旧环境和时间表迁移到版本配置和工作流配置:
- 在 Dataform 中配置发布和工作流配置
- 使用 Dataform API 配置发布和工作流配置
使用 Dataform API 来配置版本配置和工作流配置。
或者,您可以通过以下方式迁移旧环境和时间表:
- 通过 Dataform API 将自定义配置应用于
environments.json
- 您可以将
environments.json
文件保留在代码库中,并使用您选择的工具配置持续部署流程。在持续部署过程中,合并到默认分支时,通过environment.json
文件中更新版本配置和工作流配置。 - 绕过发布和工作流配置
- 您可以绕过版本和工作流配置,并将开源 Dataform CLI、Dataform API 或 Dataform API 与 Cloud Composer 或 Workflows 结合使用来编译代码库并执行工作流。
迁移工作流提醒
Dataform 为工作流调用提供 Cloud Logging。这些日志包含可用于监控和调试工作流的信息:
receiveTimestamp
release_config_id
repository_id
resource_container
workflow_invocation_id
workflow_config_id
severity
:可以是INFO
、WARNING
或ERROR
terminalState
:可以是SUCCEEDED
、CANCELED
或FAILED
timestamp
@type
您可以将 Cloud Logging 与 Cloud Monitoring 搭配使用,以配置与旧版提醒类似的提醒。
借助 Cloud Monitoring,您可以配置以下指标和提醒:
- 您可以按以下方式使用基于日志的指标:
- 创建提醒政策以通知您一段时间的变化。
- 创建随时间显示变化的图表。
- 基于日志的提醒,可在日志中出现特定事件时通知您。
如需了解详情,请参阅查看 Cloud Logging for Dataform
后续步骤
- 如需了解如何创建版本配置,请参阅创建版本配置。
- 如需了解如何创建工作流配置,请参阅使用工作流配置安排执行。
- 如需详细了解 Dataform 中的代码生命周期,请参阅 Dataform 中的代码生命周期简介。
- 如需了解如何从旧版 Dataform 迁移到 Google Cloud 中的 Dataform,请参阅从旧版 Dataform 迁移。