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

Donna che lavora online con un laptop, controlla le e-mail e pianifica su Internet mentre è seduta da sola in ufficio al lavoro

Cos'è l'ETL?

ETL (estrazione, trasformazione, caricamento), è un processo di integrazione dei dati che combina, pulisce e organizza i dati provenienti da più fonti in un unico set di dati coerente per l'archiviazione in un data warehouse, data lake o altro sistema di destinazione.

Le pipeline di dati ETL forniscono le basi per l'analisi dei dati e i workflow di machine learning. Attraverso una serie di business rule, l'ETL ripulisce e organizza i dati in modo da soddisfare esigenze specifiche di business intelligence, come il reporting mensile, ma può anche affrontare attività di analytics più avanzate, che possono migliorare i processi di back-end o le esperienze degli utenti finali. Le pipeline ETL vengono spesso utilizzate dalle organizzazioni per:

  • Estrarre i dati dai sistemi legacy

  • Pulire i dati per migliorarne la qualità e stabilirne la coerenza

  • Caricare i dati in un database di destinazione

Design 3D di palline che rotolano su una pista

Le ultime notizie e insight sull'AI


Scopri notizie e insight selezionati da esperti in materia di AI, cloud e molto altro nella newsletter settimanale Think. 

Come si è evoluto l'ETL

Le aziende generano dati da sempre, tuttavia l'analytics moderna è diventata possibile solo con l'arrivo del computer digitale e del data storage.

Un importante passo avanti arrivò negli anni '70, con il passaggio a database centralizzati più grandi. L'ETL è stato quindi introdotto come processo per l'integrazione e il caricamento dei dati per il calcolo e l'analisi, diventando infine il metodo principale per elaborare i dati nei progetti di data warehousing.

Alla fine degli anni '80, i data warehouse e il passaggio dai database transazionali ai database relazionali che memorizzavano le informazioni in formati di dati relazionali crebbero in popolarità. Poiché i database transazionali più vecchi memorizzavano le informazioni transazione per transazione, con informazioni duplicate sui clienti che venivano memorizzate a ogni transazione, non c'era un modo semplice per accedere ai dati dei clienti in modo unificato nel tempo. Con i database relazionali, l'analytics è diventata la base della business intelligence (BI) e uno strumento significativo nel processo decisionale.

Prima dell'arrivo di software ETL più sofisticati, i tentativi erano stati in gran parte sforzi manuali da parte del team IT per estrarre i dati da vari sistemi e connettori, trasformare i dati in un formato comune e quindi caricarli in tabelle interconnesse. Tuttavia, le prime fasi dell'ETL sono state utili, poiché algoritmi avanzati, oltre all'ascesa delle reti neurali, hanno prodotto opportunità sempre più profonde per insight analitici.

L'era dei big data è arrivata negli anni '90, quando la velocità di calcolo e la capacità di storage hanno continuato a crescere rapidamente, con grandi volumi di dati estratti da nuove fonti, come i social media e l'Internet of Things (IoT). Rimaneva un fattore limitante, ovvero che i dati venivano spesso memorizzati in data warehouse on-premise.

Il passo successivo importante, sia nell'informatica che nell'ETL, è stato il cloud computing, divenuto popolare alla fine degli anni '90. Utilizzando data warehouse come Amazon Web Services (AWS), Microsoft Azure e Snowflake, ora è possibile accedere ai dati da tutto il mondo e scalarli rapidamente per consentire alle soluzioni ETL di offrire insight estremamente dettagliati e un nuovo vantaggio competitivo.

L'ultima evoluzione sono le soluzioni ETL che utilizzano lo streaming di dati per fornire insight aggiornati al secondo da enormi quantità di dati.

Mixture of Experts | 12 dicembre, episodio 85

Decoding AI: Weekly News Roundup

Unisciti al nostro gruppo di livello mondiale di ingegneri, ricercatori, leader di prodotto e molti altri mentre si fanno strada nell'enorme quantità di informazioni sull'AI per darti le ultime notizie e gli ultimi insight sull'argomento.

ETL ed ELT a confronto

La differenza più evidente tra ETL ed ELT (estrazione, caricamento, trasformazione) è la differenza nell'ordine delle operazioni. L'ELT copia o esporta i dati dalle posizioni di origine, ma anziché caricarli in un'area di staging per la trasformazione, carica i dati non elaborati direttamente nel data store di destinazione per trasformali in base alle esigenze.

