Cos'è ETL (Extract, Transform, Load)?

Definizione di ETL

ETL (Extract, Transform, Load) è un processo di integrazione dati che estrae informazioni da uno o più sistemi sorgente, le converte in un formato coerente e utilizzabile, e le carica in un sistema di destinazione come un data warehouse, un PIM o una piattaforma MDM. È uno dei metodi più diffusi per spostare e consolidare dati all'interno di un'organizzazione.

Cosa accade in ogni fase?

  • Extract — i dati vengono recuperati dai sistemi sorgente, che potrebbero includere software ERP, fogli di calcolo, feed di fornitori, database o API di terze parti. La fase di estrazione non modifica i dati; li copia semplicemente.
  • Transform — i dati estratti vengono ripuliti, riformattati e standardizzati. Questo potrebbe comportare la conversione delle unità di misura, la correzione di valori incoerenti, l'unione di campi provenienti da fonti diverse o l'esclusione di record che non soddisfano le regole di qualità. È in questa fase che risiede la maggior parte della logica.
  • Load — i dati trasformati vengono scritti nel sistema di destinazione, sia in massa (una sostituzione completa) che in modo incrementale (solo record nuovi o modificati).

Quando viene utilizzato ETL?

ETL viene utilizzato ogni volta che i dati devono spostarsi tra sistemi che non condividono un formato o una connessione diretta. Gli scenari tipici includono:

  • Consolidamento dei dati di prodotto provenienti da più fornitori in un PIM centralizzato
  • Spostamento dei dati transazionali in un Data Warehouse per la reportistica
  • Migrazione di record da un sistema legacy a una nuova piattaforma
  • Sincronizzazione dei Dati Master tra un sistema ERP e una piattaforma MDM.

Qual è la differenza tra ETL e ELT?

In ETL, i dati vengono trasformati prima di essere caricati, il che significa che l'elaborazione avviene al di fuori del sistema di destinazione, spesso in uno strumento dedicato. In ELT, i dati grezzi vengono caricati prima e trasformati all'interno del sistema di destinazione utilizzando la sua stessa capacità di elaborazione. La differenza pratica riguarda il luogo in cui viene eseguita la logica di trasformazione e le capacità del sistema di destinazione.