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

ELT, acronimo di "Extract, Load, Transform", ossia "estrai, carica e trasforma", è un altro tipo di processo di integrazione dei dati, simile alla sua controparte ETL (acronimo di Extract, Transform, Load, ossia "estrai, trasforma e carica"). Questo processo sposta i dati non elaborati da un sistema di origine a una risorsa di destinazione, come un data warehouse. Sebbene simile a ETL, ELT è un approccio fondamentalmente differente alla pre-elaborazione dei dati che solo di recente ha visto crescere la sua adozione con la transizione agli ambienti cloud.

Come funziona ELT

ELT è composto da tre fasi principali: Extract (estrai), Load (carica) e Transform (trasforma). Ciascuna di tali fasi è descritta dettagliatamente di seguito.

Extract (estrai)

Durante l'estrazione dei dati, i dati vengono copiati o esportati dalle ubicazioni di origine in un'area di gestione temporanea. L'insieme di dati può essere composto da diversi tipi di dati e provenire praticamente da qualsiasi risorsa strutturata o non strutturata, inclusi, a titolo esemplificativo ma non esaustivo:

  • Server SQL o NoSQL 
  • Sistemi ERP e CRM
  • File di testo e documento
  • E-mail
  • Pagine web

Detto questo, è più tipicamente usato con dati non strutturati.

Load (carica)

In questa fase, i dati trasformati vengono spostati dall'area di gestione temporanea ad un'area di storage dei dati, come un data warehouse o un data lake.

Per la maggior parte delle organizzazioni, il processo di caricamento dei dati è automatizzato, ben definito, continuo e basato su batch. In genere, ELT ha luogo durante l'orario di lavoro, quando il traffico sui sistemi di origine e sul data warehouse è al suo massimo e gli utenti sono in attesa di utilizzare i dati per l'analisi o in altri modi.

Transform (trasforma)

In questa fase, viene impiegato un approccio schema-on-write, che applica lo schema per i dati utilizzando SQL, o trasforma i dati, prima dell'analisi. Questa fase può comportare quanto segue:

  • Filtraggio, pulizia, deduplicazione, convalida e autenticazione dei dati.
  • Esecuzione di calcoli, conversioni, analisi dei dati o riepiloghi basati sui dati non elaborati. Questo può includere tutto, dalla modifica delle intestazioni di righe e colonne per la coerenza alla conversione di valute o unità di misura, nonché alla modifica di stringhe di testo e all'aggiunta o al calcolo della media dei valori - tutto quello che è necessario per soddisfare gli scopi di BI (Business Intelligence) o analitici specifici dell'organizzazione.
  • Rimozione, crittografia, occultamento o altra protezione dei dati disciplinati da normative governative o di settore.
  • Formattazione dei dati in tabelle o tabelle unite in base allo schema implementato nel warehouse.
Confronto tra ETL e ELT

È possibile confondere ELT con il suo processo gemello noto con un acronimo quasi identico. Tuttavia, esistono diverse differenze tra ELT ed ETL, acronimo di Extract, Transform, Load (estrai, trasforma e carica). È un processo di integrazione dei dati che combina di dati da più origini dati in un unico archivio dati coerente caricato in un data warehouse oppure in un altro sistema di destinazione. Gli strumenti ETL tradizionali sono stati progettati per creare data warehousing a supporto di applicazioni di BI (Business Intelligence) e AI.

ETL ed ELT - quali sono le differenze?

La differenza ovvia è che il processo ELT esegue la funzione di caricamento prima della funzione di trasformazione, invertendo la seconda e terza fase del processo ETL. ELT copia o esporta i dati dalle ubicazioni di origine, ma invece di spostarli in un'area di gestione temporanea per la trasformazione, carica i dati non elaborati direttamente nell'archivio dati di destinazione, dove possono essere trasformati come necessario. ELT non trasforma i dati in transito.

