Los procesos ETL son una parte de la integración de datos, pero es un elemento importante cuya función completa el resultado de todo el desarrollo de la cohesión de aplicaciones y sistemas.
Los procesos ETL son un término estándar que se utiliza para referirse al movimiento y transformación de datos. Se trata del proceso que permite a las organizaciones mover datos desde múltiples fuentes, reformatearlos y cargarlos en otra base de datos (denominada data mart o data warehouse) con el objeto de analizarlos. También pueden ser enviados a otro sistema operacional para apoyar un proceso de negocio.
En definitiva, el principal objetivo de este proceso es facilitar el movimiento de los datos y la transformación de los mismos, integrando los distintos sistemas y fuentes en la organización moderna.
El término ETL corresponde a las siglas en inglés de:
-
Extract: extraer.
-
Transform: transformar.
-
Load: cargar.
Fases de un proceso ETL
Las distintas fases o secuencias de un proceso ETL son las siguientes:
-
Extracción de los datos desde uno o varios sistemas fuente.
-
Transformación de dichos datos, es decir, posibilidad de reformatear y limpiar estos datos cuando sea necesario.
-
Carga de dichos datos en otro lugar o base de datos, un data mart o un data warehouse, con el objeto de analizarlos o apoyar un proceso de negocio.
La limpieza de datos como etapa separada de los procesos ETL
Aunque podría entenderse como una acción integrada en la fase de transformación de datos, en la actualidad la tendencia es considerar la limpieza de datos como una fase separada del proceso ETL.
Esta visión corresponde a una concepción más moderna y práctica del proceso. Para ahorrar tiempo y ganar en efectividad es conveniente unificar criterios, por ejemplo introduciendo “av” en vez de “avenida” en todos los registros de una base de datos de direcciones postales, ANTES de empezar el proceso ETL propiamente dicho.
Tan importante es tener la información consolidada como que todos los datos sean correctos y con una visión única para todos los usuarios. Solo así se pueden lograr unos circuitos de trabajo y análisis de dichos datos realmente óptimos y efectivos.
¿Qué sistemas se pueden integrar en un proceso ETL?
Los procesos ETL pueden incluir:
-
Sistemas legacy. Es decir, legados, heredados o antiguos .
-
Sistemas nuevos. Basados en Windows, Linux y también en las redes sociales modernas: Facebook, Twitter, Linkedin, etc.
Los sistemas legacy o heredados se caracterizan, generalmente, por: ser cerrados, no permitir cambios y tener un difícil acceso (normalmente se necesita algún tipo de driver especial). Son sistemas que procesan hacia dentro y, por lo tanto, no permiten la agregación de una computadora que trabaje en paralelo.
Por el contrario, los sistemas nuevos o modernos (basados en Windows o Linux) son abiertos, amplios e interconectados. Un ejemplo lo constituiría una granja de servidores Linux, la cual permite la interconexión de los distintos nodos entre sí.
Tal vez te interese leer:
Staging: la salvaguarda de los procesos ETL
Beneficios de los procesos ETL
A cualquier empresa u organización le beneficia poner en marcha un proceso ETL para mover y transformar los datos que maneja por los siguientes motivos:
-
Poder crear una Master Data Management, es decir, un repositorio central estandarizado de todos los datos de la organización. Por ejemplo, si tenemos un objeto cliente en una base de datos de créditos y otro objeto cliente en la base de datos de tarjetas de crédito, lo que haría el Master sería definir, de forma concreta e inequívoca, un registro cliente único con su nombre y apellidos para la organización.
-
Posibilita a los directivos tomar decisiones estratégicas basadas en el análisis de los datos cargados en las bases nuevas y actualizadas: la dama mart o data warehouse.
-
Sirve para integrar sistemas. Las organizaciones crecen de forma orgánica y cada vez se van agregando más fuentes de datos. Esto provoca que comience a surgir nuevas necesidades, como por ejemplo integrar los datos de un banking on line con los datos antiguos de un sistema legacy.
-
Poder tener una visión global de todos los datos consolidados en una data warehouse. Por ejemplo, crear una estrategia de marketing basándose en el análisis de los datos anteriores.
Proceso ETL: un sistema efectivo, pero con retos y cuestiones a resolver
Como hemos visto, los procesos ETL son muy útiles y beneficiosos para las organizaciones por su capacidad para integrar grandes bases de datos, logrando así una visión única global que permite, a los analistas y directivos, tomar las decisiones estratégicas adecuadas.
La implantación de un sistema ETL bien definido supone todo un reto puesto que, para que sea realmente efectivo, debe permitir integrar los sistemas legacy (algunos ya muy obsoletos) con los más modernos. Además, el acceso a todos estos sistemas se debe producir no solo en modo de lectura, sino también como escritura.