Cos'è ETL: la guida definitiva 101
Pubblicato: 2022-05-25Maggiore è il numero di dati provenienti da varie fonti che un'azienda raccoglie, maggiori sono le sue capacità di analisi, scienza dei dati e apprendimento automatico. Ma insieme alle opportunità, crescono le preoccupazioni legate all'elaborazione dei dati. Dopotutto, prima di iniziare a creare report e cercare approfondimenti, tutti questi dati grezzi e disparati devono essere elaborati: puliti, controllati, convertiti in un unico formato e uniti. Per queste attività vengono utilizzati processi e strumenti di estrazione , trasformazione e caricamento (o ETL). In questo articolo, analizziamo in dettaglio cos'è ETL e perché gli strumenti ETL sono necessari ad analisti e marketer.
Sommario
- Che cos'è ETL e perché è importante?
- Una breve storia di come è nato ETL
- Come funziona il processo ETL
- Passaggio 1. Estrarre i dati
- Passaggio 2. Trasforma i dati
- Passaggio 3. Carica i dati
- Vantaggi di ETL
- Le sfide dell'ETL
- ETL vs ELT: qual è la differenza?
- 5 suggerimenti per un'implementazione di successo dell'ETL
- Come selezionare uno strumento ETL
- ETL/ELT e OWOX BI
- Da asporto chiave
Che cos'è ETL e perché è importante?
Extract, Transform, Load è un processo di integrazione dei dati che è alla base dell'analisi basata sui dati e si compone di tre fasi:
- I dati vengono estratti dalla fonte originale
- I dati vengono convertiti in un formato adatto per l'analisi
- I dati vengono caricati in uno storage, in un data lake o in un sistema di business intelligence