Tuttavia, l'ordine delle fasi non è l'unica differenza. In ELT, l'archivio dati di destinazione può essere un data warehouse, ma più spesso è un data lake, un grande archivio centrale progettato per contenere dati strutturati e non strutturati su larga scala.

I data lake sono gestiti utilizzando una piattaforma di big data (come Apache Hadoop) o un sistema di gestione dei dati NoSQL distribuito. Possono supportare la Business Intelligence ma, più spesso, sono creati per supportare AI, machine learning, analytics predittiva e applicazioni basate su dati e flussi di eventi in tempo reale.

Tra ETL ed ELT esistono anche altre differenze. Ad esempio, poiché trasforma i dati prima di spostarli nel repository centrale, ETL può rendere più semplice, o più sistematica, la conformità alla privacy dei dati rispetto a ELT (ad esempio, se gli analisti non trasformano i dati sensibili prima che sia necessario utilizzarli, questi potrebbero rimanere non mascherati nel data lake). Tuttavia, i data scientist potrebbero preferire ELT, che consente di utilizzare una "sandbox" di dati non elaborati e di eseguire la trasformazione dei dati in modo personalizzato per applicazioni specifiche. Ma, nella maggior parte dei casi, la scelta tra ETL ed ELT dipende dalla scelta tra le risorse aziendali disponibili e le esigenze.

Vantaggi di ELT

ELT offre diversi vantaggi per gli utenti che integrano il processo nei propri flussi di lavoro. Ecco alcuni dei vantaggi significativi:

Spostamento più veloce dei dati verso la destinazione per una disponibilità più rapida

Quando viene generata una grande quantità di dati in streaming, ELT consente di caricare tali dati immediatamente e li trasforma una volta giunti a destinazione. Questo impedisce qualsiasi rallentamento che può spesso verificarsi se la trasformazione avviene prima della funzione di caricamento, come in ETL. Spesso, è necessario prendere decisioni in relazione a tali dati e i ritardi sono inaccettabili. Un esempio è dato dal mercato azionario, che genera grandi quantità di dati che vengono utilizzati in tempo reale. In scenari simili, ELT è la soluzione più adatta, perché la trasformazione viene effettuata dopo che i dati hanno raggiunto la propria destinazione.

Separazione delle preoccupazioni

Poiché i dati vengono trasformati una volta raggiunta la propria destinazione, ELT consente al destinatario dei dati di controllare la manipolazione dei dati. Con ELT, la separazione delle fasi di trasformazione e caricamento garantisce che un errore di codifica o altri tipi di errore nella fase di trasformazione non influiscano su un'altra fase.

Assenza di problemi di scalabilità del server

ELT utilizza la potenza e la dimensione del data warehouse per abilitare la trasformazione, o calcolo scalabile, su larga scala. Il data warehouse di destinazione può aumentare o ridurre i nodi come necessario, in particolare in uno scenario cloud in cui sono presenti molti nodi all'interno di ciascun cluster e più cluster che possono essere utilizzati. Questo consente flessibilità e scalabilità on-demand.

Risparmio

ELT richiede un server meno potente per la trasformazione dei dati e sfrutta le risorse già presenti nel warehouse. Questo si traduce in risparmi sui costi ed efficienza delle risorse.

Flessibilità

ELT consente di utilizzare il repository di destinazione desiderato, per la flessibilità di costi e risorse. I data warehouse utilizzano l'architettura MPP (Massively Parallel Processing), incluso lo storage colonnare basato sulla memoria dei volumi di dati. Sono supportati anche i processi di data lake che applicano uno schema, o modello di trasformazione, non appena i dati vengono ricevuti (chiamato anche " schema-on-read"). Questi processi efficienti offrono flessibilità per grandi quantità di dati.

Esecuzione continua

