Potenciar la empresa agéntica Vea la presentación en Think

¿Qué es ETL (extracción, transformación, carga)?

¿Qué es ETL?

ETL (que significa extraer, transformar, cargar) es un proceso de integración de datos que combina, limpia y organiza datos de múltiples fuentes en un único conjunto de datos coherente. Luego carga esos datos en un data warehouse, data lake u otro sistema de destino.

Los pipelines de datos ETL proporcionan la base para los flujos de trabajo de analytics de datos y machine learning. A través de una serie de reglas de negocio, ETL limpia y organiza los datos para hacer frente a las necesidades específicas de inteligencia de negocios, tales como informes mensuales, pero también puede abordar análisis más avanzados, que pueden mejorar los procesos de backend y las experiencias de los usuarios finales. Las organizaciones suelen usar pipelines ETL para:

  • Extraer datos de sistemas heredados

  • Depurar los datos para mejorar su calidad y establecer una coherencia

  • Cargar datos en una base de datos de destino

Cómo evolucionó ETL

Las empresas han estado generando datos desde la era del ábaco, pero los analytics modernos solo fueron posibles con la llegada de la computadora digital y el almacenamiento de datos.

Un gran paso adelante llegó en la década de 1970, con el paso a bases de datos centralizadas más grandes. Luego, ETL se introdujo como un proceso para integrar y cargar datos para su cálculo y análisis, convertir finalmente en el método principal para procesar datos para proyectos de almacenamiento de datos.

A fines de la década de 1980, los data warehouses y la transición de bases de datos transaccionales a 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, y con cada transacción se almacenaba información duplicada del cliente, por lo que no había una manera sencilla de acceder a los datos del cliente de forma unificada a lo largo del tiempo. Con las bases de datos relacionales, el análisis se convirtió en la base de la business intelligence (BI) y en una herramienta importante en la toma de decisiones.

Hasta la llegada del software ETL más sofisticado, los primeros intentos fueron en gran medida manuales por parte del equipo de TI para extraer datos de varios sistemas y conectores. Luego transformaron los datos en un formato común y los cargaron en tablas interconectadas. Aun así, los primeros pasos de ETL valieron la pena, ya que los algoritmos avanzados, además del auge de las redes neuronales, produjeron oportunidades cada vez más profundas para obtener insights 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 continuaron creciendo rápidamente. Luego se extrajeron grandes volúmenes de datos 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 data warehouses on premises.

El siguiente gran paso tanto en computación como en ETL fue la computación en nube, que se popularizó a finales de los noventa. Gracias al uso de almacenes de datos como Amazon Web Services (AWS), Microsoft Azure y Snowflake, ahora se puede acceder a los datos desde cualquier parte del mundo. Estas plataformas también pueden escalar rápidamente para permitir que las soluciones ETL ofrezcan insights notablemente detallados y una nueva ventaja competitiva.

La última evolución son las soluciones ETL a través de la transmisión de datos para ofrecer insights actualizados al segundo a partir de grandes cantidades de datos.

Academia de IA

¿Es la gestión de datos el secreto de la IA generativa?

Explore por qué los datos de alta calidad son esenciales para el uso exitoso de la IA generativa.

ETL frente a ELT

La diferencia más obvia entre ETL y ELT (extraer, cargar, transformar) es 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.

Si bien ambos procesos utilizan varios repositorios de datos, como bases de datos, data warehouses y data lakes, cada proceso tiene sus ventajas y desventajas. ELT es útil para procesar conjuntos de datos no estructurados de gran volumen, ya que la carga puede ocurrir directamente desde la fuente. ELT puede ser más ideal para la gestión de big data porque no necesita mucha planificación inicial para la extracción y el almacenamiento de datos.

El proceso ETL requiere una definición más clara desde el principio. Es necesario identificar puntos de datos específicos para la extracción junto con cualquier “clave” potencial para integrar en sistemas de fuentes dispares. La fuente de datos de entrada a menudo se rastrea mediante el uso de metadatos. Incluso después de completar ese trabajo, es necesario construir las reglas de negocio para las transformaciones de datos.

Este trabajo generalmente puede tener dependencias en los requisitos de datos para un tipo específico de análisis de datos, lo que determinará el nivel de resumen que deben tener los datos.

