ETL (Extract, Transform, Load)
ETL è un processo che estrae, trasforma e carica i dati da più origini in un data warehouse o altri repository di dati unificati
Sfondo nero e blu
Cos'è ETL?

ETL, acronimo di  Extract, Transform e Load , è un processo di integrazione dei dati che combina i dati provenienti da più origini dati in un singolo archivio dati coerente che viene caricato in un  data warehouse  o su altri sistemi di destinazione.

Poiché nel corso degli anni '70 i database sono cresciuti in termini di popolarità, ETL è stato presentato come un processo per l'integrazione e il caricamento dei dati per il calcolo e l'analisi, fino a diventare il metodo principale per l'elaborazione dei dati per i progetti di data warehousing.

ETL pone le basi per l'analytics dei dati e i flussi di lavoro di machine learning. Attraverso una serie di regole di business, ETL ripulisce e organizza i dati in modo tale da risolvere le specifiche esigenze di business intelligence, come la produzione di report mensile, ma è anche in grado di affrontare l'analytics più avanzata, al fine di migliorare i processi di back-end o le esperienze dell' utente finale . ETL viene spesso utilizzato da un organizzazione per: 

  • Estrarre i  dati  dai sistemi esistenti
  • Ripulire i dati per migliorare la qualità dei dati e stabilire la coerenza
  • Caricare i dati in  database di destinazione
Ulteriori informazioni

Scopri come creare ed eseguire un lavoro ETL

Leggi il report Magic Quadrant for Data Integration Tools di Gartner del 2021

Leggi il prospetto informativo di IBM DataStage (169 KB)

Confronto tra ETL e ELT

La disparità più evidente tra ETL e ELT è la differenza nell'ordinare le operazioni. ELT copia o esporta i dati dalle ubicazioni di origine, ma invece di caricarli in un'area di staging per la trasformazione, i dati non elaborati vengono caricati direttamente sull'archivio dati di destinazione per essere trasformati a seconda delle esigenze.

Sebbene entrambi i processi traggono vantaggio da una serie di repository di dati, come ad esempio database, data warehouse e data lake, ciascun processo comporta vantaggi e svantaggi. ELT è particolarmente utile per i dataset non strutturati con volumi elevati, poiché il caricamento può avvenire direttamente dall'origine. ELT rappresenta la soluzione ideale per la gestione dei big data, in quanto non richiede una considerevole pianificazione anticipata per lo storage e l'estrazione dei dati. Il processo ETL, invece, richiede una maggiore definizione dal principio. È necessario individuare i punti dati specifici per l'estrazione, insieme alle potenziali "chiavi" da integrare tra i vari sistemi di origine. Anche dopo che il lavoro è stato completato, è necessario creare delle regole di business per la trasformazione dei dati. Questa operazione in genere può dipendere dai requisiti dei dati per un determinato tipo di analisi dei dati che stabilirà il livello di riepilogo richiesto dai dati. ELT, anche se è diventato sempre più diffuso con l'adozione dei database cloud, ha i suoi limiti poiché è un processo nato da poco, il che significa che le best practice sono ancora in corso di definizione.

Come funziona ETL

Il modo più semplice per comprendere il funzionamento di ETL è capire cosa accade in ogni fase del processo.

Estrazione

Durante l'estrazione dei dati, i dati non elaborati vengono copiati o esportati dalle ubicazioni di origine all'area di staging. I team di gestione dei dati possono estrarre i dati da un'ampia serie di origini dati, che possono essere strutturate o non strutturate. Tali origini includono, a titolo di esempio:

  • Server SQL o NoSQL 
  • Sistemi ERP e CRM
  • File flat
  • E-mail
  • Pagine Web

Trasforma

