ELT, que significa "extraer, cargar, transformar", es otro tipo de proceso de integración de datos, similar a su contraparte ETL, "extraer, transformar, cargar". Este proceso mueve datos sin procesar desde un sistema de origen a un recurso de destino, como un almacén de datos.
Si bien es similar a ETL, ELT es un enfoque diferente a nivel fundamental para el preprocesamiento de datos que recientemente se ha adoptado con la transición a entornos de nube.
ELT consta de tres etapas principales: extraer, cargar y transformar. Cada una de estas etapas se detalla a continuación.
Durante la extracción de datos, los datos se copian o exportan de las ubicaciones de origen a un área de preparación. El conjunto de datos puede constar de muchos tipos de datos y provenir de prácticamente cualquier fuente estructurada o no estructurada, incluidas, entre otras:
Dicho esto, se utiliza de manera más habitual con datos no estructurados.
En este paso, los datos transformados se trasladan desde el área de preparación a un área de almacenamiento de datos, como un almacén de datos o un lago de datos.
En la mayoría de las organizaciones, el proceso de carga de datos está automatizado y bien definido, es continuo y funciona por lotes. Normalmente, ELT tiene lugar durante el horario laboral, cuando el tráfico en los sistemas de origen y el almacén de datos está en su punto álgido y los consumidores esperan para emplear los datos con fines de análisis o de otro tipo.
En esta etapa, se emplea un enfoque de esquema en la escritura, que aplica el esquema para los datos mediante SQL, o transforma los datos, antes del análisis. Esta etapa puede implicar lo siguiente:
Es posible confundir ELT con su proceso hermano conocido por un acrónimo casi idéntico. Sin embargo, hay varias diferencias claras entre ELT y ETL, que significa extraer, transformar y cargar. Es un proceso de integración de datos que combina datos de múltiples fuentes en un único almacén de datos congruente que se carga en un almacén de datos u otro sistema de destino. Las herramientas ETL tradicionales se diseñaron para crear almacenes de datos en apoyo de las aplicaciones de business intelligence (BI) e inteligencia artificial (IA).
La diferencia obvia es que el proceso ELT realiza la función Cargar antes que la función Transformar, una inversión del segundo y tercer paso del proceso ETL. ELT copia o exporta los datos desde las ubicaciones de origen, pero en lugar de moverlos a un área de preparación para la transformación, carga los datos sin procesar directamente en el almacén de datos de destino, donde se pueden transformar según sea necesario. ELT no transforma ningún dato en tránsito.
Sin embargo, el orden de los pasos no es la única diferencia. En ELT, el almacén de datos de destino puede ser un almacén de datos, pero más a menudo es un lago de datos, que es un gran almacén central diseñado para contener datos estructurados y no estructurados a escala masiva.
Los lagos de datos se gestionan mediante una plataforma de big data (como Apache Hadoop) o un sistema de gestión de datos NoSQL distribuido. Pueden admitir business intelligence, pero, con mayor frecuencia, se crean para admitir inteligencia artificial, machine learning, analytics predictivos y aplicaciones impulsadas por datos en tiempo real y flujos de eventos.
También existen otras diferencias entre ETL y ELT. Por ejemplo, debido a que transforma los datos antes de moverlos al repositorio central, ETL puede hacer que el cumplimiento de la privacidad de los datos sea más simple, o más sistemático, que ELT (por ejemplo, si los analistas no transforman los datos confidenciales antes de que necesiten usarlos, podrían quedar desenmascarados en el lago de datos). Sin embargo, los científicos de datos podrían preferir ELT, que les permite experimentar en un “sandbox” de datos sin procesar y hacer su propia transformación de datos de datos adaptada a aplicaciones específicas. Pero, en la mayoría de los casos, la elección entre ETL y ELT dependerá de la elección entre los recursos comerciales disponibles y las necesidades.
ELT ofrece varios beneficios para los usuarios que integran el proceso en sus flujos de trabajo. Veamos algunos de los beneficios notables:
Cuando se generan grandes cantidades de datos de transmisión, ELT permite que esos datos se carguen inmediatamente y los transforma una vez que llegan a su destino. Esto evita cualquier desaceleración que a menudo puede ocurrir si la transformación ocurre antes de la función de carga, como en ETL. A menudo, las decisiones deben tomarse en relación con estos datos, y los retrasos son inaceptables. Un ejemplo de esto es el mercado de valores, que genera grandes cantidades de datos que se consumen en tiempo real. En escenarios como este, ELT es la solución preferida porque la transformación ocurre después de que los datos llegan a su destino.
Debido a que los datos se transforman cuando llegan a su destino, ELT permite que el destinatario de los datos controle la manipulación de datos. Con ELT, el desacoplamiento de las etapas de transformación y carga garantiza que un error de codificación u otro error en la etapa de transformación no afecte otra etapa.
ELT utiliza la potencia y el tamaño del almacén de datos para permitir la transformación, o cómputo escalable, a gran escala. El almacén de destino puede aumentar o disminuir nodos según sea necesario, particularmente en un escenario de nube donde hay varios nodos dentro de cada clúster y múltiples clústeres que se pueden utilizar. Esto permite flexibilidad y escalabilidad bajo demanda.
ELT requiere un servidor menos poderoso para la transformación de datos y aprovecha los recursos que ya están en el almacén. Esto se traduce en ahorros de costos y eficiencia de recursos.
ELT permite el uso del repositorio de destino elegido con fines de flexibilidad de costos y recursos. Los almacenes de datos usan la arquitectura MPP (procesamiento masivo en paralelo), incluido el almacenamiento de volúmenes de datos basado en memoria en columnas. También se admiten procesos de lago de datos que aplican un esquema o modelo de transformación, tan pronto como se reciben los datos (también denominado "esquema en la lectura"). Estos procesos eficientes proporcionan flexibilidad para grandes cantidades de datos.
El funcionamiento continuo es ideal para cualquier entorno que requiera un acceso rápido a los datos. ELT es ideal para los datos empleados en entornos de nube que a menudo incluirán aplicaciones a las que se accede bajo demanda de forma continua. Asimismo, la transformación de ELT nativa de la nube proporciona la escalabilidad y flexibilidad mencionadas anteriormente.
Una organización puede optar por la transición de una arquitectura ETL a una ELT. El motivo de la transición podría ser un cambio en el uso de su producto o servicio, de modo que se necesite una respuesta e interacción en tiempo real, o que la cantidad de datos creció exponencialmente y la transformación esté retrasando la etapa de carga debido a las demandas de procesamiento de alto volumen en la infraestructura. Una organización también puede optar por la transición de ETL a ELT si se trasladó a la nube y desea descargar el procesamiento o emplear los datos en la ubicación de destino antes.
En un escenario de transición, es realista encontrar desafíos. En primer lugar, se emplea una lógica y un código completamente diferentes en ELT frente a ETL. Esto podría requerir una reconfiguración completa y posiblemente una nueva infraestructura o un nuevo proveedor con infraestructura en la nube. Además, con ELT, los datos sin procesar se envían al almacén de destino. Por lo tanto, la seguridad es una consideración y se debe implementar para mantener los datos seguros.
ELT no es una tecnología nueva. Antes, se utilizaban tablas provisionales para mover datos a un almacén para su procesamiento y transformación, a menudo mediante scripts SQL. Los scripts SQL están codificados y, por lo tanto, están sujetos a posibles errores de codificación. Con el uso de SQL, los clientes tenían que elegir entre la ejecución nativa del almacén mediante scripts SQL y la programación declarativa, también conocida como creación declarativa. La creación declarativa proporciona los beneficios de entornos de almacenamiento de datos más modernos basados en la nube a través de la creación de código que describe lo que el programa debe lograr en lugar de cómo lo logrará. Este proceso evita los errores de codificación inherentes a otros procesos, especialmente cuando la transformación ocurre antes de la función de carga.
ELT se emplea normalmente en entornos de uso de datos de gran volumen o en tiempo real. Algunos ejemplos específicos son:
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.
Descubra IBM Databand, el software de observabilidad para canalizaciones de datos. Recopila metadatos automáticamente para crear líneas de base históricas, detectar anomalías y crear flujos de trabajo para solucionar problemas relacionados con la calidad de los datos.
Cree canalizaciones de datos resilientes, de alto rendimiento y con costes 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.