数据转换是现代数据分析的支柱,dbt已经成为这个领域的关键角色。
dbt source
命令是dbt命令体系中重要的一个,它让用户无缝管理原始数据表引用。本文深入讲解该命令的详细用法,确保你能力利用其完整潜能。
dbt source 概述
DBT source 表示数据仓库中的原始数据表,是DBT转换的基础数据源。dbt source不是直接引用这些表,而是提供了一种抽象,增强了可维护性和清晰度。通过将表声明为源,可以将其标记为转换的可信基础,从而启用数据新鲜度检查等功能。在业务上下文中,源可以表示原始销售数据、客户交易数据或库存数据。
dbt source 命令设计用于管理基础数据源,它的主要子命令 dbt source freshness
,可以检查原始数据表的新鲜度,确保数据是最新的、可靠的。
案例实战
在分析系统中,源数据是直接来自业务系统的原始的、未处理的信息。例如,对于家电子商务企业,那么源数据可能是原始销售交易数据、原始客户列表和原始历史库存数据。使用dbt source
可以创建对这些表的引用,从而简化转换过程。
下面介绍如何使用 dbt source freshness
命令,首先需要增加 loaded_at_field
字段至 sources.yaml 文件。下面示例来自源数据的两张表:subscriptions 和 customers ,两者都有字段 _synced_at ,表示数据同步时间。设置数据新鲜度警告条件:超过2天警告;报错条件;超过7天报错。
sources:
- name: raw
database: analytics_db
schema