Nell'area di staging, i dati non elaborati sono sottoposti all'elaborazione dei dati. In questo scenario, i dati vengono trasformati e consolidati per il caso di utilizzo analitico previsto. Questa fase può coinvolgere le seguenti operazioni:

  • Filtraggio, pulizia, deduplicazione, convalida e autenticazione dei dati.
  • Esecuzione di calcoli, traduzioni o riepiloghi sulla base dei dati non elaborati. Ciò può  includere la modifica delle intestazioni di righe e colonne per la congruenza, la conversione di valute o altre unità di misura, la modifica delle stringhe di testo e altro ancora.
  • Effettuare controlli per garantire la qualità dei dati e la conformità
  • Rimuovere, crittografare o proteggere i dati disciplinati dalle autorità governative o di settore
  • Formattare i dati in tabelle o tabelle unite per associare lo schema del data warehouse di destinazione.

Caricamento

In questo ultima fase, i dati trasformati vengono spostati dall'area di staging a un data warehouse di destinazione. Generalmente, ciò comporta un caricamento iniziale di tutti i dati, seguito da un caricamento periodico di modifiche incrementali dei dati e, più raramente, da aggiornamenti completi per cancellare e sostituire i dati in warehouse. Per la maggior parte delle organizzazioni che utilizzano ETL, il processo è automatizzato, ben definito, continuo e basato su batch. Generalmente, ETL viene eseguito fuori dall'orario di lavoro, quando il traffico sui sistemi di origine e sul data warehouse è ridotto al minimo.

ETL e altri metodi di integrazione dei dati

ETL e ELT sono semplicemente due metodi di integrazione dei dati, ed esistono anche altri approcci che vengono utilizzati per semplificare i flussi di lavoro dell'integrazione dei dati. Tra di loro ricordiamo:

  • CDC (Change Data Capture)  rileva e acquisisce solo i dati di origine che sono stati modificati e li trasferisce sul sistema di destinazione. CDC può essere utilizzato per ridurre le risorse richieste durante la fase di "estrazione" ETL; può anche essere utilizzato in modo indipendente per spostare i dati che hanno subito una trasformazione in un data lake oppure in un altro repository in tempo reale.
  • La Replica dei dati  copia le modifiche nelle origini dati in tempo reale o in batch su un database centrale. La Replica dei dati  è spesso indicata come metodo di integrazione dei dati. Infatti, viene spesso utilizzata per creare dei backup per il  disaster recovery.
  • La virtualizzazione dei dati  sfrutta un livello di astrazione del software per creare una  vista  unificata, integrata e completamente utilizzabile di dati, senza copiare, trasformare o caricare sostanzialmente i dati di origine su un sistema di destinazione. La funzionalità di virtualizzazione dei dati  consente a un organizzazione di creare data mart, data lake e data warehouse virtuali dalle stesse origini dati per lo storage dei dati senza la complessità e senza incorrere nei costi di sviluppo e gestione di piattaforme separate per ciascuno. La virtualizzazione dei dati, poiché può essere utilizzata insieme a ETL, è sempre più vista come un alternativa a ETL e ad altri metodi di integrazione dei dati fisici.
  • SDI (Stream Data Integration)  come suggerisce il nome stesso—utilizza continuamente i flussi di dati in tempo reale, li trasforma e li carica in un sistema di destinazione per analisi. Il termine chiave qui è continuamente. Anziché integrare le istantanee di dati estratte dalle origini in un determinato momento, SDI integra i dati costantemente man mano che diventano disponibili. SDI abilita un archivio dati per consolidare l'analytics, il machine learning e le applicazioni in tempo reale al fine di migliorare l'esperienza dei clienti, il rilevamento delle frodi e altro ancora. 
I vantaggi e le sfide di ETL

Le soluzioni ETL migliorano la qualità eseguendo la pulizia dei dati prima di caricarli in un repository differente. ETL è un'operazione in batch dispendiosa in termini di tempo ed è consigliato sempre più spesso per la creazione di repository di dati di destinazione di piccole dimensioni che richiedono aggiornamenti poco frequenti, mentre altri metodi di integrazione dei dati, tra cui ELT (extract, load, transform), CDC (change data capture) e la virtualizzazione dei dati—vengono utilizzati per integrare volumi sempre maggiori di dati che cambiano o flussi di dati in tempo reale.

 