Gli strumenti ETL consentono alle aziende di raccogliere dati di vario tipo da più origini e unire tali dati per utilizzarli in una posizione di archiviazione centralizzata, come Google BigQuery, Snowflake o Azure.
I processi di estrazione, trasformazione e caricamento forniscono la base per un'analisi dei dati di successo e creano un'unica fonte di dati affidabile, garantendo la coerenza e la pertinenza di tutti i dati della tua azienda.
Per essere il più utile possibile per i decisori, il sistema di analisi di un'azienda deve cambiare al variare dell'azienda. L'ETL è un processo regolare e il tuo sistema di analisi deve essere flessibile, automatizzato e ben documentato.
Una breve storia di come è nato ETL
ETL è diventato popolare negli anni '70, quando le aziende hanno iniziato a lavorare con più repository o database. Di conseguenza, è diventato necessario integrare efficacemente tutti questi dati.
Alla fine degli anni '80 sono apparse tecnologie di archiviazione dei dati che offrivano un accesso integrato ai dati provenienti da diversi sistemi eterogenei. Ma il problema era che molti database richiedevano strumenti ETL specifici del fornitore. Pertanto, diversi dipartimenti hanno spesso scelto diversi strumenti ETL da utilizzare con diverse soluzioni di archiviazione dei dati. Ciò ha portato alla necessità di scrivere e adattare costantemente gli script per diverse origini dati. L'aumento del volume e della complessità dei dati ha portato a un processo ETL automatizzato che evita la codifica manuale.
Come funziona il processo ETL
Il processo ETL consiste in tre fasi: estrazione, trasformazione e caricamento. Diamo un'occhiata da vicino a ciascuno di essi.
Passaggio 1. Estrarre i dati
In questa fase, i dati grezzi (strutturati e parzialmente strutturati) provenienti da diverse fonti vengono estratti e collocati in un'area intermedia (un database o server temporaneo) per la successiva elaborazione.
Le fonti di tali dati possono essere:
- Siti web
- Dispositivi e applicazioni mobili
- Sistemi CRM/ERP
- Interfacce API
- Servizi di marketing
- Strumenti di analisi
- Banche dati
- Ambienti cloud, ibridi e locali
- File piatti
- Fogli di calcolo
- Server SQL o NoSQL
- Strumenti di trasferimento dati Internet of Things (IoT) come distributori automatici, bancomat e sensori di merci
I dati raccolti da diverse fonti sono generalmente eterogenei e presentati in diversi formati: XML, JSON, CSV e altri. Pertanto, prima di estrarlo, è necessario creare una mappa dati logica che descriva la relazione tra origini dati e dati di destinazione.
A questo punto è necessario verificare se:
- I record estratti corrispondono ai dati di origine
- Spam/dati indesiderati entreranno nel download
- I dati soddisfano i requisiti di archiviazione di destinazione
- Ci sono dati duplicati e frammentati
- Tutte le chiavi sono a posto
I dati possono essere estratti in tre modi:
- Estrazione parziale: la fonte ti notifica le ultime modifiche ai dati.
- Estrazione parziale senza notifica: non tutte le origini dati forniscono una notifica di aggiornamento; tuttavia, possono puntare a record che sono stati modificati e fornire un estratto da tali record.
- Estrazione completa: alcuni sistemi non sono in grado di determinare quali dati sono stati modificati; in questo caso è possibile solo l'estrazione completa. Per farlo, avrai bisogno di una copia dell'ultimo caricamento nello stesso formato in modo da poter trovare e apportare modifiche.
Questo passaggio può essere eseguito manualmente dagli analisti o automaticamente. Tuttavia, l'estrazione manuale dei dati richiede molto tempo e può causare errori. Pertanto, consigliamo di utilizzare strumenti come OWOX BI che automatizzano il processo ETL e forniscono dati di alta qualità.
Passaggio 2. Trasforma i dati
In questa fase, i dati grezzi raccolti in un'area intermedia (archiviazione temporanea) vengono convertiti in un formato uniforme che soddisfa le esigenze dell'azienda e le esigenze di archiviazione dei dati di destinazione. Questo approccio, utilizzando una posizione di archiviazione intermedia invece di caricare direttamente i dati nella destinazione finale, consente di ripristinare rapidamente i dati se qualcosa va storto all'improvviso.
La trasformazione dei dati può includere le seguenti operazioni:
- Pulizia: elimina le incoerenze e le imprecisioni dei dati.
- Standardizzazione — Converti tutti i tipi di dati nello stesso formato: date, valute, ecc.
- Deduplicazione: esclude o elimina i dati ridondanti.
- Convalida: elimina i dati non utilizzati e segnala le anomalie.
- Riordinamento di righe o colonne di dati
- Mappatura: unisci i dati di due valori in uno o, al contrario, dividi i dati da un valore in due.
- Integrazione — Estrarre dati da altre fonti.
- Formattazione dei dati in tabelle in base allo schema dell'archiviazione dei dati di destinazione
- Verifica della qualità dei dati e verifica della conformità
- Altre attività — Applicare eventuali regole aggiuntive/facoltative per migliorare la qualità dei dati; ad esempio, se il nome e il cognome nella tabella sono in colonne diverse, puoi unirli.
La trasformazione è forse la parte più importante del processo ETL. Ti aiuta a migliorare la qualità dei dati e garantisce che i dati elaborati vengano consegnati a uno storage completamente compatibile e pronto per l'uso nella creazione di report e in altre attività aziendali.
In base alla nostra esperienza, alcune aziende non preparano ancora dati pronti per il business e creano report sui dati grezzi. Il problema principale con questo approccio è il debug e la riscrittura infiniti delle query SQL. Pertanto, consigliamo vivamente di non ignorare questa fase.
OWOX BI raccoglie automaticamente dati grezzi da diverse fonti e li converte in un formato adatto ai report. Ricevi set di dati già pronti che vengono automaticamente trasformati nella struttura desiderata, tenendo conto delle sfumature importanti per i professionisti del marketing. Non dovrai perdere tempo a sviluppare e supportare trasformazioni complesse, approfondire la struttura dei dati e passare ore a cercare le cause delle discrepanze.
Passaggio 3. Carica i dati
A questo punto, i dati elaborati dall'area di staging vengono caricati nel database, nell'archiviazione o nel data lake di destinazione, in locale o nel cloud.
Ciò fornisce un comodo accesso ai dati pronti per il business a diversi team all'interno dell'azienda.
Ci sono diverse opzioni di caricamento:
- Caricamento iniziale: riempi tutte le tabelle nell'archivio dati per la prima volta.
- Carico incrementale: scrivi periodicamente nuovi dati secondo necessità. In questo caso, il sistema confronta i dati in entrata con quelli già disponibili e crea record aggiuntivi solo se rileva nuovi dati. Questo approccio riduce il costo dell'elaborazione dei dati riducendone il volume.
- Aggiornamento completo: elimina il contenuto della tabella e ricarica la tabella con i dati più recenti.
È possibile eseguire ciascuno di questi passaggi utilizzando gli strumenti ETL o manualmente utilizzando codice personalizzato e query SQL.
Vantaggi di ETL
1. ETL ti fa risparmiare tempo e ti aiuta a evitare l'elaborazione manuale dei dati.
Il più grande vantaggio del processo ETL è che ti aiuta a raccogliere, convertire e consolidare automaticamente i dati. È possibile risparmiare tempo e fatica ed eliminare la necessità di importare manualmente un numero enorme di righe.

