
<aside>
🧠 Qué es dbt™?
dbt™ es una herramienta para transformación de datos priorizando SQL, permite a los equipos desplegar rápidamente y de manera colaborativa código analítico siguiendo las mejores prácticas de ingeniería de software como la modularidad, portabilidad, CI/CD y documentación. Ahora cualquier persona en el equipo de datos puede contribuir de manera segura a la creación de pipelines de datos en producción.
</aside>
1. Introducción a dbt
¿Qué es dbt y cómo se utiliza en el contexto de DE?

dbt es la T de un ETL
dbt (data build tool) es una herramienta de línea de comandos (CLI) que permite a los equipos de ingeniería de datos transformar datos de su data lake o data warehouse directamente utilizando SQL, el lenguaje más comúnmente usado en el análisis de datos. dbt se utiliza para organizar, limpiar, transformar y agregar datos después de que han sido almacenados (una práctica conocida como ELT, Extract, Load, Transform), lo que permite a los analistas y a los ingenieros de datos colaborar y construir flujos de trabajo de transformación de datos de manera más eficiente y con mejores prácticas de ingeniería de software.
Ventajas de dbt vs. otras herramientas ETL tradicionales
dbt ofrece varias ventajas sobre herramientas ETL tradicionales que realizan la extracción, carga y transformación (ETL) como un proceso integrado:

Ventajas como Testing, Documentación, CI/CD, Versionado, etc.
- SQL-First Approach: dbt permite que los ingenieros y analistas utilicen SQL para definir transformaciones de datos, lo que hace que sea accesible para un público más amplio.
- Modularidad y Reutilización: Los modelos en dbt se pueden organizar en módulos reutilizables, facilitando la gestión de dependencias y la modularización del código.
- Pruebas y Documentación Integradas: dbt facilita la creación de pruebas para verificar la calidad de los datos y genera documentación automáticamente, lo que ayuda a mantener la calidad y la comprensibilidad del almacén de datos.
- CI/CD y Versionado: Compatible con prácticas de integración continua y despliegue continuo, dbt se integra fácilmente con sistemas de control de versiones, lo que permite una colaboración efectiva y un seguimiento de cambios en el tiempo.
Componentes básicos de dbt y arquitectura general
dbt consta de varios componentes clave que juntos facilitan la transformación de datos:
- Modelos: Son archivos SQL que representan las transformaciones que se aplicarán a los datos brutos. Estos modelos pueden depender unos de otros, creando una cadena de transformaciones gestionada por dbt.
- Tests: dbt permite definir tests que pueden verificar la integridad de los datos, como pruebas de unicidad o de no nulidad, asegurando que los datos transformados cumplen con las expectativas.