ETL (Extract-Transform-Load) ed ELT (Extract-Load-Transform) sono due termini comunemente usati nel campo dell’ingegneria dei dati e più specificamente nel contesto dell’acquisizione e della trasformazione dei dati.
Sebbene questi termini siano spesso usati in modo intercambiabile, si riferiscono a concetti leggermente diversi e hanno implicazioni diverse per la progettazione di una pipeline di dati.
In questo post chiariremo le definizioni dei processi ETL ed ELT, delineamo le differenze tra i due e discuteremo i vantaggi e gli svantaggi che entrambi hanno da offrire agli ingegneri e ai team dati in generale.
E, cosa più importante, descriverò come i recenti cambiamenti nella formazione dei moderni team di dati hanno influenzato il panorama della battaglia ETL vs ELT.
La posta in gioco principale quando si tratta di confrontare ETL ed ELT è ovviamente la sequenza in cui i passaggi di estrazione, caricamento e trasformazione vengono eseguiti all’interno di una pipeline di dati.
Per ora, ignoriamo questa sequenza di esecuzione e concentriamoci sulla terminologia effettiva e discutiamo su cosa dovrebbe fare ogni singolo passaggio.
Estratto: questo passaggio si riferisce al processo di estrazione dei dati da un’origine persistente. Questa origine dati potrebbe essere un database, un endpoint API, un file o qualsiasi cosa che contenga qualsiasi forma di dati, sia strutturati che non strutturati.
Trasformare: In questa fase, si prevede che la pipeline esegua alcune modifiche nella struttura o nel formato dei dati per raggiungere un determinato obiettivo. Una trasformazione potrebbe essere una selezione di attributi, una modifica di record (ad esempio trasforma 'United Kingdom'
in 'UK'
), una convalida dei dati, un’unione a un’altra origine o qualsiasi cosa che modifichi il formato dei dati grezzi di input.
Carico: La fase di caricamento si riferisce al processo di copia dei dati (sia la versione grezza che quella trasformata) nel sistema di destinazione…
Fonte: towardsdatascience.com