当前位置: 首页 > news >正文

dbt:新一代数据转换工具

dbt(Data Build Tool)一款专为数据分析和工程师设计的开源工具,专注于 ETL/ELT 流程的数据转换(Transform)环节,帮助用户以高效、可维护的方式将原始数据转换为适合分析的数据模型。

在这里插入图片描述

用户只需要编写查询(SELECT)语句或者 Python 代码,dbt 负责将这些语句和代码转换为表、视图或者数据集;多个查询语句(也称为模型)组成一个 dbt 项目,一个模型通常基于其他模型构建,dbt 负责管理它们之间的关系和依赖。

在这里插入图片描述
dbt 通过将版本控制、模块化、可移植性、CI/CD 以及测试和文档化等软件工程最佳实践引入数据分析的工作流之中,提升了数据转换的可靠性和可维护性。dbt 的主要功能包括:

  • 简化开发,通过编辑模块化的查询语句或者 Python 代码,避免了数据转换过程中重复的表创建和维护;
  • 动态 SQL,支持使用 Jinja 模板实现动态 SQL(如变量、循环、条件语句),提升代码复用性;
  • 定义模块顺序,使用 ref 函数基于其他模型定义新的模型,实现模块之间的依赖和执行顺序;
  • 文档生成,支持自动生成项目和数据文档,可视化表与字段的依赖关系;
  • 模型测试,确保转换模型的准确性和完整性;
  • 包管理,模块化代码管理和共享;
  • 种子文件,通过 CSV 文件加载参考表、配置表等静态数据;
  • 数据快照,通过记录数据的历史状态变化,支持数据回溯。

dbt 支持连接各种数据库、数据仓库、数据湖以及查询引擎,包括 AlloyDB、Apache Spark、Athena、Azure Synapse、BigQuery、Databricks、Dremio、Glue、IBM Netezza、Materialize、Microsoft Fabric、Oracle、PostgreSQL、Redshift、Snowflake、Trino、Teradata、Clickhouse、CrateDB、Databend、Doris、DuckDB、Hive、DB2、Impala、MySQL、SQL Server & Azure SQL、SQLite、Starrocks、TiDB、TimescaleDB、Spark 等数据平台。

在这里插入图片描述

dbt 提供了两种形式的产品:

  • dbt Core:免费开源的 CLI 工具,支持命令行形式开发和运行 dbt 项目。
  • dbt Cloud:基于 Web 的托管服务,提供 UI 界面以及各种企业级功能;对个人开发者免费。

dbt Cloud输入以下网址并注册一个免费账号:https://www.getdbt.com/signup

在这里插入图片描述

本地安装可以参考官方文档:https://docs.getdbt.com/

相关文章:

  • 程序化广告行业(78/89):多因素交织下的行业剖析与展望
  • Linux-内核驱动-中断-key
  • 【Sequelize】迁移和种子
  • QT聊天项目DAY01
  • 设计模式 --- 命令模式
  • C++进阶——C++11_{ }初始化_lambda_包装器
  • Flutter常用组件实践
  • python+requests接口自动化测试框架实例教程
  • C#容器源码分析 --- Queue<T>
  • 2025届蓝桥杯JavaB组个人题解(暂时不全,没题目)
  • 【AI】AI大模型发展史:从理论探索到技术爆发
  • [创业之路-366]:投资尽职调查 - 尽调核心逻辑与核心影响因素:价值、估值、退出、风险、策略
  • webpack vite
  • 基于 Termux 在移动端配置 Ubuntu 系统并搭建工作环境
  • DeepSeek在应急救援领域的应用解决方案
  • docker测试镜像源
  • 如何在运行时获取硬件信息
  • day24 学习笔记
  • Linux:35.其他IPC和IPC原理+信号量入门
  • 自动驾驶的数据集以及yolov8和yolop
  • 知识产权教育网站建设方案/seo整站优化什么价格
  • 从做系统后以前的网站打不开了怎么办理/店铺运营
  • wordpress4.9升级失败/重庆网站优化软件
  • 软件开发工具的集成可以分成哪几个层次/深圳seo外包
  • 建设网站的主要流程有哪些/app搜索优化
  • 做个人网站用什么程序/营销推广计划