Si bien los pipelines de 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 mejores prácticas.

Cómo funciona ETL

La forma más sencilla de entender cómo funciona ETL es comprender qué ocurre en cada paso del proceso.

Extraer

Durante la extracción de datos, los datos sin procesar se copian o exportan de las ubicaciones de origen a un área de preparación. Los equipos de gestión de datos pueden extraer datos de una variedad de fuentes diferentes, que pueden ser estructurados o no estructurados. Esos tipos de datos incluyen, pero no se limitan a:

  • Servidores SQL o NoSQL
  • Sistemas CRM y ERP
  • JSON y XML
  • Bases de datos planas
  • Correo electrónico
  • Páginas web

Transformar

En el área de preparación, los datos sin procesar se someten a procesamiento de datos. Aquí, los datos se transforman y consolidan para su caso de uso analítico previsto. Esta fase del proceso de transformación puede incluir:

  • Filtrar, depurar, agregar, desduplicar, validar y autenticar los datos.
  • Realizar cálculos, traducciones o resúmenes basados en los datos sin procesar. Este proceso puede incluir el cambio de encabezados de filas y columnas para mantener la coherencia, la conversión de monedas u otras unidades de medida, la edición de cadenas de texto y mucho más.
  • Realizar auditorías para garantizar la calidad y el cumplimiento de los datos y calcular métricas.
  • Eliminar, cifrar o proteger los datos regulados por la industria o las autoridades gubernamentales.
  • Formatear los datos en tablas o tablas unidas para que coincidan con el esquema del almacén de datos de destino.

Cargar

En este último paso, los datos transformados se mueven del área de almacenamiento en etapas a un data warehouse de destino. Por lo general, esto implica una carga inicial de todos los datos, seguida de la carga periódica de cambios incrementales en los datos y, con menos frecuencia, actualizaciones completas para borrar y reemplazar los datos en el almacén.

Para la mayoría de las organizaciones que utilizan ETL, el proceso es automatizado, bien definido, continuo y basado en lotes. Por lo general, el proceso de carga ETL se lleva a cabo durante las horas fuera de horario cuando el tráfico en los sistemas de origen y el almacén de datos está en su punto más bajo.

ETL y otros métodos de integración de datos

ETL y ELT son solo dos métodos de integración de datos y existen otros enfoques que también se utilizan para facilitar los flujos de trabajo de integración de datos. Algunos de estos métodos incluyen:

  • La captura de datos modificados (CDC) identifica y captura solo los datos de origen que han cambiado y mueve esos datos al sistema de destino. CDC se puede utilizar para reducir los recursos necesarios durante el paso de “extracción” de ETL; también se puede utilizar de forma independiente para mover datos que se han transformado en un lago de datos u otro repositorio en tiempo real.

  • La replicación de datos  copia los cambios en las fuentes de datos en tiempo real o por lotes en una base de datos central. La replicación de datos  a menudo se incluye como un método de integración de datos. De hecho, se utiliza con mayor frecuencia para crear copias de seguridad para la recuperación ante desastres.

  • La virtualización de datos usa una capa de abstracción de software para crear una visión unificada, integrada y totalmente utilizable de los datos, sin necesidad de copiar, transformar o cargar físicamente los datos de origen en un sistema de destino. Las funciones de virtualización de datos permiten a una organización crear almacenes de datos virtuales, data lakes y mercados de datos a partir de la misma fuente de datos para el almacenamiento de datos sin el gasto y la complejidad de construir y gestionar plataformas independientes para cada uno. Aunque la virtualización de datos puede usarse con junto con ETL, cada vez se considera más una alternativa a ETL y a otros métodos físicos de integración de datos.

  • La integración de datos en streaming (SDI) es exactamente lo que parece: consume continuamente flujos de datos en tiempo real, los transforma y los carga en un sistema de destino para su análisis. La palabra clave aquí es continuamente. En lugar de integrar instantáneas de datos tomadas en un momento específico, SDI integra datos constantemente. Procesa la información en cuanto está disponible. SDI habilita un almacén de datos para potenciar el analytics, el machine learning y las aplicaciones en tiempo real para mejorar la experiencia del cliente, la detección de fraudes y mucho más.

