dbt Projects on Snowflake 的限制、要求与注意事项

在使用 dbt Projects on Snowflake 之前,请先阅读本主题中的要求、注意事项和限制。

dbt 项目配置的限制、要求与注意事项

以下要求、注意事项和限制适用于 dbt Projects on Snowflake 支持的 dbt 项目配置:

  • 仅支持 dbt Core 项目。不支持 dbt Cloud 项目。dbt Projects on Snowflake 运行 dbt-core 版本 1.9.4 和 dbt-snowflake 版本 1.9.2。当您将现有的 dbt 项目迁移到 Snowflake 时,您的 dbt 版本不必与 Snowflake 版本保持一致。

  • Snowflake 工作区中的每个 dbt 项目文件夹都必须包含一个 profiles.yml 文件,该文件在 Snowflake 中为该项目指定目标 warehousedatabaseschemarole。必须将 type 设置为 snowflake。dbt 需要一个 account 和:code:user,但这些可以留空或是任意字符串,因为 dbt 项目在 Snowflake 中的当前账户和用户上下文下运行。

  • 工作区中的 dbt 项目的文件夹结构中不能包含超过 20,000 个文件。此限制包括 dbt 项目目录和子目录中的所有文件,包括 target/dbt_packages/logs 目录,当从工作区中运行 dbt 项目时,日志文件会保存在这些目录中。

存储过程的限制、要求与注意事项

当您使用存储过程来调用 EXECUTE DBT PROJECT 时,使用调用方权限存储过程。有关更多信息,请参阅 CREATE PROCEDURE创建存储过程

遥测、日志记录与追踪的限制、要求与注意事项

以下要求、注意事项和限制适用于 Snowflake 上针对 dbt 的遥测、日志记录和跟踪:

  • dbt Projects on Snowflake 的工作区不能动态流式传输标准输出,并且标准输出只能在命令完成时查看。

  • 查看日志和跟踪需要在 dbt 项目对象上设置 LOG_LEVEL 和 TRACE_LEVEL。有关更多信息,请参阅 Snowflake 上 dbt 项目的访问控制在 Snowflake 上监控 dbt 项目

  • 默认情况下,Snowflake 会在默认 SNOWFLAKE TELEMETRY.EVENTS 表中收集遥测数据。如果您有设置为账户事件表的自定义事件表,则会在那里收集遥测数据。如果您使用 Enterprise Edition 账户,则可以创建事件表来收集遥测数据,并将其与在其中部署 dbt 项目对象的数据库关联。有关更多信息,请参阅 事件表概述

语言: 中文