Skip to main content

In media, le organizzazioni gestiscono 400 fonti di dati regolarmente. Con letteralmente centinaia di set di dati con cui confrontarsi, l'integrazione dei dati e l'analisi accurata dei dati possono diventare impossibili senza i giusti flussi di lavoro.

In questa guida ti introdurrò ai flussi di lavoro ETL e fornirò suggerimenti per costruire pipeline di dati ETL che supportino una maggiore funzionalità e qualità dei dati.

Cosa sono i flussi di lavoro ETL?

La nostra guida definitiva all'ETL spiega nel dettaglio il processo ETL, includendo le fasi di estrazione, trasformazione e caricamento. Per funzionare al meglio, questi processi devono lavorare insieme affinché le informazioni fluiscano efficientemente dalla fonte di dati al data warehousing.

Want more from The CTO Club?

Create a free account to finish this piece and join a community of CTOs and engineering leaders sharing real-world frameworks, tools, and insights for designing, deploying, and scaling AI-driven technology.

This field is for validation purposes and should be left unchanged.
Name*

I flussi di lavoro ETL sono responsabili dell'intero processo. Tipicamente coinvolgono vari strumenti API, connettori e passaggi di elaborazione dati per garantire che il processo di estrazione, trasformazione e caricamento funzioni correttamente e supporti le esigenze organizzative.

Vantaggi dei flussi di lavoro ETL

Alcuni vantaggi di solidi flussi di lavoro ETL includono:

  • Maggiore accesso ai dati. Con i giusti processi ETL puoi supportare l'accesso ai dati in tempo reale per i dipendenti. Il processo di estrazione, trasformazione e caricamento assicura che i dati siano pronti per l'uso una volta archiviati, rendendo più semplice eseguire report SQL, modelli di dati e altre query.
  • Capacità di gestire i big data. I processi ETL avanzati possono affrontare grandi set di dati e integrare dati non strutturati senza processi manuali dispendiosi. Ciò consente alle organizzazioni di gestire e trarre vantaggio dai big data.
  • Migliori processi di trasformazione dei dati. Il corretto flusso di lavoro ETL integra elementi come la pulizia e la trasformazione dei dati per migliorare la conversione dei dati grezzi in set strutturati pronti all'uso.
  • Supporto dell'efficienza tramite l'automazione. L'importazione dei dati sorgente, l'esecuzione dei processi di validazione e altre attività possono essere gestite da strumenti ETL che supportano l'automazione, riducendo il tempo necessario per gestire i dati.
  • Possibilità di applicare regole di business nei processi di gestione dei dati. Puoi personalizzare le soluzioni ETL per rispondere a diverse esigenze organizzative, inclusa l'integrazione di regole aziendali e di conformità all'interno del flusso di lavoro di estrazione, trasformazione e caricamento.

Panoramica del Processo ETL

Prima di discutere i componenti chiave dei flussi di lavoro ETL e di come modellarli, vediamo prima come funzionano questi processi, includendo obiettivi e sfide di ciascun passaggio.

Estrazione

Durante la fase di estrazione dell'ETL, le informazioni vengono raccolte da una o più fonti di dati. L'estrazione dei dati può imbattersi sia in dati grezzi che in dati già processati; inoltre, potresti dover gestire diversi tipi di file, inclusi CSV e XML.

  • Obiettivo: Catturare la quantità di dati più olistica e completa possibile.
  • Sfide: Individuare data lake e fonti di dati, ottenere il giusto accesso alle informazioni e sincronizzare la raccolta per garantire processi aggiornati.
Upgrade your inbox with more tech leadership wisdom for delivering better software and systems.

Upgrade your inbox with more tech leadership wisdom for delivering better software and systems.

This field is for validation purposes and should be left unchanged.
Name*

Trasformazione

Il processo di trasformazione dei dati implica la conversione dei dati in formati compatibili con database relazionali e altri metodi di archiviazione o analisi che desideri utilizzare. Durante questo passaggio dell'ETL puoi prendere in considerazione strumenti per la mappatura dei dati e la pulizia, la deduplicazione, la formattazione, l'aggiunta di metadati e altre attività — sia tramite automazione che con flussi di lavoro manuali.

  • Obiettivo: Dati puliti, utilizzabili e formattati per funzionare nel sistema o archivio di destinazione.
  • Sfide: La qualità dei dati è una delle difficoltà principali che le organizzazioni affrontano quando trasformano i dati; più bassa è la qualità, più lavoro di trasformazione sarà necessario. Altre sfide includono il rischio di perdita di dati, l'integrazione di differenti tipologie di dati e il garantire la sicurezza durante tutto il processo.

Caricamento

