Corso
Azure Data Factory (ADF) è il servizio di integrazione dati basato su cloud di Microsoft, pensato per le organizzazioni moderne. Consente di progettare, gestire e automatizzare workflow che gestiscono attività di movimento e trasformazione dei dati su scala enterprise.
ADF si distingue per un'interfaccia no-code semplice da usare, che permette sia agli utenti tecnici che non tecnici di creare pipeline di dati con facilità. Le sue ampie capacità di integrazione supportano oltre 90 connettori nativi, abilitando il flusso di dati tra fonti diverse, inclusi sistemi on-premise e servizi cloud.
In questa guida, ti offro un'introduzione completa ad Azure Data Factory, illustrandone componenti e funzionalità e fornendo un tutorial pratico per aiutarti a creare la tua prima pipeline di dati.
Cos'è Azure Data Factory?
Azure Data Factory (ADF) è un servizio di integrazione dati basato su cloud progettato per orchestrare e automatizzare workflow di dati.
Viene usato per raccogliere, trasformare e distribuire dati, garantendo che le informazioni siano facilmente accessibili per analisi e decisioni.
Grazie alla sua architettura scalabile e serverless, ADF può gestire workflow di qualsiasi dimensione—dalle semplici migrazioni di dati a pipeline di trasformazione complesse.
ADF colma il divario tra silos di dati, consentendo di spostare e trasformare i dati tra sistemi on-premise, servizi cloud e piattaforme esterne. Che tu stia lavorando con big data, database operativi o API, Azure Data Factory offre gli strumenti per connettere, elaborare e unificare i dati in modo efficiente.
Funzionalità di Azure Data Factory
Ecco alcune delle funzionalità più importanti offerte da ADF.
1. Integrazione dei dati
Azure Data Factory supporta l'integrazione con oltre 100 connettori nativi, inclusi sistemi cloud e on-premise. Include il supporto per database SQL, sistemi NoSQL, API REST e fonti file-based, permettendoti di unificare i workflow di dati indipendentemente dalla sorgente o dal formato. È il motore di base che alimenta anche le capacità di integrazione dei dati in Microsoft Fabric, la piattaforma dati unificata di Microsoft.

Connettori dati disponibili in Azure Data Factory
2. Authoring di pipeline senza codice
L'interfaccia drag-and-drop di ADF semplifica la creazione di pipeline di dati. Con template predefiniti, procedure guidate di configurazione e un editor visivo intuitivo, anche chi non ha competenze di coding può progettare workflow end-to-end completi.

Esperienza di authoring no-code in Azure Data Factory
3. Pianificazione
Gli strumenti di pianificazione di Azure Data Factory offrono automazione dei workflow. Puoi impostare trigger basati su condizioni specifiche, come l'arrivo di un file nello storage cloud o intervalli di tempo programmati. Queste opzioni eliminano la necessità di interventi manuali e garantiscono l'esecuzione dei workflow in modo coerente e affidabile.

Pianificazione delle pipeline in Azure Data Factory
Componenti principali di Azure Data Factory
Comprendere i componenti principali di Azure Data Factory è essenziale per creare workflow efficienti.
1. Pipeline
Le pipeline sono la spina dorsale di Azure Data Factory. Rappresentano workflow guidati dai dati che definiscono i passaggi necessari per spostare e trasformare i dati.
Ogni pipeline funge da contenitore per una o più attività, eseguite in sequenza o in parallelo, per ottenere il flusso di dati desiderato.
Queste pipeline consentono ai data engineer di creare processi end-to-end, come l'ingestione di dati grezzi, la loro trasformazione in un formato utilizzabile e il caricamento nei sistemi di destinazione.

