Apache Airflow 3.0 è finalmente qui, ed è senza dubbio il rilascio più significativo nella storia del progetto.
Questo rilascio cambierà il modo in cui pensi alla gestione dei workflow, che tu sia alle prime armi con i dati o lavori con Airflow da anni.
Dopo aver esplorato in prima persona la nuova versione, posso dire con sicurezza che è molto più di un semplice aggiornamento incrementale.
Ecco alcuni dei punti salienti:
- Una nuova architettura service-oriented con esecuzione remota completa
- Nuova UI basata su React costruita su FastAPI
- Versionamento dei DAG e tracciamento delle modifiche
- Trigger dei DAG basato su asset ed eventi
- Supporto nativo per workflow ML moderni
- Percorsi di upgrade chiari e suddivisione modulare della CLI
Questa guida ti accompagnerà in Airflow 3.0 e in tutto ciò che offre.
Che cos'è Apache Airflow?
Apache Airflow è una piattaforma open-source che aiuta a creare, pianificare e monitorare in modo programmatico workflow di dati.
È stato l'orchestratore di riferimento per pipeline ETL complesse, workflow di data engineering e, più recentemente, pipeline di machine learning.
Il concetto fondamentale in Airflow è il DAG (un Directed Acyclic Graph che definisce una sequenza di task e le loro dipendenze).
I task, in Airflow, possono spaziare da script Python a trasformazioni SQL fino a operazioni containerizzate.
La piattaforma è flessibile, estensibile e ora, con la 3.0, più pronta per il futuro che mai.
Se stai iniziando con Airflow, il corso Introduction to Apache Airflow in Python è un'ottima risorsa che offre esperienza pratica.
Una breve storia di Apache Airflow
Airflow è stato sviluppato inizialmente da Airbnb nel 2014 e reso open-source nel 2015.
In seguito è diventato un progetto Apache e da allora è uno degli strumenti di orchestrazione più adottati nell'ecosistema del data engineering.
- Airflow 1.x: Ha introdotto la creazione di DAG in Python, le basi di scheduler ed executor.
- Airflow 2.0 (2020): Un rilascio fondamentale che ha aggiunto la TaskFlow API, la REST API e uno scheduler ad alta disponibilità.
- Airflow 2.3–2.5: Ha introdotto i dataset, lo scheduling data-aware e miglioramenti all'osservabilità.
- Airflow 3.0 (2025): Segna una riprogettazione radicale, che dà priorità alla modularità, a capacità native per l'ML e al supporto cloud-native.
Dall'immagine qui sotto è evidente che i contributi su GitHub sono aumentati significativamente anno su anno, a dimostrazione che Apache Airflow è uno dei progetti open-source più attivi nello spazio dell'orchestrazione dei dati.

Grafico che mostra l'aumento del numero di contributi GitHub ad Apache Airflow nel corso degli anni. Fonte: Airflow 3.0 Introduction Video
Cosa c'è di nuovo in Apache Airflow 3.0?
Apache Airflow 3.0 è un rilascio fondato su tre temi chiave.

Screenshot della pagina di rilascio di Apache Airflow 3.0. Fonte: Apache Airflow
Questi temi riflettono la visione del progetto di soddisfare le esigenze delle moderne piattaforme dati, migliorare l'esperienza degli sviluppatori e rafforzare la posizione di Airflow come orchestratore centrale in ambienti distribuiti, ibridi e potenziati dall'ML.
I temi chiave possono essere ampiamente categorizzati come segue:

Immagine che riassume i tre temi principali di Apache Airflow 3.0. Immagine creata con Napkin AI
Più facile da usare
Uno degli obiettivi più importanti del rilascio 3.0 è migliorare la fruibilità a tutti i livelli, dalla riga di comando all'interfaccia utente fino alle interazioni API sottostanti.
Airflow ora è più facile da imparare, più piacevole da usare ogni giorno e meglio attrezzato per supportare requisiti operativi complessi.
Sicurezza più solida
La sicurezza è diventata una preoccupazione centrale nel data engineering, soprattutto a causa del crescente numero di normative sulla privacy e della scala delle infrastrutture dati.
Airflow 3.0 affronta queste esigenze con un supporto architetturale più profondo per l'isolamento dei task e il controllo dell'esecuzione.
I miglioramenti alla sicurezza in Airflow 3.0 sono sia proattivi che strategici, in linea con le necessità di deployment enterprise, settori altamente regolamentati e pratiche DevSecOps moderne.
Esegui ovunque, in qualsiasi momento
Il moderno stack dati non è più confinato a data center on-premises o nemmeno a ambienti cloud centralizzati.
Airflow 3.0 risponde a questa sfida con il supporto a topologie di deployment ed pattern di esecuzione diversificati.
Consentire ai task di girare ovunque (e supportare workflow che si eseguono in qualsiasi momento) offre una flessibilità, una resilienza e una scalabilità senza pari per orchestrare il ciclo di vita moderno dei dati.

Immagine che mostra cluster remoti con worker locali, per eseguire ovunque e in qualsiasi momento. Fonte: Airflow 3.0 Astronomer Introduction Video
Il resto di questa guida approfondirà gli aspetti dei temi chiave di Airflow 3.0.
Principali cambiamenti di architettura in Airflow 3.0
Il rilascio di Apache Airflow 3.0 reimmagina come vengono eseguiti i task, dove possono essere eseguiti e come sviluppatori e operatori interagiscono con il sistema.
L'attenzione è su disaccoppiamento, modularizzazione, scalabilità e flessibilità di deployment, abilitando Airflow a soddisfare le esigenze di piattaforme dati ibride e multi-cloud.