Ulteriori informazioni sull'integrazione dei dati
Strumenti ELT

In passato, le organizzazioni scrivevano il codice ETL per conto proprio. Oggi, esistono molti servizi cloud e strumenti ETL commerciali e open source tra cui scegliere. Le tipiche funzionalità di questi prodotti includono:

  • Automazione completa e facilità di utilizzo:  i principali strumenti ETL automatizzano l'intero flusso di dati, dalle origini dati al warehouse dei dati di destinazione. Molti strumenti suggeriscono delle regole per l'estrazione, la trasformazione e il caricamento dei dati.
  • Un'interfaccia visiva con funzionalità di trascinamento e rilascio:  Questa funzione può essere utilizzata per specificare regole e flussi di dati.
  • Supporto per la gestione di dati complessi:  ciò include il supporto per l'esecuzione di calcoli complessi, integrazioni dati e manipolazioni delle stringhe.
  • Sicurezza e conformità:  i migliori strumenti ETL codificano sia i dati attivi che quelli inattivi e dispongono della certificazione di conformità alle normative governative o di settore, come HIPAA e GDPR.

Inoltre, molti strumenti ETL si sono evoluti per includere la funzionalità ELT e supportare l' integrazione dei dati in streaming e in tempo reale per le applicazioni AI (Artificial Intelligence - Intelligenza Artificiale).

Il futuro dell'integrazione - API  che utilizzano l'EAI

Le API (Application Programming Interface) che si avvalgono dell'EAI (Enterprise Application Integration) possono essere utilizzate al posto di ETL per una soluzione più flessibile e scalabile che include l'integrazione del  flusso di lavoro . Anche se ETL rimane ancora la risorsa di riferimento per l' integrazione dei dati , l'EAI viene utilizzato sempre più frequentemente con le  API  nelle configurazioni in ambito Web.

Soluzioni correlate
IBM Cloud Pak for Data

IBM Cloud Pak for Data è una piattaforma di dati aperta ed estensibile che fornisce una struttura per rendere tutti i dati disponibili per AI e analytics, su qualsiasi cloud.

Esplora IBM Cloud Pak for Data
IBM DataOps

L'AI libera il valore dei dati lungo nuove strade. Con le soluzioni DataOps l'utente organizza i suoi dati preparandoli al mondo AI e multicloud.

Esplora IBM DataOps
Integrazione dei dati

L'integrazione dei dati permette di trasformare i dati strutturati e non strutturati e distribuirli in qualsiasi sistema su una piattaforma di big data scalabile.

Esplora l'integrazione dei dati
Risorse Hive come strumento per ETL o ELT
Estrai, trasforma e carica (ETL) OPPURE estrai, carica e quindi trasforma (ETL)
Confronto tra ELT ed ETL: qual è la differenza?
Scopri le somiglianze e le differenze nelle definizioni, nei vantaggi e nei casi di utilizzo di ELT ed ETL.
Making Data Simple: Al Martin e Michel Tricot parlano di ELT messo a confronto con ETL sotto il profilo tecnico in Airbyte e di imprenditorialità
Ospitato da Al Martin, VP, IBM Expert Services Delivery, Making Data Simple fornisce le riflessioni più recenti su big data, AI e le implicazioni da un punto di vita aziendale di un'ampia gamma di esperti.
Passa alla fase successiva

IBM offre diversi servizi e soluzioni di integrazione dei dati progettati per supportare una pipeline di dati pronta per il business e fornire alla tua azienda gli strumenti di cui ha bisogno per eseguire la scalabilità in modo efficiente. IBM, leader nell'integrazione dei dati, fornisce alle aziende la fiducia necessaria per la gestione di progetti di big data, applicazioni e tecnologia di machine learning. Con le piattaforme leader di settore come IBM® Cloud Pak for Data, le organizzazioni possono modernizzare i propri processi DataOps potendo al contempo utilizzare i migliori strumenti di virtualizzazione per raggiungere la velocità e la scalabilità di cui hanno bisogno, ora e in futuro.

Esplora IBM® Cloud Pak for Data