Esempio di pipeline semplice in Azure Data Factory
2. Attività
Le attività sono i blocchi funzionali delle pipeline, ognuna delle quali esegue un'operazione specifica. Si classificano ampiamente in:
- Attività di movimento dati: facilitano il trasferimento dei dati tra diversi sistemi di archiviazione. Ad esempio, l'attività "Copy data" sposta i dati da Azure Blob Storage a un Azure SQL Database.
- Attività di trasformazione dati: consentono di manipolare o elaborare i dati. Ad esempio, i data flow o script personalizzati possono essere usati per trasformare formati, aggregare valori o ripulire dataset.
- Attività di controllo del flusso: gestiscono il flusso logico di esecuzione all'interno delle pipeline. Esempi includono diramazioni condizionali, loop ed esecuzione parallela, che offrono flessibilità nella gestione di workflow complessi.

Attività in Azure Data Factory
3. Dataset
I dataset sono rappresentazioni dei dati utilizzati nelle attività. Definiscono schema, formato e posizione dei dati acquisiti o elaborati.
Ad esempio, un dataset può descrivere un file CSV in Azure Blob Storage o una tabella in un Azure SQL Database. I dataset sono il livello intermedio che collega le attività alle effettive sorgenti e destinazioni dei dati.

Dataset in Azure Data Factory
4. Servizi collegati (Linked services)
I servizi collegati sono stringhe di connessione che consentono ad attività e dataset di accedere a sistemi e servizi esterni.
Agiscono da ponte tra Azure Data Factory e le risorse esterne con cui interagisce, come database, account di archiviazione o ambienti di calcolo.
Ad esempio, un servizio collegato può connettersi a un SQL Server on-premise o a un data lake nel cloud.

Linked services in Azure Data Factory
5. Integration runtime
Gli integration runtime (IR) sono gli ambienti di calcolo che alimentano lo spostamento, la trasformazione e l'esecuzione delle attività all'interno di Azure Data Factory. ADF fornisce tre tipi di integration runtime:
- Azure IR: gestisce attività di integrazione dati basate su cloud ed è completamente gestito da Azure.
- Self-hosted IR: supporta il movimento dei dati tra sistemi on-premise e il cloud, ideale per scenari ibridi.
- SSIS IR: consente l'esecuzione di SQL Server Integration Services (SSIS) in Azure, permettendoti di riutilizzare i workflow SSIS esistenti nel cloud.

Integration runtime in Azure Data Factory
Configurare Azure Data Factory
Passiamo ora alla parte pratica di questa guida!
1. Prerequisiti
1. Una sottoscrizione Azure attiva.
2. Un gruppo di risorse per gestire le risorse Azure.
2. Creare un'istanza di Azure Data Factory
1. Accedi al portale di Azure.
2. Vai a Create a resource e seleziona Data Factory.

Crea una nuova risorsa Data Factory
3. Compila i campi richiesti, inclusi sottoscrizione, gruppo di risorse e area geografica.

Configura la risorsa Data Factory
4. Verifica e crea l'istanza.

Istanza di Azure Data Factory creata
3. Navigare l'interfaccia di ADF
L'interfaccia di ADF è composta dalle seguenti sezioni principali (accessibili tramite il menu di navigazione a sinistra)
1. Author: per creare e gestire le pipeline.
2. Monitor: per tracciare le esecuzioni delle pipeline e risolvere i problemi.
3. Manage: per configurare i servizi collegati e gli integration runtime.

Interfaccia di Azure Data Factory
Creare la tua prima pipeline in Azure Data Factory
Vediamo i passaggi per creare una semplice pipeline di dati.
Passaggio 1: Crea i servizi collegati

Creazione di un Linked service in Azure Data Factory
1. Vai alla scheda Manage
- Apri la tua istanza di Azure Data Factory e vai alla scheda Manage dell'interfaccia ADF. Qui definisci i servizi collegati, che connettono le tue sorgenti e destinazioni dati.
2. Aggiungi un servizio collegato per la sorgente dati
- Clicca su Linked services sotto la scheda Manage.
- Seleziona + New per creare un nuovo servizio collegato.
- Dall'elenco delle opzioni disponibili, seleziona la sorgente dati a cui vuoi connetterti, ad esempio Azure Blob Storage.
- Fornisci i dettagli di connessione richiesti, come il nome dell'account di archiviazione e il metodo di autenticazione (ad esempio, chiave dell'account o managed identity).
- Verifica la connessione per assicurarti che tutto sia configurato correttamente e clicca su Create.
3. Aggiungi un servizio collegato per la destinazione dati
- Ripeti il processo per la destinazione dei dati, ad esempio Azure SQL Database.
- Seleziona il tipo di destinazione appropriato, configura le impostazioni di connessione (ad esempio, nome del server, nome del database e metodo di autenticazione) e testa la connessione.
- Una volta verificato, salva il servizio collegato.
Passaggio 2: Crea un dataset