Sebbene entrambi i processi utilizzino una varietà di repository di dati, come database, data warehouse e data lake, ciascun processo presenta vantaggi e svantaggi. L'ELT è utile per importare set di dati non strutturati ad alto volume poiché il caricamento può avvenire direttamente dalla fonte. L'ELT può essere più ideale per la gestione dei big data poiché non richiede molta pianificazione iniziale per l'estrazione e lo storage dei dati.

Il processo ETL richiede una maggiore definizione all'inizio. È necessario identificare punti dati specifici per l'estrazione, insieme a eventuali "chiavi" potenziali da integrare tra sistemi di origine eterogenei. La fonte dei dati di input viene spesso tracciata utilizzando i metadati. Anche dopo che il lavoro è stato completato, è necessario costruire le business rule per le trasformazioni dei dati. Questo lavoro può solitamente dipendere dai requisiti dei dati per un determinato tipo di analisi, che determinerà il livello di sintesi che i dati devono avere.

Sebbene le pipeline ELT siano diventate sempre più popolari con l'adozione dei cloud database, la tecnologia ELT è ancora un processo di sviluppo, il che significa che le best practice sono ancora in fase di definizione.

Come funziona l'ETL

Il modo più semplice per capire come funziona l'ETL è capire cosa accade in ogni fase del processo.

Estrazione

Durante l'estrazione dei dati, i dati non elaborati vengono copiati o esportati dalle posizioni di origine in un'area di staging. I team di gestione dei dati possono estrarre dati da una varietà di fonti che possono essere strutturate o non strutturate. Questi tipi di dati includono, tra gli altri:

  • Server SQL o NoSQL
  • Sistemi CRM ed ERP
  • JSON e XML
  • Flat-file database
  • E-mail
  • Pagine web

Trasformazione

Nell'area di staging i dati non elaborati vengono sottoposti a elaborazione. Qui i dati vengono trasformati e consolidati per il loro previsto caso d'uso analitico. Questa fase del processo di trasformazione può includere:

  • Filtrare, pulire, aggregare, deduplicare, convalidare e autenticare i dati.
  • Eseguire calcoli, traduzioni o riepiloghi basati sui dati non elaborati. Ciò può includere la modifica delle intestazioni di riga e colonna per la coerenza, la conversione di valute o altre unità di misura, la modifica di stringhe di testo e molto altro.
  • Condurre audit per garantire la qualità e la conformità dei dati e calcolare le metriche.
  • Rimuovere, crittografare o proteggere i dati regolati dalle autorità di regolamentazione del settore o governative.
  • Formattazione dei dati in tabelle o tabelle collegate in modo che corrispondano allo schema del data warehouse di destinazione.

Caricamento

In quest'ultimo passaggio, i dati trasformati vengono spostati dall'area di staging a un data warehouse di destinazione. In genere, ciò comporta un caricamento iniziale di tutti i dati, seguito dal caricamento periodico delle modifiche incrementali dei dati e, meno spesso, da aggiornamenti completi per cancellare e sostituire i dati nel data warehouse. Per la maggior parte delle organizzazioni che utilizzano ETL, il processo è automatizzato, ben definito, continuo e basato su batch. In genere, il processo di carico ETL avviene durante le ore di riposo, quando il traffico sui sistemi di origine e sul data warehouse è al minimo.

ETL e altri metodi di integrazione dei dati

