Assets no Airflow: Orquestração Baseada em Dados
Índice
O Apache Airflow evoluiu de um orquestrador de workflows baseado em tempo para uma plataforma cada vez mais data-aware, permitindo que pipelines sejam disparados e controlados pela atualização de dados em si. Esse avanço se materializa no conceito de Assets.
O que são Assets?
Um asset é um agrupamento lógico de dados (ou artefatos de dados) que pode ser produzido ou consumido por tarefas em DAGs. Ele é identificado por uma URI, como:
-
Um arquivo em S3: s3://bucket/exemplo.csv
-
Uma tabela em um banco Postgres
-
Um dataset em BigQuery
-
Um recurso acessível via URI de um provider instalado
Em resumo: assets são dados ou recursos que o Airflow consegue rastrear e usar como gatilhos para workflows.
Como os Assets Funcionam?
-
Produção: quando uma tarefa gera ou atualiza um asset (ex.: salva um CSV em S3).
-
Consumo: quando uma tarefa depende de um asset existente (ex.: lê uma tabela atualizada no Postgres).
Isso cria dependências explícitas entre diferentes DAGs e pipelines.Desde a versão 2.4, o Airflow passou a orquestrar workflows de forma orientada a dados. Já no Airflow 3.0, o termo “dataset” foi oficialmente substituído por asset.
Benefícios do Uso de Assets
-
Orquestração baseada em eventos: DAGs podem ser disparados automaticamente quando um asset é atualizado, sem depender apenas de cron jobs.
-
Visualização de dependências: fica claro quais pipelines compartilham e atualizam os mesmos ativos.
-
Flexibilidade de integração: suporte a múltiplos tipos de URIs (file, s3, postgres, entre outros).
Isso torna o Airflow mais dinâmico e adaptado a cenários modernos de engenharia de dados reativa.
Exemplo Prático
1
2
3
from airflow.sdk import Asset
example_asset = Asset("s3://asset-bucket/example.csv")
Nesse exemplo, qualquer atualização no arquivo example.csv será interpretada como atualização do asset. Assim, DAGs configurados para consumir esse asset podem ser disparados automaticamente.
##
Os Assets representam um passo importante na evolução do Airflow, tornando os pipelines reativos à chegada, alteração ou geração de dados. Com eles, o Airflow deixa de ser apenas um agendador sofisticado para se consolidar como um verdadeiro orquestrador orientado a dados.