▶ Qué es DBT (data build tool)

dbt

DBT (data build tool) es una librería en python creada por la compañía Fishtown Analytics (https://www.fishtownanalytics.com/). La versión más reciente (Junio de 2021) es dbt 0.19.1. Y es una gran herramienta para administrar las transformaciones y análisis que ocurren en una base de datos. En términos generales, dbt es una herramienta de gobierno de datos.

Cómo funciona dbt (data build tool)

Con el auge de las tecnologías en la nube (GCP, AWS, Alibaba Cloud, Huawei Cloud), se ha facilitado la implementación y uso de bases de datos para muchas compañías (ya que las soluciones son más rápidas y financieramente más accesibles). Sin embargo, el uso de las mismas es raramente organizado de manera sostenible, pues no existían herramientas que facilitaran estas actividades. ¿Dónde era visible esta desorganización? Muchos analistas haciendo múltiples consultas que no quedan documentadas en ningún lugar.

Por ejemplo, en un proceso standard de ETL (extract, transform, load), tomas datos de una fuente y los llevas a la base de datos (extract), los transformas (limpiando datos, añadiendo referencias) y los cargas en una herramienta de BI para su análisis/uso. El proceso de extracción termina con los datos en bruto cargados en la base de datos (raw), y el proceso de transformación, es decir, todos los queries/consultas que apuntan a esos datos en bruto, se queda casi siempre hueco, pues esas consultas no quedan en ningún lugar. Desde luego, esas consultas/queries tienen lugar en la base de datos, y probablemente quedan grabadas en las herramientas, pero en general estas consultas no están organizadas ni documentadas.

DBT permite gobernar estas consultas (haciendo un control de versiones en un repositorio, en general con github, gitlab, bitbucket), y también permite documentarlas de manera organizada y simplificada.

Esta es la forma en la que opera DBT:

  • Cada consulta es un modelo. Por ejemplo: “SELECT FIELD_A, FIELD_B FROM RAW_DATA
  • Este modelo se puede materializar en una tabla o una vista.
  • A esta tabla o vista, le corresponde un bloque de documentación donde se asocia:
    • La descripción de la consulta (¿para qué sirve?)
    • La descripción de cada campo (indicando todos los detalles posibles)
    • Tests sobre los datos, mismos que ayudan a asegurar la calidad de la información.
  • Los modelos y fuentes de datos (RAW) se pueden referenciar de manera sistemática y después se pueden visualizar las dependencias de manera gráfica.

Cómo se ejecuta DBT

Al día de hoy, es posible ejecutar DBT de tres maneras:

Recomendaciones para empezar con DBT.

Probablemente estés interesado en usar DBT. Te recomiendo ampliamente empezar por el curso introductorio que ofrece de manera gratuita Fishtown Analytics: https://courses.getdbt.com/courses/fundamentals. En este curso aprenderás los básicos y un poco más. Y en este blog seguiré añadiendo material relativo al uso de la herramienta.

dbt fundamentals

 

Copyright © Todos los derechos reservados | FDI Tecnología y Finanzas, SAS de CV. De no existir previa autorización, queda expresamente prohibida la Publicación, retransmisión, edición y cualquier otro uso de los contenidos.

One thought on “▶ Qué es DBT (data build tool)”

  1. Interesante articulo. Espero que puedas seguir publicando contenido sobre DBT. Saludos y gracias!

Comments are closed.