ELT (Extract, Load, and 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" (Estrazione, Caricamento, Trasformazione) è un altro tipo di processo di integrazione dei dati, simile alla sua controparte ETL (extract, transform, and load). 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 più recentemente ha ottenuto l'adozione con la transizione agli ambienti cloud.


Come funziona ELT

Il processo ELT è composto da tre fasi principali: Estrazione, Caricamento e Trasformazione. Ciascuna di tali fasi è descritta dettagliatamente di seguito.

Estrazione

Durante l'estrazione dei dati, i dati vengono copiati o esportati dalle ubicazioni di origine in un'area di staging. 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
  • Email
  • Pagine Web

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

Caricamento

In questa fase, i dati trasformati vengono spostati dall'area di staging 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, il processo ELT viene eseguito durante l'orario di lavoro, quando il traffico sui sistemi di origine e sul data warehouse è massimo e gli utenti sono in attesa di utilizzare i dati per l'analisi o in altri modi.

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, traduzioni, analisi dei dati o riepiloghi basati sui dati non elaborati. Questo può includere tutto, dalla modifica delle intestazioni di righe e colonne per la congruenza 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 BI 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 distribuito nel warehouse.

Confronto tra ETL e ELT

È possibile confondere il processo ELT con il suo processo gemello noto con un acronimo quasi identico. Tuttavia, esistono diverse differenze tra ELT ed ETL, acronimo di  extract, transform and load (estrazione, trasformazione e caricamento). È  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 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. Il processo ELT copia o esporta i dati dalle ubicazioni di origine, ma invece di spostarli in un'area di staging per la trasformazione, carica i dati non elaborati direttamente nell'archivio dati di destinazione, dove possono essere trasformati in base alle necessità. Il processo 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 vasta 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 leaing, analisi predittiva e applicazioni guidate da dati in tempo reale e flussi di eventi.

Tra ETL ed ELT esistono anche altre differenze. Ad esempio, poiché trasforma i dati prima di spostarli nel repository centrale, il processo ETL può rendere più semplice, o più sistematica, la conformità alla privacy dei dati rispetto a ELT (ad esempio, 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 il processo 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 e le esigenze aziendali disponibili.


Vantaggi di ELT

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

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

Quando viene generata una grande quantità di dati in straming, ELT consente di caricare tali dati immediatamente e li trasforma una volta giunti a destinazione. Questo impedisce qualsiasi rallentamento che può verificarsi spesso se la trasformazione avviene prima del caricamento, come nel processo 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, il processo 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, il processo 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 influiscono 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 in base alle necessità, 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à su richiesta.

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), inclusa l'archiviazione colonnare basata sulla memoria dei volumi di dati. Sono supportati anche i processi di data lake che applicare uno schema, o modello di trasformazione, non appena i dati vengono (chiamati anche " schema -on-read"). Questi processi efficienti offrono flessibilità per grandi quantità di dati.

Funzionamento continuo

Il funzionamento continuo è ideale per qualsiasi ambiente che richieda l'accesso rapido ai dati. ELT è adatto per i dati utilizzati all'interno di ambienti cloud che spesso includono applicazioni a cui si accede continuamente su richiesta. 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 interazione e risposte in tempo reale o la crescita esponenziale della quantità di dati, per cui la trasformazione ritarda la fase di caricamento a causa di un numero elevato di richieste di elaborazione dei volumi sull'infrastruttura. Un'organizzazione può scegliere di passare da ETL a ELT se è passata al cloud e desidera scaricare l'elaborazione o utilizzare più rapidamente i dati nella 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 infrastruttura nel cloud. Inoltre, con ELT, i dati non elaborati vengono inviati al warehouse di destinazione. Pertanto, la sicurezza è una considerazione e deve essere implementato per mantenere i dati al sicuro.


Il passato e il futuro di ELT

ELT non è una nuova tecnologia. Le tabelle di staging venivano precedentemente utilizzate per spostare i dati in un warehouse per l'elaborazione e la trasformazione, spesso utilizzando script SQL. Gli script SQL contengono codice senza variabili, 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 intrinsechi 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 accesso istantaneo. Ad esempio, borse valori o distributori all'ingrosso su vasta scala di azioni, componenti industriali e altri materiali che hanno bisogno di accesso in tempo reale ai dati correnti per accedere immediatamente alla business intelligence.
  • Organizzazioni con grandi volumi di dati. Ad esempio, sistemi meteorologici come i servizi meteo che raccolgono 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 raccolti e analizzati. Potrebbero esistere sovrapposizioni tra le due categorie, in quanto esistono molte aziende che producono e utilizzano una grande quantità di dati a cui hanno bisogno di accedere in tempo reale.

ETL, integrazione dei dati e IBM Cloud

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 necessari per di cui ha bisogno per adattarsi 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 ai vertici del settore come  IBM Cloud Pak® for Data, le organizzazioni possono modernizzare i propri processi  DataOps  utilizzando i migliori strumenti di virtualizzazione per raggiungere la velocità e la scalabilità di cui hanno bisogno, ora e in futuro.

Per scoprire in che modo la tua azienda può realizzare ed eseguire una strategia efficace di integrazione dei dati, esplora la serie di offerte IBM realtive all' integrazione dei dati.

Registrati per ottenere un IBMid e crea il tuo account IBM Cloud.


Soluzioni correlate

IBM Cloud Pak for Data

Cloud IBM 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.


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.


Integrazione dei dati

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