Qué es una ETL y cómo funciona
ETL son las siglas de Extract, Transform y Load. Son tres funciones que combinadas entre sí y ejecutadas de forma secuencial nos permitirán extraer datos de una fuente de datos, transformarlos para que tengan el formato deseado y guardarlos en otra base de datos.
- Extract: es el proceso de leer datos de una o varias bases de datos. En este punto, los datos son recogidos para su posterior tratamiento y pueden tener su origen en diferentes fuentes.
- Transform: es el proceso que convierte el formato de los datos extraídos en el paso previo a otro formato que necesitemos y que pueda ser almacenado en la base de datos de destino. La transformación puede ser un filtrado de los datos, agrupación, unión entre diferentes tablas o cualquier operación que se nos ocurra.
- Load: es el proceso de almacenamiento de los datos transformados en la base de datos de destino.
Cómo funciona una ETL
Supongamos que tenemos 3 fuentes de datos diferentes de las que queremos hacer una extracción: base de datos de usuarios, base de datos de productos y base de datos de pagos. Como es un ejemplo, no importa que pensemos que las bases de datos podrían estar unidas o que se podría haber diseñado de otra manera. Lo que pretendemos es extraer todos esos datos, transformarlos para que tengan un formato adecuado y tras esto, guardarlos en una base de datos de analítica de negocio, tal y como se puede ver en el siguiente diagrama:
Ejemplo de ETL
Siguiendo el diagrama anterior, vamos a ver un ejemplo de ETL. En él, tenemos una base de datos con la información de los usuarios, otra base de datos con la información de los productos y otra base de datos con la información de los pagos y que relaciona a las dos anteriores. Cada base de datos puede tener una tecnología diferente. Una puede ser PostgreSQL, otra MySQL y otra MongoDB.
En la transformación, vamos a unir todos esos datos y los vamos a agregar para posteriormente guardarlos en una base de datos de analíticas de negocio:
ETL y Business Intelligence
Hoy en día, las ETL son una parte muy importante del Business Ingelligence (BI) en una empresa. Es el procesado de la información de distintas fuentes de datos para que después pueda analizarse y así descubrir nuevas ideas de negocio o descartar algunas que ya se hayan puesto en marcha y gracias a este análisis se vea que no funcionan.