Creazione di un dataset in Azure Data Factory
1. Vai alla scheda Author
- Apri la scheda Author nell'interfaccia di Azure Data Factory. Qui progetti e gestisci le pipeline, i dataset e gli altri componenti del workflow.
2. Aggiungi un dataset per la sorgente
- Clicca sul pulsante + e seleziona Dataset dal menu a discesa.
- Scegli il tipo di data store che corrisponde al tuo servizio collegato di origine. Ad esempio, se la tua sorgente è Azure Blob Storage, seleziona il tipo di archivio corrispondente, come Delimited Text, Parquet, o un'altra opzione pertinente.
- Configura il dataset:
- Linked service: seleziona il servizio collegato creato in precedenza per la sorgente dati.
- Percorso file: specifica il percorso o il container in cui risiedono i dati di origine.
- Schema e formato: definisci il formato dei dati (ad esempio, CSV, JSON) e importa lo schema, se applicabile. Questo permette ad ADF di comprendere la struttura dei tuoi dati.
- Clicca su OK per salvare il dataset.
3. Aggiungi un dataset per la destinazione
- Ripeti il processo per il dataset di destinazione.
- Scegli il tipo di data store che corrisponde al tuo servizio collegato di destinazione. Ad esempio, se la tua destinazione è Azure SQL Database, seleziona il tipo appropriato, come Table.
- Configura il dataset:
- Linked service: seleziona il servizio collegato che hai creato per la destinazione.
- Nome tabella o percorso: specifica la tabella o il percorso di destinazione in cui verranno scritti i dati.
- Schema: definisci o importa facoltativamente lo schema per il dataset di destinazione per assicurare la compatibilità con i dati di origine.
- Salva il dataset.
Passaggio 3: Aggiungi le attività

Aggiunta di un'attività copy data in Azure Data Factory
1. Apri l'editor delle Pipeline
- Nella scheda Author, crea una nuova pipeline cliccando su + e selezionando Pipeline.
- Si aprirà l'editor della pipeline, un'interfaccia visiva in cui puoi progettare i tuoi workflow di dati.
2. Aggiungi l'attività copy data
- Dalla toolbox a sinistra, individua l'attività Copy data nella categoria Move & Transform.
- Trascina l'attività Copy data sulla canvas. Questa attività sposta i dati dalla sorgente alla destinazione.
3. Configura l'attività copy data
- Clicca sull'attività Copy data per aprire il pannello delle impostazioni.
- Nella scheda Source:
- Seleziona il dataset di origine creato in precedenza.
- Configura eventuali opzioni aggiuntive come filtri su file o cartelle, se necessario.
- Nella scheda Sink:
- Seleziona il dataset di destinazione.
- Specifica eventuali impostazioni aggiuntive, come la gestione dei dati esistenti in destinazione (ad esempio, overwrite o append).
- Usa la scheda Mapping per allineare i campi o le colonne dalla sorgente alla destinazione, garantendo la compatibilità dei dati.
- Salva la configurazione.
Passaggio 4: Pubblica ed esegui la pipeline

