De ETLs a ELTs
¿por qué el cambio?
Integrar datos de los sistemas transaccionales es fundamental para cualquier negocio que busca analizar sus datos. Tradicionalmente, el proceso se ha llevado a cabo mediante ETLs (Extraer, Transformar, Cargar). Sin embargo, es normal experimentar cambios en una organización (cambian sistemas, metricas y personas), lo que ha llevado a las empresas a una transición hacia un enfoque más flexible y eficiente: hacer ELTs (Extraer, Cargar, Transformar). Este cambio no solo refleja una reorganización de letras, sino una profunda reevaluación de cómo se deben manejar los datos para facilitar como trabajamos con ellos.
¿Qué es ELT y cómo difiere de ETL?
ETL ha sido el método estándar para mover datos desde sistemas transaccionales hasta un data warehouse. Este proceso implica extraer datos de diversas fuentes, transformar estos datos en un formato adecuado a través de una serie de pasos de limpieza y consolidación, y finalmente cargarlos en un sistema que los analistas pueden utilizar para extraer insights. Aunque efectivo, este método puede ser lento y pesado, especialmente con grandes volúmenes de datos, principalmente debido a que tanto la extracción como la transformación ocurren en la misma ejecución.
Por otro lado, ELT moderniza este enfoque. La principal diferencia radica en el orden de las operaciones: la transformación de los datos se realiza después de haber sido cargados en el data warehouse. Esto significa que los datos brutos, en su formato original, se trasladan directamente al data warehouse, lugar en donde se realizan las transformaciones necesarias. Esta metodología aprovecha la potencia y la escala del data warehouse moderno, permitiendo manejar grandes volúmenes de datos de manera más eficiente.
Razones detrás del cambio de ETL a ELT
Los ELTs ofrecen una ventaja significativa sobre los tradicionales ETLs. Al posponer la transformación de los datos hasta después de su carga, las empresas pueden adaptarse más rápidamente a los cambios en sistemas, métricas y personal. Este enfoque no solo permite una mayor agilidad en la reconfiguración de procesos de datos conforme cambian las necesidades del negocio, sino que también reduce la carga computacional durante las etapas críticas de extracción y carga.
Adicionalmente, este cambio facilita la definición de roles específicos para cada etapa del proceso de datos. Los Data Engineers, que generalmente poseen un perfil más orientado al desarrollo de software, pueden concentrarse exclusivamente en mover los datos del punto A al punto B de manera eficiente, sin necesidad de profundizar en las reglas de negocio. Por otro lado, los Analytics Engineers, una figura en crecimiento, se encargan de transformar los datos brutos en formatos que los Data Analysts y Data Scientists pueden utilizar fácilmente, aplicando las transformaciones y lógicas de negocio necesarias para hacer los datos útiles y accesibles.
Herramientas para la etapa de extracción y carga
Para llevar a cabo la extracción y carga eficiente en un proceso de ELT, herramientas como Airflow, Prefect, y Pentaho Data Integration juegan un papel crucial. Estas herramientas están diseñadas para construir y orquestar flujos de datos, los cuales buscan mover datos brutos de los sistemas de origen hacia el datawarehouse de manera fluida y confiable. Airflow y Prefect, por ejemplo, ofrecen capacidades avanzadas de orquestación y monitoreo, lo que permite a los equipos de datos tener un mayor control y visibilidad sobre el proceso de extracción y carga, optimizando así la eficiencia del flujo de datos sin comprometer la calidad. Pentaho Data Integration, a pesar de no ser considerada una herramienta moderna, sigue siendo una opción muy utilizada para la construcción de flujos de datos.
La transformación en ELT con dbt
Una vez que los datos están en el data warehouse, herramientas como dbt (data build tool) entran en juego para manejar la transformación. dbt se especializa en la transformación de datos dentro del data warehouse, trayendo buenas prácticas del mundo de desarrollo de software a la generación de tablas analíticas, que usualmente solo se hace a través de creación de vistas en la base de datos. Esta herramienta incorpora control de cambios, permite agregar tests, facilita la generación de documentación, entre otros, haciendo que la transformación sea más manejable y transparente.
Beneficios del enfoque ELT para empresas modernas
Adoptar un enfoque ELT tiene múltiples beneficios para las empresas modernas. Permite una mejor separación del trabajo de extracción de datos y su análisis, facilitando que los equipos de analistas y científicos de datos accedan a datos más frescos y en su forma más granular. Además, al minimizar las operaciones de transformación previas a la carga, las empresas pueden reducir significativamente los tiempos de espera para la disponibilidad de datos, mejorando así la toma de decisiones basada en datos en tiempo real. También ayuda a adaptar los procesos en el tiempo, dado que cuando existen cambios de lógicas, sólo se tienen que hacer cambios en la etapa de transformación (dbt) y no en los flujos de datos de carga.