Immagine che mostra l'architettura di Airflow 2 e Airflow 3. Fonte: Airflow 3.0 Astronomer Introduction Video
Task Execution API e Task SDK
Una delle innovazioni più importanti in Airflow 3.0 è l'introduzione di una Task Execution API e del relativo Task SDK.
Questi componenti permettono di definire ed eseguire i task in modo indipendente dal motore runtime core di Airflow.
Ecco alcune implicazioni chiave:
- Flessibilità di linguaggio: I task non sono più limitati a Python. Con il nuovo SDK, possono essere scritti in linguaggi come Java, Go o R, abilitando un'adozione più ampia e l'integrazione con stack tecnologici diversi.
- Disaccoppiamento dell'ambiente: I task ora possono essere eseguiti in ambienti isolati, remoti o containerizzati, separati dallo scheduler e dai worker. Questo elimina conflitti di dipendenze e migliora la coerenza di esecuzione.
- Workflow di sviluppo semplificato: Un'interfaccia standardizzata per lo sviluppo dei task semplifica test e deployment, migliora il riuso del codice e riduce il tempo di onboarding per i nuovi sviluppatori.
Questa architettura rappresenta un grande passo avanti per rendere Airflow più flessibile e cloud-native.
Si allinea al più ampio spostamento del data engineering verso la diversità dei linguaggi, la containerizzazione e la riproducibilità a livello di task.
Edge Executor
L'Edge Executor è un'altra aggiunta trasformativa di Airflow 3.0.
È progettato per abilitare l'esecuzione di task event-driven e geograficamente distribuita.
Invece di richiedere che tutte le esecuzioni avvengano in un cluster centralizzato, l'Edge Executor permette ai task di girare presso o vicino alla fonte dei dati.
Alcuni dei principali vantaggi dell'Edge Execution includono:

Immagine che mostra i principali vantaggi dell'Edge Execution. Immagine creata con Napkin AI
- Flessibilità geografica: I task possono essere eseguiti in cluster remoti o regionali, data center o persino su dispositivi edge.
- Reattività in tempo reale: Ideale per casi d'uso a bassa latenza e guidati da eventi, come IoT, feed di dati finanziari o monitoraggio operativo.
- Riduzione della latenza di rete: Poiché il calcolo avviene vicino alla fonte dei dati, c'è meno overhead nel trasferire grandi volumi di dati a un cluster centrale.
- Pipeline triggerate da eventi: L'Edge Executor supporta il nuovo paradigma di scheduling event-driven introdotto in Airflow 3.0.
Isolamento dei task e topologie di deployment
Airflow 3.0 introduce un nuovo livello di isolamento dei task che migliora significativamente sia la sicurezza sia le prestazioni.
Consentire ai task di girare in ambienti sandbox riduce il rischio di fughe di dati e conflitti di risorse.
Consente anche una gestione delle dipendenze più flessibile, poiché task o DAG diversi possono operare con le proprie versioni di librerie, ambienti Python o motori runtime.
Questo isolamento supporta inoltre upgrade più fluidi. I componenti core di Airflow possono essere aggiornati senza interrompere i task in esecuzione o rompere la compatibilità.
L'architettura migliorata abilita anche una gamma di scenari di deployment su misura per esigenze infrastrutturali diverse.
Negli ambienti cloud pubblici, i worker di Airflow possono essere facilmente distribuiti tra provider come AWS, GCP o Azure.
Per configurazioni cloud private o ibride, i componenti del control plane possono rimanere all'interno di una rete sicura mentre i task si eseguono in una DMZ o in un data center locale.
Inoltre, Airflow 3.0 supporta deployment edge, che abilitano casi d'uso come inferenza ML o rilevamento anomalie direttamente su hardware industriale o mobile.
Queste capacità supportano la conformità alle normative sulla localizzazione dei dati, lo scheduling tollerante ai guasti e l'esecuzione accelerata via GPU.
Suddivisione della CLI: airflow e airflowctl
Airflow 3.0 introduce una CLI suddivisa progettata per completare il backend modulare, distinguendo tra sviluppo locale e attività operative remote.
airflow
- Usato per sviluppo e test locali
- Interagisce con DAG locali, DB dei metadati e componenti
- Supporta test rapidi, parsing dei DAG e debug via CLI
airflowctl
- Progettato per produzione e orchestrazione remota
- Gestisce ambiente, deployment ed esecuzione in cloud
- Utile per pipeline CI/CD, osservabilità e gestione di cluster distribuiti
Questa divisione semplifica i workflow sia per gli sviluppatori individuali sia per i team piattaforma.
Per tutti i dettagli tecnici e l'elenco completo dei cambiamenti, consulta le note di rilascio di Airflow 3.0 release notes.
Sintesi dei miglioramenti architetturali
Ecco una tabella con il riepilogo dei miglioramenti di architettura:
|
Feature
|
Descrizione
|
|
Task SDK + API
|
Scrivi ed esegui task in qualsiasi linguaggio con supporto all'esecuzione remota
|
|
Edge Executor
|
Esecuzione distribuita dei task vicino alle fonti dati o tra geografie diverse
|
|
Isolamento dei task
|
Ambienti dei task sicuri e indipendenti; gestione flessibile delle dipendenze
|
|
Suddivisione della CLI
|
Chiara distinzione tra comandi locali (airflow) e remoti (airflowctl)
|
|
Topologie di deployment
|
Supporta pattern di esecuzione ibridi, multi-cloud, edge e accelerati via GPU
|
Nuova UI basata su React e versionamento dei DAG
Airflow 3.0 introduce un'interfaccia utente completamente riprogettata, costruita da zero usando React per il frontend e FastAPI come nuovo framework di backend.
UI più veloce e reattiva
La nuova architettura della UI offre un'esperienza utente significativamente più fluida, in particolare in ambienti con centinaia o migliaia di DAG.
Il caricamento delle pagine è più rapido, gli elementi della UI sono più intuitivi e il modello di navigazione risulta coerente e reattivo tra le varie viste.
Alcuni dei principali miglioramenti della UI includono:
- Migliorie alla vista griglia: Navigazione timeline migliorata, ricerca e filtri. Ora è più facile scansionare lo stato di esecuzione dei DAG e risolvere task falliti o bloccati.
- Migliorie alla vista grafo: Zoom, panning e esplorazione interattiva dei metadati dei task migliorati. Aiuta a comprendere strutture DAG complesse a colpo d'occhio.
- Pannello asset: Una nuova vista pensata specificamente per i workflow guidati dagli asset. Consente di visualizzare gli asset, i loro produttori e consumatori e la lineage tra i DAG.
Supporto integrato per la dark mode
La dark mode è ora integrata nativamente e con cura in Airflow, offrendo un'esperienza visiva raffinata, pensata per chiarezza e comfort a lungo termine.
Sebbene una versione della dark mode fosse disponibile nella 2.x, questo rilascio introduce un layer di design completo e mirato.
È chiaramente ottimizzata per contrasto, leggibilità e riduzione dell'affaticamento visivo durante sessioni di lavoro prolungate.
Avendo trascorso tempo nel mondo dello sviluppo, lo apprezzo molto.
È stata una delle feature più richieste dalla community ed è particolarmente utile per gli sviluppatori che spesso lavorano in ambienti con poca luce o semplicemente preferiscono un'interfaccia scura.
Le immagini seguenti evidenziano il contrasto visivo tra la modalità chiara e scura nella dashboard della console di Airflow.

