dbt 包和项目依赖

由于 Recurve 数据建模的核心功能依赖于 dbt,因此也支持外部 dbt 包(Packages)和项目依赖(Dependencies)。

什么是 dbt 包?

定义

dbt 包是将 dbt 资源封装成文件夹结构的集合。类似于软件工程中的代码库,dbt 包是可重用的资源集合(如源、模型和宏),可以在多个项目之间分发和复用。这些包通常由其他团队或社区创建,提供有用的功能、最佳实践或行业特定的逻辑。

优势

  • 代码重用性:通过 dbt 包,您可以在多个项目中复用经过测试的模型、宏和转换,节省开发时间。

  • 标准化:通过使用共享包,能够在团队间应用一致的逻辑和最佳实践。

  • 协作:团队可以将自己的工作打包成包,与其他团队共享,从而避免重复造轮子。

  • 社区资源:开源包提供由社区维护的行业标准工具和实用程序,减少了定制开发的需求。

什么是 dbt 项目依赖?

定义

通过包的灵活性和模块化,每个 dbt 项目都可以作为一个包进行使用。这意味着一个项目可以依赖另一个项目中的模型、资源或数据。这样的结构允许多个团队在保持项目独立性的同时进行协作并共享数据模型。

项目之间的依赖关系可以动态解析,因此您可以引用其他项目中的模型,而无需将其源代码直接纳入到自己的项目中。

优势

  • 共享逻辑:团队可以跨多个项目重用模型,从而促进一致性并减少重复工作。

  • 动态解析:依赖关系会被动态解析,您无需手动引入其他项目的源代码,使得项目管理更加简洁和易于维护。

  • 明确的边界:每个团队依然保持对自己项目的控制权,同时其他团队也能从中获益。

Recurve通过“包管理/ Packages”“依赖管理/ Dependencies”功能简化了包导入和依赖管理的流程。

管理包

要访问“包管理/ Packages”菜单,您只需在项目的顶部导航栏中点击“包/ Packages”即可。

该菜单会显示一个精选的包列表,您可以选择将它们安装到您的项目中。

安装包

您可以搜索包,在“版本列 / Version”中选择特定版本,并打开“安装 / Install”选项。这样,包的资源就可以在您的项目中使用了。

要查看完整的包列表及其描述,请参考Package Hub——这是一个由dbt社区维护的dbt包注册中心: Package Hub

卸载包

要卸载一个包,只需在“包管理/ Packages”菜单中找到该包所在行,并关闭“安装/ Install ”选项即可。

请注意,卸载后,所有引用该包资源的地方可能会出现失败。

管理依赖

要访问“项目依赖 / Dependencies”菜单,您只需在项目的顶部导航栏中点击“项目依赖 / Dependencies”即可。

“项目依赖 / Dependencies”菜单会列出您组织中的所有项目及相关信息,包括正在使用的分析数据库和项目所有者。

连接依赖项目

要将组织中的另一个项目作为依赖项目连接,只需在列表中找到该项目并启用“连接 / Connect”选项。

此时,来自依赖项目的所有Public 资源,例如源、模型和宏等,都可以在当前项目中使用。请查阅:元数据类型

移除依赖项目

若要移除依赖项目,直接在“项目依赖 / Dependencies”中找到该项目并关闭“连接 / Connect”选项即可。

请注意,当前项目中依赖于被移除项目的所有资源可能会导致失败。

Last updated