¿Qué es ETL (extracción, transformación, carga)?
Explore la solución ETL de Explore IBM Suscríbase a las actualizaciones sobre el tema en torno a la IA
Fondo negro y azul
¿Qué es ETL?

ETL (extracción, transformación,  carga) es un antiguo proceso de integración de datos que se utiliza para combinar datos de varias fuentes en un conjunto de datos único y coherente para cargarlo en un almacén de datos, data lake u otro sistema de destino.

A medida que las bases de datos ganaban popularidad en los años 70, se introdujo el ETL como proceso de integración y carga de datos para el cálculo y el análisis, que acabó convirtiéndose en el método principal para procesar datos en proyectos de almacenamiento de datos.

ETL proporciona la base para los flujos de trabajo de análisis de datos y machine learning. A través de una serie de normas empresariales, ETL limpia y organiza los datos de una manera que satisface las 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 back-end o las experiencias de los usuarios finales. Una organización suele utilizar 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
Conocer y utilizar Presto

Explore el libro electrónico gratuito de O'Reilly para aprender a dar los primeros pasos con Presto, el motor SQL de código abierto para el análisis de datos.

Contenido relacionado

Regístrese para obtener el informe técnico sobre la gobernanza de la IA

ETL vs ELT

La diferencia más obvia entre ETL y ELT 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 especialmente útil para conjuntos de datos no estructurados y 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, en cambio, requiere más definición al principio. Es necesario identificar puntos de datos específicos para su extracción, junto con posibles "claves" para integrar sistemas de fuentes dispares. Incluso una vez completado ese trabajo, es necesario construir las normas 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 los datos.

Aunque el ELT se ha hecho cada vez más popular con la adopción de bases de datos en la nube, tiene sus propias desventajas por ser el proceso más reciente, 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. Los datos pueden ser estructurados o no estructurados. Estas fuentes incluyen, entre otras:

  • Servidores SQL o NoSQL
  • Sistemas CRM y ERP
  • Archivos sin formato
  • 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 puede implicar las siguientes tareas:

  • Filtrar, depurar, desduplicar, validar y autenticar los datos.
  • Realizar cálculos, traducciones o resúmenes a partir de los datos sin procesar. Esto 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, etc.
  • La realización de auditorías para garantizar la calidad de los datos y la conformidad.
  • 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, 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 ETL se realiza fuera de las horas de trabajo, cuando el tráfico en los sistemas de origen y el almacén de datos es mínimo.

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

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. Algunos de ellos son:

  • 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 utilizarse de forma independiente para trasladar datos transformados a un data lake u otro repositorio en tiempo real.
  • La réplica de datos copia los cambios en las fuentes de datos en tiempo real o por lotes a una base de datos central. La réplica 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 utiliza 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. La funcionalidad de virtualización de datos permite a una organización crear almacenes de datos virtuales, data lakes y data marts a partir de la misma fuente de datos para el almacenamiento de datos sin el gasto y la complejidad de crear y gestionar plataformas independientes para cada uno. 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 extraídos de las fuentes en un momento dado, SDI integra los datos constantemente a medida que están disponibles. 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 una limpieza de los 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.

 

Más información sobre la integración de datos
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 en la nube entre los que elegir. Entre las capacidades típicas de estos productos se incluyen las siguientes:

  • 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. Muchas herramientas recomiendan reglas para extraer, transformar y cargar los datos.
  • 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: esto incluye asistencia con cálculos complejos, integraciones de datos y manipulaciones de cadenas.
  • Seguridad y conformidad: las mejores herramientas ETL cifran los datos tanto en movimiento como en reposo y están certificadas conforme a las normativas sectoriales o gubernamentales, como HIPAA y GDPR.

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

El futuro de la integración: API con EAI

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, EAI se usa cada vez más con API en entornos basados en la web.

Soluciones relacionadas
IBM Cloud Pak for Data

IBM Cloud Pak for Data es una plataforma de datos abierta y extensible que proporciona una estructura de datos para que todos los datos estén disponibles para la IA y el análisis, en cualquier nube.

Descubra IBM Cloud Pak for Data
IBM DataOps

La IA está desbloqueando el valor de los datos de nuevas formas. Organice sus datos para que estén listos para un mundo de IA y multinube con soluciones DataOps.

Explore IBM DataOps
Integración de datos

La integración de datos permite transformar datos estructurados y no estructurados y entregarlos a cualquier sistema en una plataforma de big data escalable.

Explore la integración de datos
Recursos Hive como herramienta para ETL o ELT

Aprenda a extraer, transformar y cargar o extraer, cargar y luego transformar mientras descubre formas de procesar y analizar grandes conjuntos de datos con facilidad utilizando esta herramienta.

ELT vs. ETL: ¿Cuál es la diferencia?

Conozca las similitudes y diferencias en las definiciones, beneficios y casos de uso de ELT y ETL.

Implementación de flujos ETL con Node-RED

Descubra el poder de los flujos ETL con Node-RED y aprenda a agilizar, implementar y automatizar estos procesos críticos y desbloquear todo el potencial de sus datos.