Screenshot della console di Airflow in modalità chiara. Fonte: Airflow 3.0 Astronomer Introduction Video

Screenshot della console di Airflow in modalità scura. Fonte: Airflow 3.0 Astronomer Introduction Video
Versionamento dei DAG
Una delle nuove funzionalità più impattanti in Airflow 3.0 è il versionamento dei DAG di prima classe.
La sfida in Airflow 2.x
Nelle versioni precedenti di Airflow, i DAG venivano analizzati dai file di sorgente e l'ultima versione del DAG era applicata universalmente, anche in modo retroattivo, alle esecuzioni passate.
Questo approccio portava a diversi problemi noti.
Un problema importante era la deriva di esecuzione. Se aggiornavi un DAG durante un run, i task potevano finire per essere eseguiti sotto versioni diverse del codice.
C'era anche una perdita di auditabilità, poiché Airflow non aveva un meccanismo nativo per tracciare quale versione di un DAG fosse stata usata per una specifica esecuzione.
Inoltre, l'accuratezza storica ne risentiva perché la UI mostrava sempre la struttura del DAG più recente, indipendentemente da quando il DAG fosse stato effettivamente eseguito, con storici di esecuzione incoerenti e potenzialmente fuorvianti.
Cosa cambia con Airflow 3.0
Airflow 3.0 introduce il tracciamento strutturato delle versioni dei DAG direttamente nella piattaforma:
- I DAG vengono versionati ogni volta che avviene un nuovo deployment o una modifica al codice.
- Le esecuzioni storiche sono preservate insieme alla versione esatta del DAG che le ha prodotte.
- Dalla UI è possibile selezionare una versione specifica di un DAG da ispezionare, rieseguire o analizzare.
Apprezzo molto questa funzionalità perché, in pratica, è quasi impossibile creare un DAG che non necessiti di modifiche.
I DAG dovranno evolvere per nuova logica di business, correzioni di bug o ottimizzazioni prestazionali, e avere un versionamento integrato rende il processo molto più trasparente e gestibile.
Puoi vederlo in azione negli screenshot qui sotto, che mostrano l'interfaccia di orchestrazione dei DAG e il nuovo menu a tendina della cronologia delle versioni.

Immagine dell'orchestrazione dei DAG. Fonte: Airflow 3.0 Astronomer Introduction Video

Screenshot dell'orchestrazione dei DAG con menu a tendina della cronologia versioni. Fonte: Airflow 3.0 Astronomer Introduction Video
Perché il versionamento dei DAG è importante
Il versionamento dei DAG svolge un ruolo cruciale nel mantenere workflow di dati affidabili, tracciabili e conformi. Ecco perché è importante:
- Riproducibilità: Ora puoi rieseguire in modo affidabile un DAG esattamente come è stato eseguito in passato, anche se il codice attuale è cambiato.
- Debug: Gli errori possono essere ricondotti alla specifica versione del DAG responsabile, facilitando l'analisi della causa radice.
- Governance: In ambienti regolamentati, il versionamento supporta la conformità mantenendo una traccia di audit su quale codice è stato usato, quando e come.
- Integrazione CI/CD: I team che usano workflow GitOps possono collegare le versioni dei DAG in Airflow agli hash di commit nel controllo versione per una pipeline di delivery completamente tracciabile.
Gli screenshot seguenti mostrano come alcune modifiche vengono evidenziate nella UI, con viste sensibili alla versione sia nell'overview del DAG sia nel pannello del codice.

Screenshot del pannello overview all'interno di un DAG nella console di Airflow. Fonte: Airflow 3.0 Astronomer Introduction Video)

Screenshot del pannello del codice all'interno di un DAG nella console di Airflow. Fonte: Airflow 3.0 Astronomer Introduction Video
Collaborazione e trasparenza
Il versionamento dei DAG facilita anche la collaborazione tra i team dati. Per esempio:
- Gli ingegneri possono rivedere le modifiche ai DAG direttamente dalla UI senza bisogno di accesso a Git.
- Analyst e team QA possono verificare il comportamento storico senza rischiare di interferire con i DAG di produzione.
- I platform engineer possono testare in sicurezza nuove versioni di DAG accanto a quelle stabili.
Scheduling più intelligente e backfill
Airflow 3.0 segna un'evoluzione significativa nel modo in cui i workflow vengono triggerati, gestiti e coordinati.
DAG guidati dagli asset
Al centro dello scheduling più intelligente in Airflow 3.0 c'è il concetto di Asset.
Ispirato all'evoluzione dei dataset introdotti nelle versioni precedenti, il nuovo decorator @asset consente di definire pipeline guidate dalla disponibilità e dallo stato di entità dati logiche.
Cos'è un asset?
Un asset in Airflow rappresenta un dato o un output prodotto, trasformato o consumato da un DAG.
Può trattarsi di una tabella di database, un file in uno storage cloud, un modello ML addestrato o persino una risposta API.
Con il decorator @asset:
- Gli asset sono dichiarati come funzioni Python che restituiscono o generano dati.
- Questi asset sono trattati come elementi di prima classe nel processo di orchestrazione.
- Airflow traccia automaticamente le dipendenze tra asset e DAG.
Lo screenshot qui sotto mostra come gli asset vengono visualizzati nella console di Airflow.

Screenshot degli asset nella console di Airflow. Fonte: Airflow 3.0 Astronomer Introduction Video
Alcune caratteristiche chiave degli asset in Airflow 3.0 includono:

