Potenciar la empresa agéntica Vea el discurso de apertura de 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 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. 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

Cómo ha evolucionado el ETL

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. A continuación, transformaron los datos en un formato común y los cargaron 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 de computación y la capacidad de almacenamiento continuaron creciendo rápidamente. A continuación, 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 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. Utilizando almacenes de datos como Amazon Web Services (AWS), Microsoft Azure y Snowflake, ahora se puede acceder a los datos desde todo el mundo. Estas plataformas también pueden escalar rápidamente para permitir que las soluciones ETL ofrezcan perspectivas notablemente detalladas y una nueva ventaja competitiva.

La última evolución son las soluciones ETL a través de datos en streaming para proporcionar información al segundo a partir de grandes cantidades de datos.

AI Academy

¿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 satisfactorio de la IA generativa.

ETL frente a ELT

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. 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 utilizan diversos repositorios de datos, como bases de datos, almacenes de datos y data lakes, cada proceso tiene sus ventajas e inconvenientes. ELT es útil para procesar conjuntos de datos no estructurados y de gran volumen, ya que la carga puede realizarse directamente desde la fuente. ELT puede ser más ideal para la gestión de big data porque no necesita mucha planificación previa 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 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.

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

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.

Cómo funciona ETL

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

Extracción

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 diversas fuentes diferentes, que pueden ser estructuradas o no estructuradas. Esos tipos de datos incluyen, entre otros:

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

Transformación

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:

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

Carga

En este último paso, los datos transformados se trasladan de la zona de preparación a un almacén de datos de destino. Normalmente, este proceso implica una carga inicial de todos los datos, seguida de una carga periódica 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 otros métodos de integración de datos

ETL y ELT son solo 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. Algunos de estos métodos incluyen:

  • Change data capture (CDC) identifica y captura solo los datos de origen que han cambiado y los traslada al sistema de destino. CDC puede utilizarse para reducir los recursos necesarios durante el paso de “extracción” de ETL; también puede usarse de forma independiente para mover datos transformados a un data lake 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 a una base de datos central. La replicación de datos suele figurar como método de integración de datos. De hecho, se utiliza sobre todo 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 vista unificada, integrada y totalmente utilizable de datos sin necesidad de copiar, transformar ni 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 data mart a partir de los mismos datos de origen para el almacenamiento. Este enfoque evita los gastos y la complejidad de crear y gestionar plataformas distintas para cada una. Aunque la virtualización de datos puede utilizarse 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.

  • Stream data integration (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 cuando está disponible. SDI habilita un almacén de datos para potenciar el análisis, 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 realizando la 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. 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 con frecuencia 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 entre los que elegir. Las capacidades típicas de estos productos incluyen:

  • Automatización completa y facilidad de uso: las principales herramientas ETL automatizan todo el flujo de datos, desde las fuentes de datos hasta el almacén de datos 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 normativas industriales o gubernamentales, incluyendo la HIPAA y el RGPD.

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).

Preguntas frecuentes sobre ETL

¿Qué es una zona de preparación?

Una zona 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 muelle de carga donde se limpian, inspeccionan y transforman los datos sin procesar antes de trasladarse a un destino objetivo.

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

La carga inicial es la primera extracción y carga de datos históricos de una fuente de datos en un destino. Incluye todo el conjunto de datos y se realiza una vez, al principio de un proyecto. La carga incremental es el proceso de cargar solo los datos nuevos, modificados o eliminados desde la última carga. Estos procesos se ejecutan de forma 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 de un almacén de datos que cambian esporádicamente a lo largo del tiempo, en lugar de seguir un calendario fijo. Un ejemplo comúnmente citado 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 manejar y seguir los cambios en los datos de las dimensiones a lo largo del tiempo.

¿Cómo lidio con los datos duplicados?

Para hacer frente a 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 barreras de seguridad para evitar futuras entradas.

Soluciones relacionadas
IBM StreamSets

Cree y gestione canalizaciones de datos de streaming inteligentes a través de una interfaz gráfica intuitiva, y facilite una integración de datos fluida en entornos híbridos y multinube.

Explore StreamSets
IBM watsonx.data

Watsonx.data le permite escalar la analítica y la IA con todos sus datos, residan donde residan, a través de un almacén de datos abierto, híbrido y gobernado.

Descubra watsonx.data
Servicios de asesoramiento sobre datos y análisis

Desbloquee el valor de los datos empresariales con IBM Consulting, y construya una organización impulsada por conocimientos que ofrezca ventajas empresariales.

Descubra los servicios de análisis
De el siguiente paso

Diseñe una estrategia de datos que elimine los silos, reduzca la complejidad y mejore la calidad de los datos para ofrecer experiencias excepcionales a clientes y empleados.

  1. Explore las soluciones de gestión de datos
  2. Descubra watsonx.data