Extraer, transformar, cargar


En informática , extraer, transformar, cargar ( ETL ) es el procedimiento general de copiar datos de una o más fuentes en un sistema de destino que representa los datos de manera diferente a la(s) fuente(s) o en un contexto diferente al de la(s) fuente(s). El proceso ETL se convirtió en un concepto popular en la década de 1970 y se usa con frecuencia en el almacenamiento de datos . [1]

La extracción de datos implica extraer datos de fuentes homogéneas o heterogéneas; la transformación de datos procesa los datos depurándolos y transformándolos en un formato/estructura de almacenamiento adecuado con fines de consulta y análisis; finalmente, la carga de datos describe la inserción de datos en la base de datos de destino final, como un almacén de datos operativos , un data mart , un lago de datos o un almacén de datos. [2] [3]

Un sistema ETL correctamente diseñado extrae datos de los sistemas de origen, hace cumplir los estándares de consistencia y calidad de los datos, ajusta los datos para que las fuentes separadas se puedan usar juntas y finalmente entrega los datos en un formato listo para la presentación para que los desarrolladores de aplicaciones puedan crear aplicaciones y usuarios finales. puede tomar decisiones. [4]

Dado que la extracción de datos lleva tiempo, es común ejecutar las tres fases en la tubería. Mientras se extraen los datos, se ejecuta otro proceso de transformación mientras se procesan los datos ya recibidos y se preparan para la carga mientras se inicia la carga de datos sin esperar a que se completen las fases anteriores.

Los sistemas ETL comúnmente integran datos de múltiples aplicaciones (sistemas), típicamente desarrollados y respaldados por diferentes proveedores o alojados en hardware de computadora separado. Los sistemas separados que contienen los datos originales son frecuentemente administrados y operados por diferentes empleados. Por ejemplo, un sistema de contabilidad de costos puede combinar datos de nómina, ventas y compras.

La primera parte de un proceso ETL consiste en extraer los datos de los sistemas de origen. En muchos casos, esto representa el aspecto más importante de ETL, ya que la extracción de datos correctamente prepara el escenario para el éxito de los procesos posteriores. La mayoría de los proyectos de almacenamiento de datos combinan datos de diferentes sistemas de origen. Cada sistema separado también puede usar una organización y/o formato de datos diferente . Los formatos comunes de fuentes de datos incluyen bases de datos relacionales , XML , JSON y archivos planos , pero también pueden incluir estructuras de bases de datos no relacionales como el Sistema de gestión de la información (IMS) u otras estructuras de datos como el Método de acceso al almacenamiento virtual (VSAM) oMétodo de acceso secuencial indexado (ISAM) , o incluso formatos extraídos de fuentes externas por medios tales como web spidering o screen-scraping . La transmisión de la fuente de datos extraída y la carga sobre la marcha en la base de datos de destino es otra forma de realizar ETL cuando no se requiere un almacenamiento de datos intermedio.


Diagrama ETL convencional
Diagrama ETL convencional [4]