Nell'ultimo passaggio dei processi ETL, i dati vengono caricati nel data warehouse finale, rendendoli disponibili per l'utilizzo da parte dell'organizzazione secondo necessità.

  • Obiettivo: Assicurare che dati sicuri e puliti siano prontamente disponibili per l'analisi, CRM o altri software aziendali.
  • Sfide: Garantire la qualità e la sicurezza dei dati rappresenta una sfida anche in questa fase. Le organizzazioni devono creare processi di data governance per definire chi può accedere ai dati e in che modo. Supportare l'accesso ai dati in tempo reale — o il più vicino possibile — può essere importante, ma il batch processing può causare ritardi nel processo.

Componenti chiave dei flussi di lavoro ETL

Il primo passo nella creazione di workflow ETL è considerare le componenti chiave che dovrebbero essere incluse. I casi d’uso di questi workflow variano, e potrebbe essere necessario valutare dipendenze uniche di dati e processi specifiche per la tua organizzazione.

infografica workflow etl

Tuttavia, alcune componenti che i data engineer considerano comunemente per i workflow ETL includono:

  • Fonti dei dati. Da dove provengono i dati? Questo può includere file importati, email, API esterne e database interni.
  • Controlli di assicurazione qualità. Processi di QA automatizzati e manuali possono essere richiesti in vari passaggi del workflow ETL per garantire che i dati rispettino gli standard di qualità o siano conformi ai requisiti del data store finale.
  • Processi di trasformazione dei dati. Deduplicazione, formattazione e altre attività—spesso automatizzate—aiutano a migliorare la qualità.
  • Connettori di integrazione. API e altre soluzioni tecniche collegano le diverse parti del processo per consentire un flusso di dati senza interruzioni.
  • Data lake o data warehouse. I processi ETL di solito gestiscono grandi volumi di dati e serve un posto dove archiviare il prodotto finale. Le risorse di cloud computing sono comuni.
  • Pipeline di dati. La pipeline è l’infrastruttura totale che consente ai dati di fluire dalle fonti, attraverso la trasformazione, fino alla destinazione finale dove vengono caricati.
  • Soluzioni software e tecniche. Potresti integrare diverse risorse tecnologiche per supportare il workflow e le attività interne ad esso.

Modellazione dei workflow ETL

Quando modelli le tue pipeline ETL, devi considerare se vuoi processare in modalità batch o streaming.

Costruire una pipeline ETL con elaborazione batch

Con l’elaborazione batch, il workflow gestisce i dati a lotti o a blocchi. Ogni batch è solitamente determinato in base al tempo—ad esempio potresti effettuare il batch una volta al giorno, più volte nell’arco della giornata, o all’inizio di ogni ora.

L’elaborazione batch è una buona soluzione quando:

  • Vuoi sfruttare le economie di scala
  • Hai automazioni in grado di gestire grandi lotti di dati rapidamente
  • L’accesso ai dati e il loro elaborazione non sono particolarmente sensibili al fattore tempo

Costruire una pipeline ETL con elaborazione in streaming

L’elaborazione in streaming permette ai dati di fluire attraverso l’ETL in tempo reale, senza accumulare lotti di dati in nessun passaggio del processo. È più flessibile rispetto all’elaborazione batch, ma può essere più difficile garantire la qualità e la coerenza dei dati con questo tipo di pipeline.

L’elaborazione in streaming è una buona soluzione quando:

  • I dati entrano nel tuo processo a piccoli blocchi e a intervalli irregolari
  • L’accesso ai dati è sensibile al tempo, rendendo critico inserire subito i dati nel processo
  • Desideri accedere tempestivamente agli insight di tendenza senza attendere l’elaborazione batch

Esempi di workflow ETL

Comprendere il flusso dei dati e le esigenze di gestione specifiche del tuo settore è fondamentale per pianificare con successo i workflow ETL. Considera questi esempi da settori diversi per capire come possono variare i requisiti e le dipendenze.

ETL per flussi di dati nella sanità

Le organizzazioni sanitarie necessitano di un accesso accurato e tempestivo ai dati dei pazienti e dei trattamenti, rendendo i processi ETL essenziali per il successo. I dati possono provenire da diverse fonti, tra cui portali pazienti, cartelle cliniche elettroniche, apparecchiature di imaging e fornitori terzi come le aziende farmaceutiche.

Una delle più grandi sfide per l’ETL sanitario è creare processi sicuri che rispettino normative come l’HIPAA. Questi processi dipendono anche da fonti alimentate da pazienti, fornitori e automazione, creando ulteriori complessità nel processo di trasformazione dei dati.

Nella modellazione delle pipeline dei dati sanitari, potrebbe essere necessario utilizzare sia lo streaming sia l’elaborazione batch. Ad esempio, i fornitori potrebbero avere bisogno di accesso in tempo reale ai dati diagnostici, mentre i dati di codifica e fatturazione possono essere raggruppati a fine giornata per le pratiche amministrative.