Immagine delle caratteristiche chiave degli asset in Airflow 3.0. Immagine creata con Napkin AI
- Metadati strutturati: Gli asset supportano nomi, URI, identificatori di gruppo e campi di metadati arbitrari, consentendo lineage e discovery ricchi.
- Design componibile: Gli asset possono riferirsi gli uni agli altri per costruire pipeline interdipendenti e modulari.
- Supporto ai watcher: Gli asset possono essere configurati con Watcher, che monitorano segnali esterni (attualmente AWS SQS) e triggerano l'esecuzione dei DAG in risposta.
Questo modello trasforma lo scheduling dei DAG da “esegui ogni ora” a “esegui quando i dati rilevanti sono pronti”.
Abilita workflow davvero reattivi, strettamente collegati allo stato dei dati, non all'orologio.
Per esempi più approfonditi e pattern di produzione che usano queste nuove capacità, la guida di Astronomer sullo scheduling data-aware offre un walkthrough dettagliato. Puoi anche imparare a implementare una pipeline dati completa con queste feature nella guida Building an ETL Pipeline with Airflow.
Scheduling basato su eventi esterni
Airflow 3.0 introduce un solido supporto allo scheduling guidato da eventi esterni, che consente di avviare i workflow in base a trigger reali provenienti al di fuori dell'ecosistema Airflow.
Questa funzionalità rappresenta un cambiamento significativo rispetto all'approccio tradizionale di polling di Airflow.
Le fonti di evento supportate includono AWS SQS per integrare code di messaggi in workflow cloud-native e disaccoppiati, il supporto pianificato a Kafka per sostenere streaming e coordinamento di microservizi, e HTTP/webhook per ricevere segnali da sistemi di monitoraggio, API o altre piattaforme di orchestrazione.
I casi d'uso spaziano dall'avviare una pipeline dati quando un nuovo file arriva in S3, al lanciare un DAG in risposta a un aggiornamento in un registry di modelli ML, fino a coordinare workflow di alerting e incident response in tempo reale.
I DAG guidati da eventi rendono Airflow più flessibile e potente, capace di reagire ai sistemi esterni in tempo reale.
Backfill gestiti dallo scheduler
Uno dei miglioramenti più attesi in Airflow 3.0 è la revisione della meccanica dei backfill, il processo di riesecuzione di intervalli di dati passati o di riparazione dei DAG falliti.
Tra le sfide della 2.x c'erano la mancanza di supporto UI e API per i backfill, che dovevano essere triggerati manualmente via CLI.
Per questo, in Airflow 3.0 sono stati introdotti i seguenti miglioramenti:

Immagine con i miglioramenti in Airflow 3.0. Immagine creata con Napkin AI
- Modello di esecuzione unificato: I backfill sono ora gestiti dallo scheduler principale, garantendo coerenza con le normali esecuzioni dei DAG.
- Trigger multimodale: I backfill possono essere avviati tramite UI, API o CLI, offrendo flessibilità sia agli utenti interattivi sia ai sistemi automatici.
- Esecuzione asincrona: I backfill ora sono eseguiti in modo non bloccante e asincrono; più backfill possono essere messi in coda e gestiti in parallelo.
- Piena osservabilità: La UI include un tracker di avanzamento dei backfill con viste dettagliate a livello di task, log in tempo reale e indicatori di stato.
- Esecuzioni annullabili: I backfill possono ora essere messi in pausa o terminati dalla UI, permettendo di reagire dinamicamente ai problemi senza riavviare interi workflow.
Supporto a casi d'uso di Machine Learning e AI in Airflow 3.0
Airflow 3.0 compie un passo significativo verso l'essere uno strumento di orchestrazione di prima classe per workflow moderni di machine learning (ML) e guidati dall'AI.
DAG senza intervalli di dati
Una delle modifiche più trasformative nella 3.0 è la rimozione del vincolo storico della execution date.
In Airflow 2.x e precedenti, ogni esecuzione di DAG richiedeva una execution_date univoca, principalmente legata all'intervallo di scheduling.
Sebbene questo modello funzionasse bene per job ETL basati sul tempo, creava attriti in scenari sperimentali e di inferenza.
Con i DAG senza intervalli di dati, Airflow 3.0 introduce una vera indipendenza di esecuzione:
Alcuni casi d'uso abilitati da questo cambiamento includono:
- Sperimentazione di modelli: Esegui più volte lo stesso DAG per diverse configurazioni di modello o porzioni di dati senza preoccuparti di execution date in conflitto.
- Tuning degli iperparametri: Avvia esecuzioni di DAG simultanee per diversi grid di parametri o strategie di ricerca, tracciate separatamente ma in esecuzione in parallelo.
- DAG di inferenza: Invoca continuamente o ripetutamente lo stesso DAG per predizioni in tempo reale o batch, triggerate da nuovi dati, eventi esterni o azioni utente.
Questo disaccoppiamento semplifica drasticamente la logica di orchestrazione per gli ML engineer e abilita livelli più alti di automazione, parallelismo e riproducibilità.
Esegui i task in qualsiasi momento
Airflow 3.0 supporta ufficialmente molteplici paradigmi di esecuzione, riconoscendo che i moderni workflow di dati non seguono sempre schedule fisse.
Questo aggiornamento rende Airflow più adattabile a una varietà di esigenze operative e di elaborazione dati.
Le modalità di esecuzione supportate includono la classica esecuzione pianificata (batch), che utilizza uno scheduling simile a cron ed è adatta a job come report notturni, sincronizzazioni orarie o pipeline ETL batch.
Airflow 3.0 supporta anche l'esecuzione event-driven, in cui i DAG possono essere triggerati da eventi esterni—come un nuovo file che appare in un bucket di storage cloud o un messaggio che arriva su Kafka—consentendo un'orchestrazione reattiva e in tempo reale. Inoltre, è ora possibile l'esecuzione ad hoc/di inferenza, che abilita l'esecuzione di DAG senza necessità di un timestamp specifico.
È particolarmente utile per casi d'uso come inferenza di machine learning, controlli di qualità dei dati o job attivati dall'utente in cui contano concorrenza e immediatezza.
Aggiornare ad Airflow 3.0
Airflow 3.0 introduce miglioramenti significativi ma si discosta anche in modo sostanziale dai pattern legacy.
Per aiutarti a effettuare una transizione fluida, i contributor principali hanno fornito una guida di upgrade ampia e ben strutturata.
È un major release, e si consiglia un'attenta pianificazione.
Detto ciò, il processo di upgrade è stato reso il più lineare possibile con documentazione chiara, checklist di aggiornamento e strumenti di compatibilità.
Alcuni degli aspetti coperti dalla guida includono:
- Configurazione dell'ambiente e delle dipendenze
- Allineamento tra scheduler ed executor
- Migrazioni e backup dello schema del database
- Differenze di comportamento nell'esecuzione dei task e nel parsing dei DAG