ETL ed ELT sono solo due metodi di integrazione dei dati ed esistono anche altri approcci utilizzati per facilitare i workflow di integrazione dei dati. Alcune di queste includono:

  • Il Change Data Capture (CDC) identifica e acquisisce solo i dati di origine che sono cambiati e li sposta nel sistema di destinazione. Il CDC può essere utilizzato per ridurre le risorse necessarie durante il passaggio ETL di estrazione; può anche essere utilizzato in modo indipendente per spostare i dati che sono stati trasformati in un data lake o in un altro repository in tempo reale.

  • La replica dei dati copia le modifiche nelle fonti di dati in tempo reale o in batch verso un database centrale. La replica dei dati è spesso elencata come metodo di integrazione dei dati. Di fatto, viene spesso utilizzata per creare backup per il disaster recovery.

  • La virtualizzazione dei dati utilizza un livello di astrazione del software per creare una visualizzazione unificata, integrata e completamente utilizzabile dei dati, senza copiare, trasformare o caricare fisicamente i dati di origine in un sistema di destinazione. La funzionalità di virtualizzazione dei dati consente a un'organizzazione di creare data warehouse virtuali, data lake e data mart dagli stessi dati di origine per lo storage dei dati senza le spese e la complessità di creazione e gestione di piattaforme separate per ciascuno di essi. Sebbene la virtualizzazione dei dati possa essere utilizzata insieme all'ETL, è sempre più vista come un'alternativa all'ETL e ad altri metodi di integrazione dei dati fisici.

  • La Stream Data Integration (SDI) consuma continuamente flussi di dati in tempo reale, li trasforma e li carica in un sistema di analisi di destinazione. La parola chiave qui è continuamente. Invece di integrare istantanee di dati estratti dalle fonti in un determinato momento, l'SDI integra costantemente i dati via via che diventano disponibili. L'SDI supporta un data store per potenziare l'analytics, il machine learning e le applicazioni in tempo reale, al fine di migliorare l'esperienza del cliente, il rilevamento delle frodi e molto altro.

I benefici e le sfide dell'ETL

Le soluzioni ETL migliorano la qualità eseguendo la pulizia dei dati prima di caricare i dati su un repository diverso. Essendo un'operazione batch che richiede molto tempo, l'ETL è consigliato più spesso per la creazione di repository di dati di destinazione più piccoli, che richiedono aggiornamenti meno frequenti, mentre altri metodi di integrazione dei dati, tra cui ELT (Extract, Load, Transform), CDC (Change Data Capture) e la virtualizzazione dei dati, sono utilizzati per integrare volumi di dati sempre più grandi che cambiano o flussi di dati in tempo reale.

Strumenti ETL

In passato, le organizzazioni scrivevano il proprio codice ETL. Oggi sono disponibili molti strumenti ETL open source e commerciali, così come servizi basati sul cloud, tra cui scegliere. Le capacità tipiche di questi prodotti includono:

  • Automazione completa e facilità d'uso: i principali strumenti ETL automatizzano l'intero flusso di dati, dalle fonti dei dati al data warehouse di destinazione. Questo evita ai data engineer le noiose attività di spostamento e formattazione dei dati, per risultati più rapidi e operazioni più efficienti.

  • Un'interfaccia visiva drag-and-drop: questa funzionalità può essere utilizzata per specificare regole e flussi di dati.

  • Supporto per la gestione di dati complessi: include l'assistenza per calcoli complessi, integrazioni di dati e manipolazioni di stringhe.

  • Sicurezza e conformità: i migliori strumenti ETL crittografano i dati sia in movimento che a riposo e hanno conseguito certificazioni di conformità alle normative di settore o governative, tra cui HIPAA e GDPR.

Inoltre, molti strumenti ETL si sono evoluti per includere funzionalità ELT e supportare l'integrazione dei dati in tempo reale e in streaming per applicazioni di intelligenza artificiale (AI).

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

Le Application Programming Interface (API) che utilizzano l'EAI (Enterprise Application Integration) possono essere utilizzate al posto dell'ETL per una soluzione più flessibile e scalabile che include l'integrazione del workflow. Sebbene l'ETL sia ancora la principale risorsa di integrazione dei dati, l'EAI è sempre più utilizzata con le API negli ambienti basati sul web.

Soluzioni correlate
IBM DataStage

Crea una pipeline di dati attendibili con uno strumento ETL modernizzato su una piattaforma cloud-native per gli insight.

Scopri DataStage
Soluzioni di integrazione dei dati

Crea pipeline di dati resilienti, ad alte prestazioni e ottimizzate in termini di costi per le tue iniziative di AI generativa, real-time analytics, modernizzazione del data warehouse e per le tue esigenze operative con le soluzioni IBM per l'integrazione dei dati.

Scopri le soluzioni per l'integrazione dei dati
Servizi di consulenza per dati e analytics

Sblocca il valore dei dati aziendali con IBM Consulting e crea un'organizzazione basata su insight in grado di generare vantaggi aziendali.

Esplora i servizi di analytics
Fasi successive

Progettare, sviluppare ed eseguire attività che spostano e trasformano i dati. Prova le potenti capacità di integrazione automatizzata in un ambiente ibrido o multicloud di IBM DataStage, uno strumento di integrazione dei dati leader del settore.

Esplora IBM DataStage Esplora le soluzioni di integrazione dei dati