ETL per flussi di dati e-commerce

I dati dell’e-commerce provengono da numerose fonti, incluse email, portali clienti, API e app, social media, siti web, sistemi CRM e processi di contabilità o pagamento. Questo crea una sfida enorme nella trasformazione dei dati senza comprometterne la qualità.

Il batch processing di solito funziona bene per molti processi di e-commerce. Ad esempio, potresti prelevare i dati degli ordini ogni ora e inserirli nei processi ETL che supportano le attività di magazzino e spedizione. Puoi anche estrarre i dati di pagamento ogni giorno in modo che i registri finanziari vengano aggiornati. 

Tuttavia, se vuoi offrire un servizio self-service 24/7 ai clienti, i workflow basati su stream potrebbero essere più adatti. Ad esempio, supponiamo tu abbia un chatbot che fornisce informazioni su ordini, pagamenti, resi e crediti ai clienti. Se i tuoi processi ETL funzionano tramite batch giornalieri, le informazioni fornite dal tuo chatbot saranno sempre datate di almeno 24 ore. 

ETL per i Flussi di Dati Finanziari

Banche, società di carte di credito, app di gestione del denaro e altre organizzazioni e servizi del settore finanziario si affidano fortemente a dati accurati. Queste organizzazioni devono anche confrontarsi con regolamentazioni severe e standard di conformità per mantenere sicuri i dati.

Le fonti dei dati possono includere dati importati da altre organizzazioni finanziarie, dati da ACH e clearinghouse, informazioni da app rivolte ai clienti e formati meno strutturati come le email. Le organizzazioni finanziarie possono anche voler utilizzare una combinazione di pipeline batch e stream per soddisfare le esigenze dei clienti. 

Progressi tecnologici nei processi ETL

Diversi decenni fa, la tecnologia cloud ha rivoluzionato l’elaborazione dei dati, e rappresenta ancora oggi una componente fondamentale nei progressi del software di data warehousing e nelle soluzioni correlate. Tuttavia, attualmente, le tendenze nello sviluppo tecnologico ETL si concentrano sull’integrazione di IA, machine learning e automazione nei workflow. Alcuni progressi specifici includono:

  • Capacità dell’IA di gestire i Big Data. Strumenti di intelligenza artificiale possono elaborare enormi quantità di dati in pochi secondi, offrendo un supporto alla scalabilità dei processi ETL che prima non esisteva. 
  • Elaborazione del linguaggio naturale. Il machine learning e il natural language processing permettono alle soluzioni automatizzate di affrontare la trasformazione dei dati con un set di competenze di “pensiero critico” molto più ampio rispetto al passato. Questo crea opportunità per automatizzare attività che storicamente richiedevano l’intervento umano. 
  • Supporto alla governance dei dati. Quasi tutti i settori oggi affrontano requisiti normativi più rigorosi e le soluzioni tecnologiche aiutano sempre di più a sostenere la conformità e la sicurezza dei dati. 

Best practice per ottimizzare i workflow ETL

Quello che funziona meglio per un’altra organizzazione potrebbe non essere la best practice più adatta alla tua azienda quando si parla di ETL. Tuttavia, ho raccolto alcune pratiche generali che puoi implementare per ottimizzare i workflow ETL in quasi ogni ambiente. 

  • Scegli gli strumenti più adatti alle tue esigenze. Studia i tool per i workflow e i processi ETL per trovare partner e soluzioni che soddisfino i tuoi bisogni specifici di dati. Valuta la possibilità di creare un team per mappare i workflow ETL desiderati, elencare le sfide che affronti e valutare le possibili soluzioni alla luce di questi fattori. 
  • Assicurati che la scelta del workflow sia corretta. Prenditi il tempo per comprendere le differenze tra ETL ed ELT e se hai bisogno di workflow batch o stream. 
  • Monitora regolarmente i tuoi processi. Usa strumenti come SQL Server Performance Monitor—o altri monitor di performance rilevanti—per capire come stanno funzionando i tuoi workflow ETL. Tieni sotto controllo le metriche di efficienza e qualità e apporta modifiche quando necessario per migliorare costantemente.  
  • Integra tecnologie che supportano qualità e scalabilità. Valuta opzioni come il calcolo parallelo e la compressione dei dati per ottimizzare i tuoi workflow. 

Conclusioni

La progettazione dei tuoi workflow ETL può determinare il successo o il fallimento dei tuoi processi di gestione dei dati. Prenditi il tempo di valutare le implicazioni delle decisioni sui workflow, disegna i workflow ideali e scegli i giusti strumenti per supportare estrazione, trasformazione e caricamento dei dati.

Rimani aggiornato su tecnologia e best practice sui dati iscrivendoti alla newsletter del CTO Club.