Screenshot della pagina Apache Airflow sull'upgrade alla 3.0. Fonte: Apache Airflow
È importante valutare le seguenti aree prima di procedere con l'upgrade:
- Compatibilità dei DAG: Assicurati che i DAG utilizzino API e costrutti supportati dal Task SDK 3.0, in particolare se adotti nuove funzionalità di esecuzione.
- Transizione della CLI: Sostituisci l'uso deprecato della CLI con airflowctl dove opportuno, soprattutto in CI/CD e nei contesti di esecuzione remota.
- Validazione dei plugin: Verifica che plugin personalizzati e integrazioni di terze parti siano compatibili con la nuova architettura e la suddivisione della CLI.
Se vuoi un'esperienza di upgrade senza intoppi, dai un'occhiata alla documentazione Upgrading to Airflow 3.0 prima di aggiornare Airflow.
Valutazione basata su demo
Per vedere le nuove funzionalità di Airflow 3.0 in azione, i DAG demo ufficiali forniti da Astronomer offrono un modo pratico per esplorare le capacità più recenti della piattaforma.
Queste demo fungono da vetrina completa e sono ideali per capire come funzionano in scenari reali funzionalità come il versionamento dei DAG, i workflow guidati dagli asset e l'esecuzione event-driven.

Screenshot di un caso d'uso di esempio in cui utilizzare Airflow 3.0. Fonte: Astronomer GitHub
La nuova interfaccia è saltata subito all'occhio. La vista Asset ha offerto una mappa visiva chiara delle dipendenze e della lineage dei dati, particolarmente utile lavorando con DAG guidati dagli asset.
Il pannello della cronologia delle versioni del DAG è stato un altro punto di forza. Ha consentito un'ispezione rapida delle modifiche passate, ha reso la riproducibilità immediata e ha reso facile correlare esecuzioni specifiche con il codice che le ha generate.
Inoltre, la dark mode riprogettata ha fornito un ottimo contrasto e una grande leggibilità, risultando un gradito miglioramento per sessioni di debug prolungate o lavoro di sviluppo notturno.
Se vuoi provarla in prima persona, Astronomer fornisce istruzioni passo passo e un ambiente demo pronto all'uso nel loro repository GitHub. Puoi clonare il repo, seguire la guida di setup ed esplorare le novità di Airflow 3.0.
Apache Airflow è sempre stato guidato dalla sua community, e questo vale anche per Airflow 3.0.
Molte delle funzionalità più impattanti di questo rilascio sono risposte dirette a survey della community, discussioni su GitHub e feedback degli utenti.
Se usi Airflow, dovresti considerare di partecipare attivamente. Ecco come puoi avere un impatto:
- Unisciti alla Apache Airflow Slack Community per condividere feedback, fare domande e connetterti con altri professionisti.
- Partecipa su GitHub a issue, proposte di feature e discussioni di design per aiutare a plasmare i rilasci futuri.
- Prendi parte alle survey sulle feature quando vengono condivise. La stessa Airflow 3.0 è stata plasmata dagli insight di utenti come te.
Conclusione
Apache Airflow 3.0 porta in un unico rilascio un'architettura orientata ai servizi, esecuzione di task poliglotta, scheduling più intelligente e una UI completamente modernizzata.
Il cambiamento può sembrare marcato, soprattutto con la nuova suddivisione della CLI e gli executor orientati all'edge, ma il risultato è una piattaforma di orchestrazione più modulare, scalabile e pronta per la produzione.
È anche più flessibile per i team ML, gli stack cloud-native e i sistemi event-driven in cui reattività e osservabilità sono fondamentali.
Se stai ancora usando una versione precedente di Airflow, considerare l'upgrade alla 3.0 ha sicuramente senso.
Per provare Airflow con mano, inizia con il nostro corso, Getting Started with Apache Airflow, oppure approfondisci i concetti di base in Introduction to Apache Airflow in Python.
Apache Airflow 3.0 è finalmente qui, ed è senza dubbio il rilascio più significativo nella storia del progetto.
Questo rilascio cambierà il modo in cui pensi alla gestione dei workflow, che tu sia alle prime armi con i dati o lavori con Airflow da anni.
Dopo aver esplorato in prima persona la nuova versione, posso dire con sicurezza che è molto più di un semplice aggiornamento incrementale.
Ecco alcuni dei punti salienti:
Questa guida ti accompagnerà in Airflow 3.0 e in tutto ciò che offre.
Che cos'è Apache Airflow?
Apache Airflow è una piattaforma open-source che aiuta a creare, pianificare e monitorare in modo programmatico workflow di dati.
È stato l'orchestratore di riferimento per pipeline ETL complesse, workflow di data engineering e, più recentemente, pipeline di machine learning.
Il concetto fondamentale in Airflow è il DAG (un Directed Acyclic Graph che definisce una sequenza di task e le loro dipendenze).
I task, in Airflow, possono spaziare da script Python a trasformazioni SQL fino a operazioni containerizzate.
La piattaforma è flessibile, estensibile e ora, con la 3.0, più pronta per il futuro che mai.
Se stai iniziando con Airflow, il corso Introduction to Apache Airflow in Python è un'ottima risorsa che offre esperienza pratica.
Una breve storia di Apache Airflow
Airflow è stato sviluppato inizialmente da Airbnb nel 2014 e reso open-source nel 2015.
In seguito è diventato un progetto Apache e da allora è uno degli strumenti di orchestrazione più adottati nell'ecosistema del data engineering.
Dall'immagine qui sotto è evidente che i contributi su GitHub sono aumentati significativamente anno su anno, a dimostrazione che Apache Airflow è uno dei progetti open-source più attivi nello spazio dell'orchestrazione dei dati.
Grafico che mostra l'aumento del numero di contributi GitHub ad Apache Airflow nel corso degli anni. Fonte: Airflow 3.0 Introduction Video
Cosa c'è di nuovo in Apache Airflow 3.0?
Apache Airflow 3.0 è un rilascio fondato su tre temi chiave.
Screenshot della pagina di rilascio di Apache Airflow 3.0. Fonte: Apache Airflow
Questi temi riflettono la visione del progetto di soddisfare le esigenze delle moderne piattaforme dati, migliorare l'esperienza degli sviluppatori e rafforzare la posizione di Airflow come orchestratore centrale in ambienti distribuiti, ibridi e potenziati dall'ML.
I temi chiave possono essere ampiamente categorizzati come segue:
Immagine che riassume i tre temi principali di Apache Airflow 3.0. Immagine creata con Napkin AI
Più facile da usare
Uno degli obiettivi più importanti del rilascio 3.0 è migliorare la fruibilità a tutti i livelli, dalla riga di comando all'interfaccia utente fino alle interazioni API sottostanti.
Airflow ora è più facile da imparare, più piacevole da usare ogni giorno e meglio attrezzato per supportare requisiti operativi complessi.
Sicurezza più solida
La sicurezza è diventata una preoccupazione centrale nel data engineering, soprattutto a causa del crescente numero di normative sulla privacy e della scala delle infrastrutture dati.
Airflow 3.0 affronta queste esigenze con un supporto architetturale più profondo per l'isolamento dei task e il controllo dell'esecuzione.
I miglioramenti alla sicurezza in Airflow 3.0 sono sia proattivi che strategici, in linea con le necessità di deployment enterprise, settori altamente regolamentati e pratiche DevSecOps moderne.
Esegui ovunque, in qualsiasi momento
Il moderno stack dati non è più confinato a data center on-premises o nemmeno a ambienti cloud centralizzati.
Airflow 3.0 risponde a questa sfida con il supporto a topologie di deployment ed pattern di esecuzione diversificati.
Consentire ai task di girare ovunque (e supportare workflow che si eseguono in qualsiasi momento) offre una flessibilità, una resilienza e una scalabilità senza pari per orchestrare il ciclo di vita moderno dei dati.
Immagine che mostra cluster remoti con worker locali, per eseguire ovunque e in qualsiasi momento. Fonte: Airflow 3.0 Astronomer Introduction Video
Il resto di questa guida approfondirà gli aspetti dei temi chiave di Airflow 3.0.
Principali cambiamenti di architettura in Airflow 3.0
Il rilascio di Apache Airflow 3.0 reimmagina come vengono eseguiti i task, dove possono essere eseguiti e come sviluppatori e operatori interagiscono con il sistema.
L'attenzione è su disaccoppiamento, modularizzazione, scalabilità e flessibilità di deployment, abilitando Airflow a soddisfare le esigenze di piattaforme dati ibride e multi-cloud.
Immagine che mostra l'architettura di Airflow 2 e Airflow 3. Fonte: Airflow 3.0 Astronomer Introduction Video
Task Execution API e Task SDK
Una delle innovazioni più importanti in Airflow 3.0 è l'introduzione di una Task Execution API e del relativo Task SDK.
Questi componenti permettono di definire ed eseguire i task in modo indipendente dal motore runtime core di Airflow.
Ecco alcune implicazioni chiave:
Questa architettura rappresenta un grande passo avanti per rendere Airflow più flessibile e cloud-native.
Si allinea al più ampio spostamento del data engineering verso la diversità dei linguaggi, la containerizzazione e la riproducibilità a livello di task.
Edge Executor
L'Edge Executor è un'altra aggiunta trasformativa di Airflow 3.0.
È progettato per abilitare l'esecuzione di task event-driven e geograficamente distribuita.
Invece di richiedere che tutte le esecuzioni avvengano in un cluster centralizzato, l'Edge Executor permette ai task di girare presso o vicino alla fonte dei dati.
Alcuni dei principali vantaggi dell'Edge Execution includono:
Immagine che mostra i principali vantaggi dell'Edge Execution. Immagine creata con Napkin AI
Isolamento dei task e topologie di deployment
Airflow 3.0 introduce un nuovo livello di isolamento dei task che migliora significativamente sia la sicurezza sia le prestazioni.
Consentire ai task di girare in ambienti sandbox riduce il rischio di fughe di dati e conflitti di risorse.
Consente anche una gestione delle dipendenze più flessibile, poiché task o DAG diversi possono operare con le proprie versioni di librerie, ambienti Python o motori runtime.
Questo isolamento supporta inoltre upgrade più fluidi. I componenti core di Airflow possono essere aggiornati senza interrompere i task in esecuzione o rompere la compatibilità.
L'architettura migliorata abilita anche una gamma di scenari di deployment su misura per esigenze infrastrutturali diverse.
Negli ambienti cloud pubblici, i worker di Airflow possono essere facilmente distribuiti tra provider come AWS, GCP o Azure.
Per configurazioni cloud private o ibride, i componenti del control plane possono rimanere all'interno di una rete sicura mentre i task si eseguono in una DMZ o in un data center locale.
Inoltre, Airflow 3.0 supporta deployment edge, che abilitano casi d'uso come inferenza ML o rilevamento anomalie direttamente su hardware industriale o mobile.
Queste capacità supportano la conformità alle normative sulla localizzazione dei dati, lo scheduling tollerante ai guasti e l'esecuzione accelerata via GPU.
Suddivisione della CLI: airflow e airflowctl
Airflow 3.0 introduce una CLI suddivisa progettata per completare il backend modulare, distinguendo tra sviluppo locale e attività operative remote.
airflow
airflowctl
Questa divisione semplifica i workflow sia per gli sviluppatori individuali sia per i team piattaforma.
Per tutti i dettagli tecnici e l'elenco completo dei cambiamenti, consulta le note di rilascio di Airflow 3.0 release notes.
Sintesi dei miglioramenti architetturali
Ecco una tabella con il riepilogo dei miglioramenti di architettura:
Feature
Descrizione
Task SDK + API
Scrivi ed esegui task in qualsiasi linguaggio con supporto all'esecuzione remota
Edge Executor
Esecuzione distribuita dei task vicino alle fonti dati o tra geografie diverse
Isolamento dei task
Ambienti dei task sicuri e indipendenti; gestione flessibile delle dipendenze
Suddivisione della CLI
Chiara distinzione tra comandi locali (airflow) e remoti (airflowctl)
Topologie di deployment
Supporta pattern di esecuzione ibridi, multi-cloud, edge e accelerati via GPU
Nuova UI basata su React e versionamento dei DAG
Airflow 3.0 introduce un'interfaccia utente completamente riprogettata, costruita da zero usando React per il frontend e FastAPI come nuovo framework di backend.
UI più veloce e reattiva
La nuova architettura della UI offre un'esperienza utente significativamente più fluida, in particolare in ambienti con centinaia o migliaia di DAG.
Il caricamento delle pagine è più rapido, gli elementi della UI sono più intuitivi e il modello di navigazione risulta coerente e reattivo tra le varie viste.
Alcuni dei principali miglioramenti della UI includono:
Supporto integrato per la dark mode
La dark mode è ora integrata nativamente e con cura in Airflow, offrendo un'esperienza visiva raffinata, pensata per chiarezza e comfort a lungo termine.
Sebbene una versione della dark mode fosse disponibile nella 2.x, questo rilascio introduce un layer di design completo e mirato.
È chiaramente ottimizzata per contrasto, leggibilità e riduzione dell'affaticamento visivo durante sessioni di lavoro prolungate.
Avendo trascorso tempo nel mondo dello sviluppo, lo apprezzo molto.
È stata una delle feature più richieste dalla community ed è particolarmente utile per gli sviluppatori che spesso lavorano in ambienti con poca luce o semplicemente preferiscono un'interfaccia scura.
Le immagini seguenti evidenziano il contrasto visivo tra la modalità chiara e scura nella dashboard della console di Airflow.
Screenshot della console di Airflow in modalità chiara. Fonte: Airflow 3.0 Astronomer Introduction Video
Screenshot della console di Airflow in modalità scura. Fonte: Airflow 3.0 Astronomer Introduction Video
Versionamento dei DAG
Una delle nuove funzionalità più impattanti in Airflow 3.0 è il versionamento dei DAG di prima classe.
La sfida in Airflow 2.x
Nelle versioni precedenti di Airflow, i DAG venivano analizzati dai file di sorgente e l'ultima versione del DAG era applicata universalmente, anche in modo retroattivo, alle esecuzioni passate.
Questo approccio portava a diversi problemi noti.
Un problema importante era la deriva di esecuzione. Se aggiornavi un DAG durante un run, i task potevano finire per essere eseguiti sotto versioni diverse del codice.
C'era anche una perdita di auditabilità, poiché Airflow non aveva un meccanismo nativo per tracciare quale versione di un DAG fosse stata usata per una specifica esecuzione.
Inoltre, l'accuratezza storica ne risentiva perché la UI mostrava sempre la struttura del DAG più recente, indipendentemente da quando il DAG fosse stato effettivamente eseguito, con storici di esecuzione incoerenti e potenzialmente fuorvianti.
Cosa cambia con Airflow 3.0
Airflow 3.0 introduce il tracciamento strutturato delle versioni dei DAG direttamente nella piattaforma:
Apprezzo molto questa funzionalità perché, in pratica, è quasi impossibile creare un DAG che non necessiti di modifiche.
I DAG dovranno evolvere per nuova logica di business, correzioni di bug o ottimizzazioni prestazionali, e avere un versionamento integrato rende il processo molto più trasparente e gestibile.
Puoi vederlo in azione negli screenshot qui sotto, che mostrano l'interfaccia di orchestrazione dei DAG e il nuovo menu a tendina della cronologia delle versioni.
Immagine dell'orchestrazione dei DAG. Fonte: Airflow 3.0 Astronomer Introduction Video
Screenshot dell'orchestrazione dei DAG con menu a tendina della cronologia versioni. Fonte: Airflow 3.0 Astronomer Introduction Video
Perché il versionamento dei DAG è importante
Il versionamento dei DAG svolge un ruolo cruciale nel mantenere workflow di dati affidabili, tracciabili e conformi. Ecco perché è importante:
Gli screenshot seguenti mostrano come alcune modifiche vengono evidenziate nella UI, con viste sensibili alla versione sia nell'overview del DAG sia nel pannello del codice.
Screenshot del pannello overview all'interno di un DAG nella console di Airflow. Fonte: Airflow 3.0 Astronomer Introduction Video)
Screenshot del pannello del codice all'interno di un DAG nella console di Airflow. Fonte: Airflow 3.0 Astronomer Introduction Video
Collaborazione e trasparenza
Il versionamento dei DAG facilita anche la collaborazione tra i team dati. Per esempio:
Scheduling più intelligente e backfill
Airflow 3.0 segna un'evoluzione significativa nel modo in cui i workflow vengono triggerati, gestiti e coordinati.
DAG guidati dagli asset
Al centro dello scheduling più intelligente in Airflow 3.0 c'è il concetto di Asset.
Ispirato all'evoluzione dei dataset introdotti nelle versioni precedenti, il nuovo decorator @asset consente di definire pipeline guidate dalla disponibilità e dallo stato di entità dati logiche.
Cos'è un asset?
Un asset in Airflow rappresenta un dato o un output prodotto, trasformato o consumato da un DAG.
Può trattarsi di una tabella di database, un file in uno storage cloud, un modello ML addestrato o persino una risposta API.
Con il decorator @asset:
Lo screenshot qui sotto mostra come gli asset vengono visualizzati nella console di Airflow.
Screenshot degli asset nella console di Airflow. Fonte: Airflow 3.0 Astronomer Introduction Video
Alcune caratteristiche chiave degli asset in Airflow 3.0 includono:
Immagine delle caratteristiche chiave degli asset in Airflow 3.0. Immagine creata con Napkin AI
Questo modello trasforma lo scheduling dei DAG da “esegui ogni ora” a “esegui quando i dati rilevanti sono pronti”.
Abilita workflow davvero reattivi, strettamente collegati allo stato dei dati, non all'orologio.
Per esempi più approfonditi e pattern di produzione che usano queste nuove capacità, la guida di Astronomer sullo scheduling data-aware offre un walkthrough dettagliato. Puoi anche imparare a implementare una pipeline dati completa con queste feature nella guida Building an ETL Pipeline with Airflow.
Scheduling basato su eventi esterni
Airflow 3.0 introduce un solido supporto allo scheduling guidato da eventi esterni, che consente di avviare i workflow in base a trigger reali provenienti al di fuori dell'ecosistema Airflow.
Questa funzionalità rappresenta un cambiamento significativo rispetto all'approccio tradizionale di polling di Airflow.
Le fonti di evento supportate includono AWS SQS per integrare code di messaggi in workflow cloud-native e disaccoppiati, il supporto pianificato a Kafka per sostenere streaming e coordinamento di microservizi, e HTTP/webhook per ricevere segnali da sistemi di monitoraggio, API o altre piattaforme di orchestrazione.
I casi d'uso spaziano dall'avviare una pipeline dati quando un nuovo file arriva in S3, al lanciare un DAG in risposta a un aggiornamento in un registry di modelli ML, fino a coordinare workflow di alerting e incident response in tempo reale.
I DAG guidati da eventi rendono Airflow più flessibile e potente, capace di reagire ai sistemi esterni in tempo reale.
Backfill gestiti dallo scheduler
Uno dei miglioramenti più attesi in Airflow 3.0 è la revisione della meccanica dei backfill, il processo di riesecuzione di intervalli di dati passati o di riparazione dei DAG falliti.
Tra le sfide della 2.x c'erano la mancanza di supporto UI e API per i backfill, che dovevano essere triggerati manualmente via CLI.
Per questo, in Airflow 3.0 sono stati introdotti i seguenti miglioramenti:
Immagine con i miglioramenti in Airflow 3.0. Immagine creata con Napkin AI
Supporto a casi d'uso di Machine Learning e AI in Airflow 3.0
Airflow 3.0 compie un passo significativo verso l'essere uno strumento di orchestrazione di prima classe per workflow moderni di machine learning (ML) e guidati dall'AI.
DAG senza intervalli di dati
Una delle modifiche più trasformative nella 3.0 è la rimozione del vincolo storico della execution date.
In Airflow 2.x e precedenti, ogni esecuzione di DAG richiedeva una execution_date univoca, principalmente legata all'intervallo di scheduling.
Sebbene questo modello funzionasse bene per job ETL basati sul tempo, creava attriti in scenari sperimentali e di inferenza.
Con i DAG senza intervalli di dati, Airflow 3.0 introduce una vera indipendenza di esecuzione:
Alcuni casi d'uso abilitati da questo cambiamento includono:
Questo disaccoppiamento semplifica drasticamente la logica di orchestrazione per gli ML engineer e abilita livelli più alti di automazione, parallelismo e riproducibilità.
Esegui i task in qualsiasi momento
Airflow 3.0 supporta ufficialmente molteplici paradigmi di esecuzione, riconoscendo che i moderni workflow di dati non seguono sempre schedule fisse.
Questo aggiornamento rende Airflow più adattabile a una varietà di esigenze operative e di elaborazione dati.
Le modalità di esecuzione supportate includono la classica esecuzione pianificata (batch), che utilizza uno scheduling simile a cron ed è adatta a job come report notturni, sincronizzazioni orarie o pipeline ETL batch.
Airflow 3.0 supporta anche l'esecuzione event-driven, in cui i DAG possono essere triggerati da eventi esterni—come un nuovo file che appare in un bucket di storage cloud o un messaggio che arriva su Kafka—consentendo un'orchestrazione reattiva e in tempo reale. Inoltre, è ora possibile l'esecuzione ad hoc/di inferenza, che abilita l'esecuzione di DAG senza necessità di un timestamp specifico.
È particolarmente utile per casi d'uso come inferenza di machine learning, controlli di qualità dei dati o job attivati dall'utente in cui contano concorrenza e immediatezza.
Aggiornare ad Airflow 3.0
Airflow 3.0 introduce miglioramenti significativi ma si discosta anche in modo sostanziale dai pattern legacy.
Per aiutarti a effettuare una transizione fluida, i contributor principali hanno fornito una guida di upgrade ampia e ben strutturata.
È un major release, e si consiglia un'attenta pianificazione.
Detto ciò, il processo di upgrade è stato reso il più lineare possibile con documentazione chiara, checklist di aggiornamento e strumenti di compatibilità.
Alcuni degli aspetti coperti dalla guida includono:
Screenshot della pagina Apache Airflow sull'upgrade alla 3.0. Fonte: Apache Airflow
È importante valutare le seguenti aree prima di procedere con l'upgrade:
Se vuoi un'esperienza di upgrade senza intoppi, dai un'occhiata alla documentazione Upgrading to Airflow 3.0 prima di aggiornare Airflow.
Valutazione basata su demo
Per vedere le nuove funzionalità di Airflow 3.0 in azione, i DAG demo ufficiali forniti da Astronomer offrono un modo pratico per esplorare le capacità più recenti della piattaforma.
Queste demo fungono da vetrina completa e sono ideali per capire come funzionano in scenari reali funzionalità come il versionamento dei DAG, i workflow guidati dagli asset e l'esecuzione event-driven.
Screenshot di un caso d'uso di esempio in cui utilizzare Airflow 3.0. Fonte: Astronomer GitHub
La nuova interfaccia è saltata subito all'occhio. La vista Asset ha offerto una mappa visiva chiara delle dipendenze e della lineage dei dati, particolarmente utile lavorando con DAG guidati dagli asset.
Il pannello della cronologia delle versioni del DAG è stato un altro punto di forza. Ha consentito un'ispezione rapida delle modifiche passate, ha reso la riproducibilità immediata e ha reso facile correlare esecuzioni specifiche con il codice che le ha generate.
Inoltre, la dark mode riprogettata ha fornito un ottimo contrasto e una grande leggibilità, risultando un gradito miglioramento per sessioni di debug prolungate o lavoro di sviluppo notturno.
Se vuoi provarla in prima persona, Astronomer fornisce istruzioni passo passo e un ambiente demo pronto all'uso nel loro repository GitHub. Puoi clonare il repo, seguire la guida di setup ed esplorare le novità di Airflow 3.0.
Community e sviluppi futuri
Apache Airflow è sempre stato guidato dalla sua community, e questo vale anche per Airflow 3.0.
Molte delle funzionalità più impattanti di questo rilascio sono risposte dirette a survey della community, discussioni su GitHub e feedback degli utenti.
Se usi Airflow, dovresti considerare di partecipare attivamente. Ecco come puoi avere un impatto:
Conclusione
Apache Airflow 3.0 porta in un unico rilascio un'architettura orientata ai servizi, esecuzione di task poliglotta, scheduling più intelligente e una UI completamente modernizzata.
Il cambiamento può sembrare marcato, soprattutto con la nuova suddivisione della CLI e gli executor orientati all'edge, ma il risultato è una piattaforma di orchestrazione più modulare, scalabile e pronta per la produzione.
È anche più flessibile per i team ML, gli stack cloud-native e i sistemi event-driven in cui reattività e osservabilità sono fondamentali.
Se stai ancora usando una versione precedente di Airflow, considerare l'upgrade alla 3.0 ha sicuramente senso.
Per provare Airflow con mano, inizia con il nostro corso, Getting Started with Apache Airflow, oppure approfondisci i concetti di base in Introduction to Apache Airflow in Python.