ETL vs ELT ¿Cuáles son sus diferencias?

Última actualización: 04/10/2020

ETL vs ELT: en este artículo exploramos las diferencias y similitudes entre ETL y ELT como métodos para integrar y mover grandes cantidades de datos para Big Data. Sigue leyendo.

ETL vs ELT Diferencias

Pueden parecer muy similares, pero ¿Qué diferencias existen entre ETL y ELT?

Comúnmente, en las organizaciones se usan procesos ETL (Extract, Transform, Load) o procesos ELT (Extract, Load, Transform) para cargar datos de las diversas fuentes en el lago de datos o Data Warehouse pertinente.

Los procesos de este tipo son los encargados de mover grandes volúmenes de datos, integrarlos e ingestarlos en un lugar común para ser accesibles de una forma adecuada por los miembros de la organización interesados.

La diferencia se encuentra en el orden en el que estos procesos realizan las operaciones necesarias. Cada uno de estos métodos se comporta mejor en distintas situaciones.

¿Qué es ETL?

Los procesos ETL extraen los datos de fuentes diversas, por ejemplo tablas en bases de datos relacionales. Después, transforman estos datos realizando agregaciones, cambios de tipos o cruces con otras tablas o datos existentes. El último paso consiste en cargar los datos preparados en el almacenamiento final, típicamente un Data Warehouse.

Como podemos observar, en este caso, la carga de procesamiento recae sobre el proceso ETL y la tecnología sobre la que se ha implementado.

Esquema con las tres fases ETL: Extract, Transform, Load
Esquema con las tres fases ETL: Extract, Transform, Load

Debido a estas características, los procesos ETL son ideales para las siguientes situaciones:

  • Ingestas y transformaciones de datos estructurados
  • La fuente de datos y el destino usan tecnologías y tipos de datos distintos
  • Los volúmenes de datos a transformar o procesar son manejables (volumen pequeño o medio)
  • Las transformaciones son intensivas en cómputo

¿Qué es ELT?

En los procesos de tipo ELT, los datos se transforman después de ser cargados en la base de datos final. La operación de carga, por tanto, es la fase intermedia del proceso.

En concreto, las transformaciones necesarias sobre los datos las completa la base de datos destino, generalmente clústers Hadoop o bases de datos NoSQL.

Con estas características, los procesos ELT son adecuados en los siguientes casos:

  • Los datos son no estructurados
  • La fuente de datos y el destino son la misma tecnología, por ejemplo Oracle
  • Los volúmenes de datos a transformar son muy grandes, manejables por el motor de base de datos destino

ETL vs ELT

Las tecnologías ETL han estado en uso durante muchos años, tienen un nivel de madurez y de flexibilidad muy alto aunque están específicamente diseñadas para funcionar muy bien con bases de datos relacionales y datos estructurados.

Por otro lado, los procesos ELT no han sido diseñados para funcionar con bases de datos relacionales, sino con soluciones NoSQL y entornos cloud. La complejidad de las operaciones que manejan por lo tanto es menor pero el volumen de datos que pueden soportar suele ser mucho más alto que las soluciones ETL.

Desde el punto de vista de la implementación de ambos procesos, es fácil observar que la rigidez en cuanto a los tipos y la estructura de los datos en el caso de ETL puede dificultar los cambios posteriores del proceso. Con métodos ELT, es común mover datos estructurados y no estructurados con los mismos procedimientos y el dataset resultante permitir operaciones flexibles y a medida.

ETLT

A menudo las organizaciones necesitan sacar partido de las ventajas de ambos métodos, y por tanto se ha extendido el enfoque ETLT (Extract, Transform, Load, Transform).

El resultado de este flujo de operaciones sobre los datos permite ajustar las tecnologías y los tiempos para optimizar las cargas de trabajo.

Por ejemplo, imagina que necesitamos realizar operaciones de tipo JOIN con datos nuevos sobre datos existentes en el Data Warehouse. Con un enfoque de ETL, sería necesario extraer los datos del almacenamiento final para realizar la operación. sin embargo, con un procedimiento de tipo ETLT, este paso no es necesario ya que el JOIN sobre los datos se podría realizar tras la carga.


A continuación el vídeo-resumen. ¡No te lo pierdas!


¡Echa un ojo a mi lista de reproducción de Big Data en Youtube!

Si te ayuda el contenido del blog, por favor considera unirte a la lista de correo para reconocer el trabajo!

Deja una respuesta