Procesy ETL i ELT odpowiadają za przenoszenie danych z systemów źródłowych do docelowego repozytorium analitycznego, różniąc się kolejnością etapu transformacji danych względem etapu ich załadowania.

Definicja procesu ETL

Proces ETL (Extract, Transform, Load) zakłada wyodrębnienie danych ze źródła, ich przekształcenie do docelowego formatu poza docelowym systemem, a następnie załadowanie już przetworzonych danych do hurtowni danych. Podejście to jest typowe dla architektur opartych na klasycznych hurtowniach danych.

Definicja procesu ELT

Proces ELT (Extract, Load, Transform) zakłada odwrotną kolejność — dane są najpierw ładowane w formacie surowym do docelowego repozytorium, a transformacja odbywa się już wewnątrz tego systemu, wykorzystując jego moc obliczeniową. Podejście to jest częściej stosowane w architekturach data lake i lakehouse.

Kiedy które podejście wybrać

Wybór między ETL a ELT zależy od charakterystyki docelowego systemu przechowywania danych oraz dostępnych zasobów obliczeniowych. Systemy przetwarzania rozproszonego, opisane w wydaniu Przetwarzanie rozproszone: Hadoop i Spark w praktyce, umożliwiają efektywne przeprowadzanie transformacji danych już po ich załadowaniu, co sprzyja podejściu ELT.