Extracción, transformación y carga (Extract Transform Load, ETL) es el proceso que las organizaciones impulsadas por datos utilizan para recopilar datos de distintas fuentes para luego reunirlos a fin de facilitar el descubrimiento, la generación de informes, el análisis y la toma de decisiones.
Los orígenes de los datos pueden ser muy diversos en tipo, formato, volumen y fiabilidad, por lo que es necesario procesar los datos para que sean útiles cuando se combinan. Los almacenes de datos de destino pueden ser bases de datos, almacenes de datos o lagos de datos, según los objetivos y la implementación técnica.
Extracción
Durante la extracción, ETL identifica los datos y los copia desde sus orígenes, de modo de poder transportar los datos al almacén de datos de destino. Los datos pueden proceder de orígenes estructurados y no estructurados, incluidos documentos, correos electrónicos, aplicaciones de negocios, bases de datos, equipos, sensores y terceros, entre otros.
Transformación
Dado que los datos extraídos no están procesados en su formato original, se deben asignar y transformar a fin de prepararlos para el almacén de datos final. En el proceso de transformación, ETL valida, autentica, desduplica o agrega los datos de manera que los datos resultantes sean fiables y se puedan consultar.
Carga
ETL traslada los datos transformados al almacén de datos de destino. Este paso puede implicar la carga inicial de todos los datos de origen o puede ser la carga de los cambios incrementales en los datos de origen. Puede cargar los datos en tiempo real o en lotes programados.
El paso de transformación es, por mucho, el más complejo del proceso ETL. Por lo tanto, ETL y ELT difieren en dos puntos principales:
En un almacén de datos tradicional, los datos se extraen primero de los “sistemas de origen” (sistemas ERP, sistemas CRM, etc.). Las herramientas del servidor OLAP y las consultas de lenguaje de consulta estructurado (Structured Query Language, SQL) dependen de la estandarización de las dimensiones de los conjuntos de datos para obtener resultados agregados. Esto significa que los datos deben pasar por una serie de transformaciones.
Tradicionalmente, estas transformaciones se realizan antes de cargar los datos en el sistema de destino, que suele ser un almacén de datos relacional.
Sin embargo, a medida que evolucionan las tecnologías subyacentes de almacenamiento y procesamiento de datos que sustentan el almacenamiento de datos, se volvió posible efectuar transformaciones dentro del sistema de destino. Los procesos ETL y ELT implican áreas temporales. En ETL, estas áreas se encuentran en la herramienta, sea propietaria o personalizada. Se encuentran entre el sistema de origen (por ejemplo, un sistema de mitigación de riesgo de crédito [credit risk mitigation, CRM]) y el sistema de destino (el almacén de datos).
Por el contrario, con la extracción, carga y transformación (Extract Load Transform, ELT), el área temporal se encuentra en el almacén de datos y el motor de base de datos que alimenta el sistema de gestión de bases de datos (database management system, DBMS) realiza las transformaciones, en lugar de una herramienta ETL. Por lo tanto, una de las consecuencias inmediatas de los ELT es que se pierden las funciones de preparación y limpieza de datos que proporcionan las herramientas de ETL para ayudar en el proceso de transformación de datos.
Tradicionalmente, las herramientas de ETL se utilizaban en su mayoría para proporcionar datos a los almacenes de datos empresariales compatibles con aplicaciones de inteligencia empresarial (business inteligente, BI). Dichos almacenes de datos están diseñados para representar un origen de datos fiable acerca de todo lo que ocurre en todas las actividades de una empresa. Los datos de estos almacenes se estructuran cuidadosamente con esquemas, metadatos y reglas estrictas que rigen la validación de datos.
Las herramientas de ETL para los almacenes de datos empresariales deben cumplir los requisitos de integración de datos, como cargas por lotes de alto volumen y alto rendimiento; procesos de integración basados en eventos y con alimentación gradual; transformaciones programables, y orquestaciones para poder hacer frente a las transformaciones y los flujos de trabajo más exigentes, y también a fin de tener conectores para los orígenes de datos más diversos.
Después de cargar los datos, hay varias estrategias para mantenerlos sincronizados entre los almacenes de datos de origen y destino. Puede volver a cargar el conjunto de datos completo periódicamente, programar actualizaciones regulares de los últimos datos o confirmar el mantenimiento de la sincronización completa entre el almacén de datos de origen y el de destino. Dicha integración en tiempo real se denomina captura de datos de cambio (CDC). Para este proceso avanzado, las herramientas de ETL deben comprender la semántica de la transacción de las bases de datos de origen y transmitir correctamente estas transacciones al almacén de datos de destino.
Los subalmacenes de datos son almacenes de datos de destino más pequeños y más específicos que los almacenes de datos empresariales. Por ejemplo, pueden centrarse en la información sobre un único departamento o una única línea de productos. Por ello, los usuarios de las herramientas ETL para subalmacenes de datos suelen ser especialistas en la actividad (line of business, LOB), analistas de datos o científicos de datos.
Las herramientas de ETL para los subalmacenes de datos deben poder ser utilizados por el personal de la empresa y los gestores de datos, no por los programadores y la plantilla de TI. Por lo tanto, estas herramientas deben tener un flujo de trabajo visual para facilitar la configuración de pipelines de ETL.
Más información sobre el diseño de flujo de datos sin código
Los lagos de datos siguen un patrón diferente al de los almacenes y los subalmacenes de datos. Por lo general, los lagos de datos guardan sus datos en el almacenamiento de objetos o en Hadoop Distributed File Systems (HDFS) y, por lo tanto, pueden guardar datos menos estructurados sin esquema, además de admitir distintas herramientas para consultar esos datos no estructurados.
Un patrón adicional que permite esta situación es la extracción, carga y transformación (Extract Load Transform, ELT), en la que los datos se almacenan “tal cual” primero y se transformarán, analizarán y procesarán después de que se capturen los datos en el lago de datos. Este patrón tiene varios beneficios.
Las herramientas ETL para lagos de datos incluyen herramientas de integración de datos visuales, al ser eficaces para científicos e ingenieros de datos. Entre las herramientas adicionales que se utilizan a menudo en la arquitectura del lago de datos están las siguientes:
El proceso ETL es fundamental para muchos sectores debido a su capacidad para ingerir datos de forma rápida y fiable en los lagos de datos para la ciencia y el análisis de datos, a la vez que crea modelos de alta calidad. Las soluciones ETL también pueden cargar y transformar datos transaccionales a escala para crear una vista organizada a partir de grandes volúmenes de datos. Esto permite a las empresas visualizar y prever tendencias del sector. Varios sectores confían en ETL para ofrecer estadísticas procesables, una toma de decisiones rápida y una mayor eficiencia.
Servicios financieros
Las instituciones de servicios financieros reúnen grandes cantidades de datos estructurados y no estructurados para generar estadísticas sobre el comportamiento de los consumidores. Estas estadísticas pueden analizar riesgos, optimizar los servicios financieros de los bancos, mejorar las plataformas en línea e incluso suministrar a los cajeros automáticos con efectivo.
Petróleo y gas
Los sectores del petróleo y el gas utilizan soluciones ETL para generar predicciones sobre el consumo, el almacenamiento y las tendencias en áreas geográficas específicas. ETL trabaja para recopilar la mayor cantidad posible de información de todos los sensores de un sitio de extracción y procesar esa información para facilitar su lectura.
Las soluciones ETL de automoción
permiten que los concesionarios y los fabricantes comprendan los patrones de venta, calibren sus campañas de marketing, repongan el inventario y realicen un seguimiento de los posibles clientes.
Telecomunicaciones
Con el volumen y la variedad de datos sin precedentes que se producen hoy en día, los proveedores de telecomunicaciones dependen de soluciones ETL para gestionar y comprender mejor esos datos. Una vez procesados y analizados estos datos, las empresas pueden utilizarlos para mejorar la publicidad, los medios sociales, la optimización de motor de búsqueda, la satisfacción del cliente, la rentabilidad y mucho más.
Asistencia sanitaria
Con la necesidad de reducir los costos y, al mismo tiempo, mejorar la asistencia, el sector sanitario emplea soluciones ETL para gestionar los registros de los pacientes, recopilar información sobre seguros y cumplir los requisitos normativos cambiantes.
Ciencias biológicas
Los laboratorios clínicos cuentan con soluciones ETL e inteligencia artificial (IA) para procesar varios tipos de datos producidos por las instituciones de investigación. Por ejemplo, colaborar en el desarrollo de vacunas requiere que se recopilen, procesen y analicen grandes cantidades de datos.
Sector público
Como las capacidades del Internet de las cosas (IoT) emergen con tanta rapidez, las ciudades inteligentes utilizan ETL y la potencia de la IA para optimizar el tráfico, supervisar la calidad del agua, mejorar el estacionamiento y mucho más.
Conjunto de arquitectura orientada a servicios (SOA)
¿Cómo reducir la complejidad de la integración de aplicaciones? Con capacidades simplificadas de integración en la nube, móviles, locales y del Internet de las cosas, todas dentro de una única plataforma, esta solución puede proporcionar un tiempo de integración más rápido y una mayor productividad, junto con un menor costo total de propiedad (total cost of ownership, TCO). Muchas aplicaciones empresariales, como Oracle E-Business Suite, utilizan mucho este producto para orquestar flujos de datos.
GoldenGate
La transformación digital a menudo exige mover los datos desde donde se capturan hasta donde se necesitan, y GoldenGate está diseñado para simplificar este proceso. Oracle GoldenGate es una solución de replicación de datos de alta velocidad para la integración en tiempo real entre bases de datos heterogéneas ubicadas localmente, en la nube o en una base de datos autónoma. GoldenGate mejora la disponibilidad de los datos sin afectar el rendimiento del sistema, además de proporcionar acceso a los datos en tiempo real e informes operativos.
Cloud Streaming
Nuestra solución Cloud Streaming proporciona una solución duradera, escalable y totalmente gestionada para tomar y consumir flujos de datos de gran volumen en tiempo real. Utilice este servicio para mensajería, registros de aplicaciones, telemetría operativa, datos del flujo de clics web o cualquier otra instancia en la que los datos se produzcan y se procesen de forma continua y secuencial en un modelo de mensajería de publicación/suscripción. Es totalmente compatible con Spark y Kafka.