一、什么是DBT
dbt (data build tool)是一款流行的开源数据转换工具,能够通过 SQL 实现数据转化,将命令转化为表或者视图,提升数据分析师的工作效率。dbt 主要功能在于转换数据库或数据仓库中的数据,在 E(Extract)、L(Load)、T(Transform) 的流程中,仅负责转换(transform)的过程。 通过 dbt插件,数据分析师能够通过 SQL 直接建立表单并匹配数据,而无需关注创建 table 或 view 的过程,并且可以直观地看到数据的流动;同时能够运用 dbt 编写 SQL、进行测试、以及包管理等功能。
二、DBT官方支持的数据源
Data Platform latest verified version
AlloyDB (same as dbt-postgres)
Azure Synapse 1.3.0
BigQuery 1.2.0
Databricks 1.3.0 🚧
Dremio 1.3.0 🚧
Postgres 1.2.0
Redshift 1.2.0
Snowflake 1.2.0
Spark 1.2.0
Starburst & Trino 1.2.0 🚧
三、开源社区支持的数据源
Athena Greenplum Oracle
Clickhouse Hive Rockset
IBM DB2 Impala SingleStore
Doris & SelectDB Infer SQLite
DuckDB iomete SQL Server & Azure SQL
Dremio Layer Teradata
Exasol Analytics Materialize TiDB
Firebolt MindsDB Vertica
AWS Glue MySQL
Databend Cloud fal - Python models
四、DBT关于建模的两个特点
1、DBT 能避免编写DDL语句文章来源:https://www.toymoban.com/news/detail-661216.html
仅使用 查询SQL 语句或 Python dataframe编写业务逻辑,并返回所需的数据集,dbt 负责这些数据集的物化,从而构建可重用或模块化的数据模型,这些数据模型可以在后续工作中引用,而不是从每次分析的原始数据开始。这显著减少了数据查询的运行时间,dbt还能通过函数、工具包等构建和管理模型的ER图。
2、DBT 提供更可靠的分析不再复制和粘贴 SQL,因为这可能会导致逻辑更改时出错。dbt可以构建可重用的数据模型,并将其提取到后续模型和分析中。更改一次模型,该更改将传播到其所有依赖项。发布特定数据模型的规范版本,封装所有复杂的业务逻辑。此模型之上的所有分析都将包含相同的业务逻辑,而无需重新实现它。使用类似git一样成熟的源代码管理流程,如分支、拉取请求和代码评审。在基础数据上快速轻松地编写数据质量测试。
五、DBT建模功能总结
特征 描述
将SQL查询语句转化为关系 数据模型通过编写固定格式的标准select语句来实现,DBT能够识别一个模型配置文件内SQL语句之间的血缘关系,在将SQL语句执行为表或视图的同时,提取表或视图之间的关系进行展示。
固化模型的执行顺序 通过DBT做复杂的数据转换,将分多个步骤,关于每个步骤的执行顺序,DBT 通过REF函数分阶段实现转换。
类似git的版本控制 DBT将模型编写、版本控制和每个模型和字段编写描述等,通过类似git的模式进行管控。
数据模型管理功能 DBT 附带了一个包管理器,使得模型代码的公共和私有存储库能够被有权限的其他人直接调用。
本地文件导入 如一些码表信息、CSV文件等,能够直接加载为数据库中的表。
数据快照 DBT 提供了为某个时间点的原始数据创建快照的机制。
文章来源地址https://www.toymoban.com/news/detail-661216.html
到了这里,关于数据转换工具DBT介绍及实操(上)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!