ETL (que significa extraer, transformar, cargar) es un proceso de integración de datos que combina, limpia y organiza los datos de varias fuentes en un conjunto de datos único y coherente para almacenarlos en un almacén de datos, data lake u otro sistema de destino.
Los pipelines de datos de ETL proporcionan la base para los flujos de trabajo de análisis de datos y machine learning. Mediante una serie de reglas empresariales, ETL limpia y organiza los datos para abordar necesidades específicas de inteligencia empresarial, como los informes mensuales, pero también puede abordar análisis más avanzados, que pueden mejorar los procesos de fondo y las experiencias de los usuarios finales. Las organizaciones suelen utilizar los pipelines de ETL para:
Extraer datos de sistemas heredados
Depurar los datos para mejorar su calidad y establecer una coherencia
Introducir datos en una base de datos de destino
Las empresas han estado generando datos desde la era del ábaco, pero la analítica moderna solo fue posible con la llegada del ordenador digital y el almacenamiento de datos.
En la década de 1970 se produjo un gran paso adelante, con el cambio a bases de datos centralizadas más grandes. Luego se introdujo el ETL como un proceso para integrar y cargar datos para el cálculo y el análisis, convirtiéndose finalmente en el método principal para procesar datos para proyectos de almacenamiento de datos.
A finales de la década de 1980, los almacenes de datos y el cambio de las bases de datos transaccionales a las bases de datos relacionales que almacenaban la información en formatos de datos relacionales crecieron en popularidad. Las bases de datos transaccionales más antiguas almacenaban información transacción por transacción, con información duplicada del cliente almacenada con cada transacción, por lo que no había una manera fácil de acceder a los datos de los clientes de forma unificada a lo largo del tiempo. Con las bases de datos relacionales, la analítica se convirtió en el fundamento de la inteligencia empresarial (BI) y en una herramienta importante en la toma de decisiones.
Hasta la llegada de un software ETL más sofisticado, los primeros intentos eran en gran medida esfuerzos manuales del equipo informático para extraer datos de varios sistemas y conectores, transformarlos en un formato común y cargarlos después en tablas interconectadas. Aun así, los primeros pasos del ETL merecieron la pena, ya que los algoritmos avanzados, junto con el auge de las redes neuronales, produjeron oportunidades cada vez más profundas para conocimientos analíticos.
La era del big data llegó en la década de 1990 a medida que las velocidades informáticas y la capacidad de almacenamiento seguían creciendo rápidamente, con grandes volúmenes de datos extraídos de nuevas fuentes, como las redes sociales y el Internet de las cosas (IoT). Seguía existiendo un factor limitante, ya que los datos a menudo se almacenaban en almacenes de datos locales.
El siguiente paso importante tanto en la informática como en ETL fue el cloud computing, que se hizo popular a finales de la década de 1990. Mediante el uso de almacenes de datos como Amazon Web Services (AWS), Microsoft Azure y Snowflake, ahora se puede acceder a los datos desde todo el mundo y escalarlos rápidamente para permitir que las soluciones ETL brinden información detallada relevante y una nueva ventaja competitiva.
La última evolución son las soluciones ETL que utilizan el flujo de datos para proporcionar información al segundo a partir de enormes cantidades de datos.
La diferencia más obvia entre ETL y ELT (extraer, cargar, transformar) es la diferencia en el orden de las operaciones. ELT copia o exporta los datos desde las ubicaciones de origen, pero en lugar de cargarlos en un área de preparación para su transformación, carga los datos sin procesar directamente en el almacén de datos de destino para transformarlos según sea necesario.
Aunque ambos procesos aprovechan diversos repositorios de datos, como bases de datos, almacenes de datos y data lakes, cada uno tiene sus ventajas e inconvenientes. ELT es útil para la ingesta de conjuntos de datos no estructurados de gran volumen, ya que la carga puede realizarse directamente desde la fuente. ELT puede ser más adecuado para la gestión de big data, ya que no necesita mucha planificación previa para la extracción y el almacenamiento de datos.
El proceso ETL requiere más definición desde el inicio. Es necesario identificar puntos de datos específicos para su extracción, junto con posibles "claves" para integrar sistemas de fuentes dispares. La fuente de los datos de entrada a menudo se rastrea mediante el uso de metadatos. Incluso una vez completado ese trabajo, es necesario construir las reglas empresariales para las transformaciones de datos. Por lo general, este trabajo puede depender de los requisitos de los datos para un determinado tipo de análisis de datos, lo que determinará el nivel de resumen que deben tener dichos datos.
Aunque los pipelines ELT se han vuelto cada vez más populares con la adopción de bases de datos en la nube, la tecnología ELT sigue siendo un proceso en desarrollo, lo que significa que aún se están estableciendo las buenas prácticas.
La forma más sencilla de entender cómo funciona ETL es comprender qué ocurre en cada paso del proceso.
Durante la extracción de datos, los datos sin procesar se copian o exportan desde las ubicaciones de origen a una zona de preparación. Los equipos de gestión de datos pueden extraer datos de una variedad de fuentes diferentes, que pueden ser estructuradas o no estructuradas. Esos tipos de datos incluyen, entre otros:
En la zona de preparación, los datos sin procesar se procesan. Aquí, los datos se transforman y consolidan para su caso de uso analítico previsto. Esta fase del proceso de transformación puede incluir:
En este último paso, los datos transformados se trasladan de la zona de preparación a un almacén de datos de destino. Normalmente, esto implica una carga inicial de todos los datos, seguida de cargas periódicas de cambios incrementales de datos y, con menos frecuencia, actualizaciones completas para borrar y reemplazar datos en el almacén. Para la mayoría de las organizaciones que utilizan ETL, el proceso es automatizado, bien definido, continuo y por lotes. Normalmente, el proceso de carga ETL tiene lugar fuera de las horas de trabajo, cuando el tráfico en los sistemas de origen y en el almacén de datos es mínimo.
ETL y ELT son sólo dos métodos de integración de datos, y hay otros enfoques que también se utilizan para facilitar los flujos de trabajo de integración de datos. Entre las que se incluyen:
Las soluciones ETL mejoran la calidad realizando una limpieza de datos antes de cargarlos en un repositorio diferente. ETL, una operación por lotes que consume mucho tiempo, se recomienda más a menudo para crear repositorios de datos de destino más pequeños que requieren una actualización menos frecuente, mientras que otros métodos de integración de datos (incluyendo ELT (extracción, carga, transformación), captura de datos de cambio (CDC) y virtualización de datos) se utilizan para integrar volúmenes cada vez mayores de datos que cambian o flujos de datos en tiempo real.
En el pasado, las organizaciones escribían su propio código ETL. Ahora hay muchas herramientas ETL comerciales y de código abierto y servicios basados en la nube entre los que elegir. Las capacidades típicas de estos productos incluyen:
Además, muchas herramientas ETL han evolucionado para incluir la capacidad ELT y ser compatibles con la integración de datos en tiempo real y streaming para aplicaciones de inteligencia artificial (IA).
Las interfaces de programación de aplicaciones (API) que utilizan la integración de aplicaciones empresariales (EAI) se pueden utilizar en lugar de ETL para obtener una solución más flexible y escalable que incluya la integración del flujo de trabajo. Si bien ETL sigue siendo el principal recurso de integración de datos, la EAI se usa cada vez más con API en entornos basados en la web.
Desarrolle una canalización de datos de confianza con una solución ETL moderna basada en una plataforma avanzada nativa en la nube.
Cree canalizaciones de datos resilientes, de alto rendimiento y con costes optimizados para sus iniciativas de IA generativa, análisis en tiempo real, modernización de almacenes y necesidades operativas con las soluciones de integración de datos de IBM.
Desbloquee el valor de los datos empresariales con IBM Consulting y cree una organización impulsada por conocimientos que ofrezca ventajas empresariales.