将工作区用于 dbt Projects on Snowflake¶
Snowsight 中的工作区为 dbt 项目提供基于 Web 的集成开发环境 (IDE),该环境可以连接并同步到 Git 存储库。dbt Projects on Snowflake 的每个工作区可以代表单个 dbt 项目或多个 dbt 项目,具体取决于您组织文件和文件夹的方式。
您可以使用 dbt Projects on Snowflake 的工作区直接在 Snowflake 中可视化、测试和运行 dbt 项目。工作区提供了一种快速初始化(或构建)新 dbt 项目的方法,该方法会在现有的 git 存储库中创建必要的文件和目录(例如 dbt_project.yml)或创建新的 dbt 项目。您还可以将工作区连接到 Snowflake 中的 dbt 项目对象,这样您就可以从工作区创建和更新对象。
除了支持 dbt 项目外,工作区还提供统一的编辑器供您创建、组织和管理 Snowflake 中多种文件类型和项目的代码。有关更多信息,请参阅 工作区。
将工作区与 dbt 项目结合使用的限制、要求和注意事项¶
以下要求、注意事项和限制适用于 dbt Projects on Snowflake 的工作区:
Snowflake 工作区中的每个 dbt 项目文件夹都必须包含一个
profiles.yml文件,该文件在 Snowflake 中为该项目指定目标warehouse、database、schema和role。必须将type设置为snowflake。dbt 需要account和user,但与 dbt Core 不同,这些可以移除、留空或是任意字符串,因为 dbt 项目在 Snowflake 中的当前账户和用户上下文下运行。工作区中的 dbt 项目的文件夹结构中不能包含超过 20,000 个文件。此限制包括 dbt 项目目录和子目录中的所有文件,包括
target/dbt_packages/logs目录,当从工作区中运行 dbt 项目时,日志文件会保存在这些目录中。
个人数据库要求¶
工作区是在个人数据库中创建的,不能与其他用户共享。必须在账户级别启用个人数据库,这需要 ACCOUNTADMIN 权限。有关更多信息,请参阅 Manage access and behavior。
Git 存储库¶
将 dbt Projects on Snowflake 的工作区连接到 Git 存储库时适用的要求、注意事项和限制请参见 Snowflake 中的 Git 限制。
通过 PrivateLink 访问的 Git 存储库必须事先配置。有关更多信息,请参阅 配置 Snowflake 以通过公共网络进行访问。