L'esecuzione continua è ideale per qualsiasi ambiente che richieda un rapido accesso ai dati. ELT è adatto per i dati utilizzati all'interno di ambienti cloud che spesso includeranno applicazioni a cui si accede continuamente on-demand. Allo stesso modo, la trasformazione ELT nativa del cloud offre la scalabilità e flessibilità sopra menzionate.

Sfide associate al passaggio da un'architettura ETL ad un'architettura ELT

Un'organizzazione può scegliere di passare da un'architettura ETL ad un'architettura ELT. Il motivo della transizione potrebbe essere una variazione nell'uso del proprio prodotto o servizio tale da richiedere interazioni e risposte in tempo reale o la crescita esponenziale della quantità di dati, per cui la trasformazione ritarda la fase di caricamento a causa delle esigenze di elaborazione ad alto volume sull'infrastruttura. Un'organizzazione può scegliere di passare da ETL a ELT se è passata al cloud e desidera delegare l'elaborazione o utilizzare più rapidamente i dati nell'ubicazione di destinazione.

In uno scenario di transizione, è realistico prevedere di affrontare delle sfide. Innanzitutto, in ELT ed ETL vengono utilizzati codice e logica completamente differenti. Questo potrebbe richiedere una completa riconfigurazione ed eventualmente una nuova infrastruttura o un nuovo provider con l'infrastruttura nel cloud. Inoltre, con ELT, i dati non elaborati vengono inviati al warehouse di destinazione. Pertanto, la sicurezza è una considerazione e deve essere implementata per tenere i dati al sicuro.

Il passato e il futuro di ELT

ELT non è una nuova tecnologia. Le tabelle di gestione temporanea venivano precedentemente utilizzate per spostare i dati in un warehouse per l'elaborazione e la trasformazione, spesso utilizzando script SQL. Gli script SQL sono codificati in modo fisso e quindi sono soggetti a potenziali errori di codifica. Con l'uso di SQL, i clienti dovevano scegliere tra l'esecuzione nativa del warehouse utilizzando script SQL e la programmazione dichiarativa, nota anche come creazione dichiarativa. La creazione dichiarativa offre i vantaggi di ambienti data warehouse più moderni basati su cloud attraverso la creazione di codice che descrive gli obiettivi che il programma deve raggiungere piuttosto che il modo in cui raggiungerli. Questo processo impedisce gli errori di codifica intrinseci in altri processi, in particolare quando la fase di trasformazione si verifica prima della funzione di caricamento.

Casi di utilizzo

ELT viene generalmente utilizzato negli ambienti di utilizzo di dati in tempo reale o ad alto volume. Alcuni esempi specifici sono:

  • Organizzazioni che richiedono un accesso istantaneo. Ad esempio, borse valori o distributori all'ingrosso su vasta scala di forniture, componenti industriali e altri materiali che hanno bisogno di un accesso in tempo reale ai dati correnti per accedere immediatamente alla Business Intelligence.
  • Organizzazioni con grandi volumi di dati. Degli esempi includono i sistemi meteorologici come i servizi meteo che raccolgono, riuniscono e utilizzano regolarmente grandi quantità di dati. In questa categoria potrebbero rientrare anche le aziende con elevati volumi di transazioni. Un'organizzazione come un laboratorio astronomico con telescopi estremamente grandi genera una grande quantità di dati che devono essere riuniti e analizzati. Potrebbero esistere sovrapposizioni tra le due categorie, in quanto esistono molte aziende che producono e utilizzano una grande quantità di dati e che hanno bisogno di accedere in tempo reale a tali dati.
Soluzioni correlate
IBM Cloud Pak for Data

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

Esplora IBM Cloud Pak for Data
IBM DataOps

L'AI sta sbloccando il valore dei dati in nuovi modi. Organizza i tuoi dati per renderli pronti per un mondo di AI e multicloud con le soluzioni DataOps.

Esplora IBM DataOps
Integrazione dei dati

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

Esplora l'integrazione dei dati
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