Overview
Airflow 2.5, released on April 8, 2023, improves the datasets system for data-driven orchestration.
Main Features
Improved datasets
Datasets allow triggering DAGs automatically when upstream data is updated, creating data-driven dependencies between pipelines.
python
from airflow.datasets import Dataset
from airflow.decorators import dag, task
from datetime import datetime
data = Dataset('s3://bucket/data.parquet')
@dag(schedule=[data], start_date=datetime(2023, 1, 1))
def analysis_pipeline():
@task(outlets=[data])
def load():
return 'data loaded'
load()
analysis_pipeline()
Interface improvements
The Airflow web interface benefits from an improved grid view and better display of dataset dependencies.
python
from airflow.decorators import dag, task
from datetime import datetime, timedelta
@dag(
schedule=timedelta(hours=1),
start_date=datetime(2023, 1, 1),
catchup=False,
)
def hourly_etl():
@task
def extract():
return {'rows': 1000}
@task
def transform(data):
return {'rows': data['rows'], 'processed': True}
transform(extract())
hourly_etl()