Pubblicazione delle pipeline in Azure Data Factory
1. Pubblica la tua pipeline
- Una volta configurata la pipeline, clicca su Publish nella toolbar.
- Questo salva la pipeline e la rende pronta all'esecuzione. Senza pubblicazione, le modifiche rimangono come bozze e non possono essere eseguite.
2. Esegui la pipeline
- Per testare la tua pipeline, clicca su Add Trigger in alto e seleziona Trigger Now per un'esecuzione manuale. Questo ti consente di verificare che la pipeline funzioni come previsto.
- In alternativa, imposta una pianificazione automatica:
- Vai alla scheda Triggers e crea un nuovo trigger.
- Definisci le condizioni del trigger, come una pianificazione basata sul tempo (ad esempio, ogni giorno alle 8:00) o una condizione basata su eventi (ad esempio, l'arrivo di un file in Azure Blob Storage).
- Associa il trigger alla tua pipeline per abilitare l'automazione.
Capacità di integrazione e trasformazione di Azure Data Factory
Azure Data Factory offre potenti funzionalità di integrazione e trasformazione dei dati che semplificano workflow complessi e migliorano la produttività. In questa sezione, esamineremo queste funzionalità.
1. Data flow
I data flow forniscono un ambiente visivo per definire la logica di trasformazione, rendendo più semplice per gli utenti manipolare ed elaborare i dati senza dover scrivere codice complesso. Le attività comuni eseguite con i data flow includono:
- Aggregazioni: riassumere i dati per estrarre insight significativi, come calcolare le vendite totali o le metriche medie di performance.
- Join: combinare dati da più fonti per creare dataset arricchiti per i processi a valle.
- Filtri: selezionare sottoinsiemi specifici di dati in base a criteri definiti, aiutando a concentrarsi sulle informazioni rilevanti.
I data flow supportano anche operazioni avanzate come derivazioni di colonne, conversioni di tipi di dati e trasformazioni condizionali, rendendoli strumenti versatili per gestire esigenze di dati eterogenee.
2. Integrazione con Azure Synapse Analytics
ADF si integra perfettamente con Azure Synapse Analytics, offrendo una piattaforma unificata per l'elaborazione di big data e l'analisi avanzata. Questa integrazione consente di:
- Orchestrare workflow end-to-end che includono ingestione, preparazione e analisi dei dati.
- Sfruttare il potente motore di query di Synapse per elaborare grandi dataset in modo efficiente.
- Creare pipeline di dati che confluiscono direttamente in Synapse Analytics per casi d'uso di machine learning e reporting.
Questa sinergia tra ADF e Synapse aiuta a semplificare i workflow e riduce la complessità di gestire strumenti separati per integrazione e analisi dei dati.
3. Pianificazione e monitoraggio delle pipeline
- Pianificazione: come detto, le capacità di pianificazione di ADF offrono robuste funzionalità di automazione. Puoi definire trigger basati su intervalli di tempo (ad esempio, ogni ora, ogni giorno) o eventi (ad esempio, l'arrivo di un file in Azure Blob Storage).
- Monitoraggio: la scheda Monitor in Azure Data Factory, combinata con Azure Monitor, offre tracciamento e diagnostica in tempo reale per le esecuzioni delle pipeline. Puoi visualizzare log dettagliati, monitorare l'avanzamento e identificare rapidamente colli di bottiglia o errori. È inoltre possibile configurare facilmente avvisi e notifiche.
Casi d'uso di Azure Data Factory
Dopo un'analisi approfondita delle funzionalità e dei componenti di ADF, vediamo per cosa possiamo usarlo.
1. Migrazione dei dati
ADF è uno strumento potente per migrare i dati da sistemi on-premise a piattaforme cloud. Semplifica migrazioni complesse automatizzando lo spostamento dei dati, garantendo l'integrità e riducendo al minimo i tempi di inattività.
Ad esempio, puoi usare ADF per migrare i dati da un SQL Server on-premise a un Azure SQL Database con un intervento manuale minimo. Sfruttando i connettori integrati e gli integration runtime, ADF assicura un processo di migrazione sicuro ed efficiente, supportando sia dati strutturati che non strutturati.
2. ETL per data warehousing
Estrarre, trasformare e caricare (ETL) sono processi alla base del moderno data warehousing. Azure Data Factory semplifica questi workflow integrando dati da più sorgenti, applicando logiche di trasformazione e caricandoli in un data warehouse.
Ad esempio, ADF può consolidare i dati di vendita di diverse regioni, trasformarli in un formato unificato e caricarli in Azure Synapse Analytics. Questo processo snello ti consente di mantenere dati aggiornati e di alta qualità per reportistica e decisioni.
|
Dai un'occhiata a 23 migliori strumenti ETL nel 2024 e ai motivi per sceglierli. |
3. Integrazione dei dati per data lake
I data lake fungono da repository centrale per dataset eterogenei, abilitando analisi avanzate e machine learning. ADF facilita l'ingestione di dati da varie sorgenti in Azure Data Lake Storage, supportando scenari batch e streaming.
Ad esempio, puoi usare ADF per raccogliere file di log, feed social e dati da sensori IoT in un unico data lake. Grazie agli strumenti di trasformazione e integrazione, ADF assicura che il data lake sia ben organizzato e pronto per analisi e carichi di lavoro di AI a valle.
Best practice per usare Azure Data Factory
Infine, vale la pena rivedere alcune best practice per usare ADF in modo efficace.
1. Progettazione modulare delle pipeline
Per creare workflow manutenibili e scalabili, progetta pipeline con componenti riutilizzabili. Il design modulare consente debug, test e aggiornamenti più semplici delle singole sezioni di pipeline. Ad esempio, invece di inserire la logica di trasformazione in ogni pipeline, crea una pipeline riutilizzabile che possa essere richiamata in più workflow. Questo riduce la ridondanza e migliora la coerenza tra i progetti.
2. Ottimizza lo spostamento dei dati
- Usa la compressione: per ridurre i tempi di trasferimento e l'uso della banda di rete, comprimi i dataset di grandi dimensioni prima di spostarli. Ad esempio, usare gzip o metodi analoghi può velocizzare notevolmente lo spostamento di file grandi.
- Seleziona l'integration runtime giusto: la scelta dell'integration runtime (Azure IR, Self-hosted IR o SSIS IR) è fondamentale per ottimizzare le performance. Ad esempio, il self-hosted IR può essere usato per lo spostamento di dati on-premise per garantire trasferimenti sicuri ed efficienti, mentre Azure IR è ideale per operazioni cloud-native.
3. Implementa una gestione degli errori robusta
- Policy di retry: configura policy di retry per errori transitori, come interruzioni temporanee di rete o timeout del server. Questo assicura che le pipeline possano riprendersi e completarsi con successo senza intervento manuale.
- Configura avvisi: implementa avvisi e notifiche per informare in modo proattivo il tuo team di fallimenti della pipeline o problemi di performance. Usa strumenti come Azure Monitor per configurare avvisi personalizzati basati su specifici tipi di errore o ritardi di esecuzione, garantendo una risoluzione rapida e tempi di inattività minimi.
Quindi, in cosa Azure Data Factory è differente da Databricks? Se sei curioso e vuoi scoprire le differenze tra Azure Data Factory e Databricks, dai un'occhiata al blog Azure Data Factory vs Databricks: un confronto dettagliato.
Azure Data Factory vs. Microsoft Fabric
Man mano che padroneggi Azure Data Factory, è fondamentale capirne l'evoluzione: Microsoft Fabric.
Sebbene Azure Data Factory (ADF) rimanga una soluzione PaaS (Platform-as-a-Service) robusta e autonoma ampiamente utilizzata in ambito enterprise, Microsoft ha introdotto Fabric come il futuro del suo ecosistema dati. Fabric è una piattaforma SaaS all-in-one che unifica Data Factory, Synapse Analytics e Power BI in un unico ambiente.
Dovresti usare ADF o Fabric?
- Rimani su ADF se: ti serve una soluzione PaaS matura e altamente personalizzabile con profonda integrazione con sistemi legacy on-premise, o se necessiti di un controllo granulare sull'infrastruttura (come Integration Runtime dedicati).
- Valuta Fabric se: stai costruendo una nuova piattaforma dati moderna e vuoi un'esperienza unificata in cui data engineering, data warehousing e visualizzazione con Power BI avvengono in un'unica workspace senza spostare i dati (grazie a OneLake).
Nota: le pipeline di ADF e le pipeline di Fabric Data Factory sono molto simili, quindi le competenze che acquisisci in ADF oggi sono direttamente trasferibili a Fabric. Puoi seguire il nostro corso Introduction to Microsoft Fabric per saperne di più.
Conclusione
Azure Data Factory semplifica il processo di creazione, gestione e scalabilità delle pipeline di dati nel cloud. Fornisce una piattaforma intuitiva adatta sia agli utenti tecnici che non tecnici, permettendo di integrare e trasformare dati da varie sorgenti in modo efficiente.
Sfruttando le sue funzionalità, come l'authoring delle pipeline senza codice, le capacità di integrazione e gli strumenti di monitoraggio, puoi creare workflow scalabili e affidabili con facilità.
Per saperne di più su Azure Data Factory, ti consiglio di consultare le Top 27 domande e risposte per colloqui su Azure Data Factory.
Se vuoi esplorare l'ossatura di Azure, inclusi argomenti come container, macchine virtuali e altro, il mio consiglio è questo fantastico corso gratuito su Understanding Microsoft Azure Architecture and Services.
Azure Data Factory - Domande frequenti
Azure Data Factory è uno strumento ETL o ELT?
Supporta entrambi. ADF è tradizionalmente usato per ELT (Extract, Load, Transform), in cui i dati grezzi vengono caricati in una destinazione cloud prima dell'elaborazione. Tuttavia, con i Mapping Data Flows, offre funzionalità ETL visive complete, permettendoti di trasformare i dati in transito senza scrivere codice.
Qual è la differenza tra Azure Data Factory e Microsoft Fabric?
Azure Data Factory (ADF) è uno strumento PaaS (Platform as a Service) autonomo, focalizzato esclusivamente sull'integrazione dei dati. Microsoft Fabric è una piattaforma SaaS (Software as a Service) unificata che include le funzionalità di Data Factory insieme a Power BI, Synapse e strumenti di Data Science in un unico ambiente.
Ho bisogno di competenze di programmazione per usare Azure Data Factory?
No. ADF è principalmente una piattaforma low-code/no-code con un'interfaccia drag-and-drop per creare pipeline. Tuttavia, conoscere SQL è altamente raccomandato per le interazioni con i database, e Python è utile se prevedi di usare funzionalità avanzate di orchestrazione come Airflow.
Come funziona il pricing di Azure Data Factory?
ADF utilizza un modello di consumo pay-as-you-go. Non paghi un canone mensile fisso; i costi vengono calcolati in base al numero di esecuzioni delle attività, alle ore di movimento dei dati e alla durata dell'esecuzione dei data flow. Questo lo rende conveniente sia per carichi di lavoro piccoli che grandi.
Azure Data Factory può connettersi a dati on-premise?
Sì. Puoi connetterti in modo sicuro a server on-premise (come SQL Server, Oracle o file system) installando il Self-Hosted Integration Runtime su una macchina locale nella tua rete. Questo funge da gateway/ponte sicuro verso il cloud senza aprire porte del firewall.
Qual è la differenza tra ADF e Databricks?
ADF è un orchestratore progettato per pianificare e gestire i workflow. Databricks è un motore di calcolo ottimizzato per l'elaborazione intensiva dei dati con Spark e Python. In molte architetture, ADF attiva notebook Databricks per eseguire trasformazioni complesse.
Come gestisce la sicurezza ADF?
Azure Data Factory offre sicurezza di livello enterprise, includendo Managed Identity per un'autenticazione fluida senza gestire le credenziali, supporto per Azure Key Vault per archiviare i segreti e Private Endpoint (tramite Azure Private Link) per assicurare che il traffico dati non passi mai su internet pubblico.