2. ETL semplifica il lavoro con dati complessi.
Nel tempo, la tua azienda deve gestire una grande quantità di dati complessi e diversificati: fusi orari, nomi dei clienti, ID dispositivo, posizioni, ecc. Aggiungi alcuni attributi in più e dovrai formattare i dati 24 ore su 24. Inoltre, i dati in entrata possono essere in diversi formati e di diverso tipo. ETL ti rende la vita molto più facile.
3. L'ETL riduce i rischi associati al fattore umano.
Non importa quanto stai attento con i tuoi dati, non sei immune da errori. Ad esempio, i dati potrebbero essere duplicati accidentalmente nel sistema di destinazione o un input manuale potrebbe contenere un errore. Eliminando l'influenza umana, uno strumento ETL ti aiuta a evitare tali problemi.
4. ETL aiuta a migliorare il processo decisionale.
Automatizzando i flussi di lavoro dei dati critici e riducendo la possibilità di errori, ETL garantisce che i dati ricevuti per l'analisi siano di alta qualità e affidabili. E la qualità dei dati è fondamentale per prendere decisioni aziendali migliori.
5. ETL aumenta il ROI.
Poiché ti fa risparmiare tempo, fatica e risorse, il processo ETL in definitiva ti aiuta a migliorare il tuo ROI. Inoltre, migliorando l'analisi aziendale, aumenti i tuoi profitti. Questo perché le aziende si affidano al processo ETL per ottenere dati consolidati e prendere decisioni aziendali migliori.
Le sfide dell'ETL
Quando si sceglie uno strumento ETL, vale la pena fare affidamento sui requisiti aziendali, sulla quantità di dati raccolti e su come lo si utilizza. Quali sfide si possono incontrare durante l'impostazione del processo ETL?
1. Elaborazione di dati da una varietà di fonti.
Un'azienda può lavorare con centinaia di sorgenti con diversi formati di dati. Questi possono includere dati strutturati e parzialmente strutturati, dati di streaming in tempo reale, file flat, file CSV, basket S3, sorgenti di streaming e altro ancora. Alcuni di questi dati vengono convertiti al meglio in pacchetti, mentre per altri la conversione dei dati in streaming funziona meglio. L'elaborazione di ogni tipo di dati nel modo più efficiente e pratico può essere una sfida enorme.
2. La qualità dei dati è fondamentale.
Affinché l'analisi funzioni in modo efficiente, è necessario garantire una trasformazione dei dati accurata e completa. L'elaborazione manuale, il rilevamento regolare degli errori e la riscrittura delle query SQL possono causare errori, duplicazione o perdita di dati. Gli strumenti ETL salvano gli analisti dalla routine e aiutano a ridurre gli errori. Un controllo della qualità dei dati identifica incoerenze e duplicati e le funzioni di monitoraggio avvertono se hai a che fare con tipi di dati incompatibili e altri problemi.
3. Il tuo sistema di analisi deve essere scalabile.
La quantità di dati che le aziende raccolgono aumenterà solo nel corso degli anni. Per ora puoi accontentarti di un database locale e del download batch, ma sarà sempre sufficiente per la tua attività? È fantastico avere la possibilità di scalare i processi ETL e la capacità all'infinito! Quando si tratta di prendere decisioni basate sui dati, pensa in grande e velocemente: sfrutta l'archiviazione cloud (come Google BigQuery) che ti consente di elaborare grandi quantità di dati in modo rapido ed economico.
ETL vs ELT: qual è la differenza?
ELT (Extract, Load, Transform) è essenzialmente uno sguardo moderno al familiare processo ETL in cui i dati vengono convertiti dopo essere stati caricati nello storage.
Gli strumenti ETL tradizionali estraggono e convertono i dati da diverse fonti prima di caricarli nello storage. Con l'avvento dell'archiviazione nel cloud, non è necessario ripulire i dati nella fase intermedia tra le posizioni di archiviazione dei dati di origine e di destinazione.
ELT è particolarmente rilevante per l'analisi avanzata. Ad esempio, puoi caricare dati grezzi in un data lake e quindi unirli con dati provenienti da altre origini o utilizzarli per addestrare modelli di previsione. Mantenere i dati grezzi consente agli analisti di espandere le proprie capacità. Questo approccio è rapido perché sfrutta la potenza dei moderni meccanismi di elaborazione dei dati e riduce lo spostamento non necessario dei dati.
Quale dovresti scegliere? ETL o ELT? Se lavori localmente e i tuoi dati sono prevedibili e provengono solo da poche fonti, l'ETL tradizionale sarà sufficiente. Tuttavia, sta diventando sempre meno rilevante man mano che sempre più aziende si spostano verso architetture di dati cloud o ibride.
5 suggerimenti per un'implementazione di successo dell'ETL
Se si desidera implementare un processo ETL di successo, attenersi alla seguente procedura:
Passaggio 1. Identifica chiaramente le fonti dei dati che desideri raccogliere e archiviare. Queste origini possono essere database relazionali SQL, database non relazionali NoSQL, piattaforme SaaS (Software as a Service) o altre applicazioni. Dopo aver connesso le origini dati, definire i campi dati specifici che si desidera estrarre. Quindi accetta o inserisci questi dati da varie fonti in forma grezza.
Passaggio 2. Unificare questi dati utilizzando una serie di regole aziendali (come aggregazione, allegato, ordinamento, funzioni di unione e così via).
Passaggio 3. Dopo la trasformazione, i dati devono essere caricati nella memoria. A questo punto, devi decidere la frequenza di caricamento dei dati. Specificare se si desidera registrare nuovi dati o aggiornare i dati esistenti.
Passaggio 4. È importante controllare il numero di record prima e dopo il trasferimento dei dati al repository. Questo dovrebbe essere fatto per escludere dati non validi e ridondanti.
Passaggio 5. L'ultimo passaggio consiste nell'automatizzare il processo ETL utilizzando strumenti speciali. Ciò ti aiuterà a risparmiare tempo, migliorare la precisione e ridurre lo sforzo necessario per riavviare manualmente il processo ETL. Con gli strumenti di automazione ETL, puoi progettare e controllare un flusso di lavoro attraverso una semplice interfaccia. Inoltre, questi strumenti hanno funzionalità come la profilazione e la pulizia dei dati.
Come selezionare uno strumento ETL
Per cominciare, scopriamo quali strumenti ETL esistono. Attualmente sono disponibili quattro tipi. Alcuni sono progettati per funzionare in un ambiente locale, altri nel cloud e altri in entrambi gli ambienti. Quale scegliere dipende da dove si trovano i tuoi dati e dalle esigenze della tua azienda:
- Strumenti ETL per l'elaborazione batch di dati nella memoria locale.
- Strumenti Cloud ETL in grado di estrarre e caricare i dati dalle origini direttamente nell'archiviazione cloud. Possono quindi trasformare i dati utilizzando la potenza e la scalabilità del cloud. Esempio: OWOX BI.
- Gli strumenti open source ETL come Apache Airflow, Apache Kafka e Apache NiFi sono un'alternativa economica ai servizi a pagamento. Alcuni non supportano trasformazioni complesse e potrebbero avere problemi con l'assistenza clienti.
- Strumenti ETL in tempo reale. I dati vengono elaborati in tempo reale utilizzando un modello distribuito e funzionalità di streaming dei dati.
Cosa cercare quando si seleziona uno strumento ETL:
- Facilità di utilizzo e manutenzione
- Velocità di lavoro
- Livello di sicurezza
- Numero e varietà di connettori necessari
- Capacità di lavorare senza problemi con altri componenti della tua piattaforma dati, inclusi l'archiviazione dei dati e i data lake
ETL/ELT e OWOX BI
Con OWOX BI, puoi raccogliere dati di marketing per report di qualsiasi complessità nell'archiviazione cloud sicura di Google BigQuery senza l'aiuto di analisti e sviluppatori.
Cosa ottieni con OWOX BI:
- Raccogli automaticamente i dati da varie fonti
- Importa automaticamente i dati grezzi in Google BigQuery
- Pulisci, deduplica, monitora la qualità e aggiorna i dati
- Preparare e modellare dati pronti per il business
- Crea report senza l'aiuto di analisti o conoscenze SQL
OWOX BI libera il tuo tempo prezioso, così puoi prestare maggiore attenzione all'ottimizzazione delle campagne pubblicitarie e delle zone di crescita.
Non è più necessario attendere i report di un analista. Ottieni dashboard già pronti o un report individuale basato su dati simulati e adatto alla tua attività.
Con l'approccio unico di OWOX BI, puoi modificare le origini dati e le strutture dei dati senza sovrascrivere le query SQL o riordinare i report. Ciò è particolarmente rilevante con il rilascio del nuovo Google Analytics 4.
Da asporto chiave
I volumi di dati raccolti dalle aziende crescono ogni giorno di più e continueranno a crescere. Per ora è sufficiente lavorare con i database locali e il download in batch, tuttavia, molto presto non soddisferà le esigenze aziendali. Pertanto, la possibilità di scalare i processi ETL è utile ed è particolarmente rilevante per l'analisi avanzata.
I principali vantaggi degli strumenti ETL sono:
- risparmiando tempo.
- evitando l'elaborazione manuale dei dati.
- semplificando il lavoro con dati complessi.
- riducendo i rischi associati al fattore umano.
- contribuendo a migliorare il processo decisionale.
- aumento del ROI.
Quando si tratta di scegliere uno strumento ETL, pensa alle esigenze particolari della tua azienda. Se lavori localmente e i tuoi dati sono prevedibili e provengono solo da poche fonti, l'ETL tradizionale sarà sufficiente. Ma non dimenticare che sempre più aziende stanno passando ad architetture cloud o ibride e devi tenerne conto.