Los beneficios y desafíos de ETL

Las soluciones ETL mejoran la calidad al realizar la limpieza de datos antes de cargarlos en un repositorio diferente. Una operación por lotes que consume mucho tiempo, ETL se recomienda con mayor frecuencia para crear repositorios de datos de destino más pequeños que requieren actualizaciones menos frecuentes, mientras que otros métodos de integración de datos, incluidos ELT (extracción, carga, transformación), captura de datos modificados (CDC) y virtualización de datos, se utilizan para integrar volúmenes cada vez más grandes de datos que cambian o flujos de datos en tiempo real.

Herramientas ETL

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 para elegir. Las capacidades típicas de estos productos incluyen:

  • Automatización integral y facilidad de uso: las principales herramientas ETL automatizan todo el flujo de datos, desde las fuentes de datos hasta el data warehouse de destino. Esta automatización ahorra a los ingenieros de datos las tediosas tareas de mover y formatear datos para obtener resultados más rápidos y operaciones más eficientes.

  • Una interfaz visual de arrastrar y soltar: esta funcionalidad se puede utilizar para especificar reglas y flujos de datos.

  • Soporte para la gestión de datos complejos: esta capacidad incluye asistencia con cálculos complejos, integraciones de datos y manipulaciones de cadenas.

  • Seguridad y cumplimiento: las mejores herramientas ETL cifran los datos tanto en movimiento como en reposo y están certificadas conforme a las regulaciones de la industria o el gobierno, incluidas la HIPAA y el RGPD.

Además, muchas herramientas ETL han evolucionado para incluir la capacidad ELT y admitir la integración de datos en tiempo real y streaming para aplicaciones de inteligencia artificial (IA).

Preguntas frecuentes sobre ETL

¿Qué es un área de preparación?

Un área de preparación es una ubicación temporal de almacenamiento entre las fuentes de datos y un destino objetivo (como un almacén de datos) que se utiliza para almacenar temporalmente datos sin procesar. Actúa como un muelle de carga donde los datos sin procesar se limpian, inspeccionan y transforman antes de trasladarlos a un destino.

¿Cuál es la diferencia entre cargas iniciales e incrementales?

La carga inicial es la extracción y carga por primera vez de datos históricos de una fuente de datos hacia un destino objetivo. Incluye todo el conjunto de datos y se realiza una vez, al comienzo de un proyecto. La carga incremental es el proceso de cargar solo datos nuevos, modificados o eliminados desde la última carga. Estos procesos se ejecutan de manera programada.

¿Qué son las dimensiones que cambian lentamente (SCD)?

Este término es un poco ambiguo y se utiliza de dos maneras diferentes. Las dimensiones que cambian lentamente se refieren a las tablas de dimensiones en un data warehouse que cambian esporádicamente con el tiempo, en lugar de seguir un cronograma fijo. Un ejemplo que se suele citar es la dirección de un cliente. El término también se utiliza para referirse a los métodos y técnicas utilizados para gestionar y realizar un seguimiento de los cambios en los datos dimensionales a lo largo del tiempo.

¿Cómo trato los datos duplicados?

Para tratar los datos duplicados, las organizaciones deben crear un proceso para identificar sistemáticamente los datos duplicados y su tipo, reglas claras para eliminar o fusionar datos duplicados y medidas de seguridad para evitar futuras entradas.

Soluciones relacionadas
IBM® watsonx.data integration

Transforme los datos sin procesar en datos listos para la IA con una experiencia de usuario optimizada para integrar cualquier dato usando cualquier estilo.

Explore la integración de watsonx.data
Soluciones de integración de datos

Cree canalizaciones de datos resilientes, de alto rendimiento y con costos 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.

Explore las soluciones de integración de datos
Servicios de consultoría de datos e IA

Escale con éxito la IA con la estrategia, los datos, la seguridad y la gobernanza adecuados.

Explore servicios de consultoría de datos e IA
Dé el siguiente paso

Integre datos estructurados y no estructurados mediante una combinación de estilos, que incluyen procesamiento por lotes, transmisión en tiempo real y replicación, para no perder tiempo ni dinero cambiando constantemente de herramientas.

  1. Explore IBM watsonx.data integration
  2. Explore las soluciones de integración de datos