dbt 项目对象和文件的版本

Snowflake 会维护 dbt 项目对象及其源文件的不可变版本。通过此版本控制,您可以在整个开发生命周期中跟踪和管理变更。

备注

dbt 项目对象版本与用于执行的 dbt Core 版本不同。有关更多信息,请参阅 支持的 dbt Projects on Snowflake 的 dbt Core 版本

Snowflake 通过以下示例所示的方式识别 dbt 项目暂存区中的 dbt 项目对象版本。

snow://dbt/my_db.my_schema.my_dbt_project_object/versions/version_id

version_id 可以是以下任一标识符:

标识符

描述

VERSION$num

指定表单 VERSION$num 中的版本标识符,其中 num 是正整数。例如 VERSION$1

当您创建 dbt 项目对象时,版本号从 1 开始,并随着 dbt 项目对象的每个新版本递增一。

当您执行以下任务时,Snowflake 会递增版本标识符:

  • 从工作区中 :ui:`Redeploy dbt project`(运行带 ADD VERSION 选项的 ALTER 命令)。

  • 通过使用 ALTER DBT PROJECT 命令更新项目。

  • 运行带 --force 选项的 Snow CLI snow dbt deploy 命令。

当您使用选项 OR REPLACE 运行 CREATE DBT PROJECT 命令时,Snowflake 会将版本标识符重置为 1 并移除所有版本别名。

LAST

表示 dbt 项目对象的最新版本。

FIRST

表示 dbt 项目对象的最早版本。

version_name_alias

表示您已使用带 ADD VERSION 选项的 ALTER DBT PROJECT 命令为特定版本的 dbt 项目对象创建的自定义版本名称别名。版本名称别名始终映射到特定的版本标识符,例如 VERSION$3

存储在 dbt 项目暂存区中的项目文件按版本进行组织,每个版本都有自己的子目录。例如,名为 my_dbt_project_object、版本标识符为 VERSION$3 且 dbt 项目文件名为 dbt_project.yml 的 dbt 项目对象,可以引用为 snow://dbt/my_db.my_schema.my_dbt_project_object/versions/VERSION$3/dbt_project.yml