Pular para o conteúdo principal

O Apache Airflow 3.0 chegou para você: O lançamento mais significativo até o momento

Este guia prático do Apache Airflow 3.0 explora seus recursos, aprimoramentos e tudo o que você precisa saber sobre a atualização mais significativa até o momento.
Atualizado 24 de abr. de 2025  · 15 min lido

O Apache Airflow 3.0 finalmente chegou e é sem dúvida o lançamento mais significativo da história do projeto. 

Esta versão reformulará a forma como você pensa sobre o gerenciamento de fluxos de trabalho, independentemente de você ser novo em dados ou estar trabalhando com o Airflow há anos.

Depois de explorar a nova versão em primeira mão, posso dizer com segurança que ela é muito mais do que apenas uma atualização incremental.

Alguns dos principais destaques incluem:

  • Uma nova arquitetura orientada a serviços com execução remota completa
  • Nova interface de usuário baseada em React e construída com FastAPI
  • Controle de versões e alterações do DAG
  • Acionamento de DAG baseado em ativos e eventos
  • Suporte nativo para fluxos de trabalho modernos de ML
  • Caminhos de atualização claros e divisão modular da CLI

Este guia guiará você pelo Airflow 3.0 e por tudo o que ele tem a oferecer.

O que é o Apache Airflow?

O Apache Airflow é uma plataforma de código aberto que ajuda os usuários a criar, agendar e monitorar fluxos de trabalho de dados de forma programática. 

Ele tem sido o orquestrador de referência para pipelines de ETL complexos, fluxos de trabalho de engenharia de dados e, mais recentemente, pipelines de machine learning.

O conceito fundamental do Airflow é o DAG (um gráfico acíclico direcionado que define uma sequência de tarefas e suas dependências).

As tarefas podem variar de scripts Python a transformações SQL e até mesmo operações em contêineres quando se trata de usar o Airflow. 

A plataforma é flexível, extensível e agora, com a versão 3.0, está mais preparada para o futuro do que nunca.

Se você está apenas começando a usar o Airflow, a Introdução ao Apache Airflow em Python é um ótimo recurso que oferece a você experiência prática.

Uma breve história do Airflow Apache

O Airflow foi desenvolvido inicialmente pelo Airbnb em 2014 e teve seu código aberto em 2015. 

Posteriormente, tornou-se um projeto da Apache e, desde então, uma das ferramentas de orquestração mais amplamente adotadas no ecossistema de engenharia de dados.

  • Airflow 1.x: Introduziu noções básicas de criação, agendamento e executor de DAG com base em Python.
  • Airflow 2.0 (2020): Uma versão de marco que adicionou a API TaskFlow, a API REST e o agendador de alta disponibilidade.
  • Airflow 2,3-2,5: Introduziu conjuntos de dados, agendamento com reconhecimento de dados e melhorias na observabilidade.
  • Airflow 3.0 (2025): Marca um redesenho fundamental, que prioriza a modularidade, os recursos nativos de ML e o suporte nativo da nuvem.

Você pode ver na imagem abaixo que as contribuições do GitHub aumentaram significativamente de um ano para outro, o que mostra que o Apache Airflow é um dos projetos de código aberto mais ativos no espaço de orquestração de dados.

Gráfico mostrando o número crescente de contribuições do GitHub para o Apache Airflow ao longo dos anos.

Gráfico mostrando o número crescente de contribuições do GitHub para o Apache Airflow ao longo dos anos. Fonte: Vídeo de introdução ao Airflow 3.0

O que há de novo no Apache Airflow 3.0?

O Apache Airflow 3.0 é um lançamento baseado em três temas fundamentais. 

Captura de tela da página de lançamento do Apache Airflow 3.0.

Captura de tela da página de lançamento do Apache Airflow 3.0. Fonte: Apache Airflow

Esses temas refletem a visão do projeto para atender às demandas das plataformas de dados modernas, melhorar a experiência do desenvolvedor e fortalecer a posição do Airflow como um orquestrador central em ambientes distribuídos, híbridos e alimentados por ML.

Os principais temas podem ser categorizados da seguinte forma:

Imagem que resume os três temas principais do Apache Airflow 3.0.

Imagem que resume os três temas principais do Apache Airflow 3.0. Imagem criada usando o Napkin AI

Mais fácil de usar

Um dos objetivos mais importantes da versão 3.0 é melhorar a usabilidade em todos os aspectos, desde a linha de comando até a interface do usuário e as interações subjacentes da API.

Agora, o Airflow é mais fácil de aprender, mais agradável de usar diariamente e mais bem equipado para atender a requisitos operacionais complexos.

Segurança mais forte

A segurança tornou-se uma preocupação central na engenharia de dados, especialmente como resultado das crescentes regulamentações de privacidade e da escala da infraestrutura de dados. 

O Airflow 3.0 aborda essas preocupações com um suporte arquitetônico mais profundo para isolamento de tarefas e controle de execução.

As melhorias de segurança no Airflow 3.0 são proativas e estratégicas, o que se alinha às necessidades de implementações corporativas, setores altamente regulamentados e práticas modernas de DevSecOps.

Corra em qualquer lugar, a qualquer hora

A pilha de dados moderna não está mais confinada a data centers locais ou mesmo a ambientes de nuvem centralizados. 

O Airflow 3.0 atende a esse desafio com suporte a diversas topologias de implementação e padrões de execução.

Permitir que as tarefas sejam executadas em qualquer lugar (e dar suporte a fluxos de trabalho que são executados a qualquer momento) oferece flexibilidade, resiliência e escalabilidade incomparáveis para orquestrar o ciclo de vida dos dados modernos.

Imagem mostrando clusters remotos com trabalhadores locais, usados para executar em qualquer lugar, a qualquer momento.

Imagem mostrando clusters remotos com trabalhadores locais, usados para executar em qualquer lugar, a qualquer momento. Fonte: Vídeo de introdução do Airflow 3.0 Astronomer

No restante deste guia, você abordará aspectos do tema principal do Airflow 3.0 em mais detalhes.

Principais mudanças na arquitetura do Airflow 3.0

Com o lançamento do Apache Airflow 3.0, você está reimaginando como as tarefas são executadas, onde podem ser executadas e como os desenvolvedores e operadores interagem com o sistema. 

O foco está no desacoplamento, na modularização, no dimensionamento e na flexibilidade de implantação, permitindo que o Airflow atenda às demandas de plataformas de dados híbridas e de várias nuvens.

Imagem mostrando a arquitetura do Airflow 2 e do Airflow 3.

Imagem mostrando a arquitetura do Airflow 2 e do Airflow 3. Fonte: Vídeo de introdução do Airflow 3.0 Astronomer

API de execução de tarefas e SDK de tarefas

Uma das inovações mais importantes do Airflow 3.0 é a introdução de uma API de execução de tarefas e um SDK de tarefas que a acompanha. 

Esses componentes permitem que as tarefas sejam definidas e executadas independentemente do mecanismo de tempo de execução principal do Airflow.

Aqui estão algumas das principais implicações disso:

  • Flexibilidade de idioma: As tarefas não estão mais restritas ao Python. Com o novo SDK, eles podem ser escritos em linguagens como Java, Go ou R, permitindo uma adoção mais ampla e a integração com diversas pilhas de tecnologia.
  • Desacoplamento do ambiente: As tarefas agora podem ser executadas em ambientes isolados, remotos ou em contêineres, separados do agendador e dos trabalhadores. Isso elimina conflitos de dependência e melhora a consistência da execução.
  • Fluxo de trabalho simplificado para desenvolvedores: Uma interface padronizada para o desenvolvimento de tarefas simplifica os testes e a implementação, aprimora a reutilização do código e reduz o tempo de integração de novos desenvolvedores.

Essa arquitetura é um grande avanço para tornar o Airflow mais flexível e nativo na nuvem. 

Ele se alinha à mudança mais ampla na engenharia de dados em direção à diversidade de idiomas, à conteinerização e à reprodutibilidade em nível de tarefa.

Executor de borda

O Edge Executor é outra adição ao Airflow 3.0 que é transformadora. 

Ele foi projetado para permitir a execução de tarefas orientada por eventos e geograficamente distribuída. 

Em vez de exigir que todas as execuções ocorram em um cluster centralizado, o Edge Executor permite que as tarefas sejam executadas na fonte de dados ou próximo a ela.

Alguns dos principais benefícios do Edge Execution incluem:

Imagem mostrando os principais benefícios do Edge Execution.

Imagem mostrando os principais benefícios do Edge Execution. Imagem criada usando o Napkin AI

  • Flexibilidade geográfica: As tarefas podem ser executadas em clusters remotos ou regionais, data centers ou até mesmo em dispositivos de borda.
  • Capacidade de resposta em tempo real: Ideal para casos de uso de baixa latência e orientados por eventos, como IoT, feeds de dados financeiros ou monitoramento operacional.
  • Latência de rede reduzida: Como a computação ocorre perto da fonte de dados, há menos sobrecarga na transferência de grandes volumes de dados para um cluster central.
  • Pipelines acionados por eventos: O Edge Executor oferece suporte ao novo paradigma de agendamento orientado por eventos introduzido no Airflow 3.0.

Isolamento de tarefas e topologias de implementação

O Airflow 3.0 apresenta um novo nível de isolamento de tarefas que aumenta significativamente a segurança e o desempenho. 

Ao permitir que as tarefas sejam executadas em ambientes sandbox, você reduz o risco de vazamentos de dados e conflitos de recursos. 

Ele também permite um gerenciamento de dependências mais flexível, pois diferentes tarefas ou DAGs podem operar com suas próprias versões de bibliotecas, ambientes Python ou mecanismos de tempo de execução. 

Esse isolamento permite que você faça upgrades mais suaves. Os componentes principais do Airflow podem ser atualizados sem interromper as tarefas em execução ou quebrar a compatibilidade.

A arquitetura aprimorada também permite uma variedade de cenários de implementação adaptados às diversas necessidades de infraestrutura. 

Em ambientes de nuvem pública, os funcionários do Airflow podem ser facilmente distribuídos entre provedores como AWS, GCP ou Azure.

Para configurações de nuvem privada ou híbrida, os componentes do plano de controle podem permanecer em uma rede segura, enquanto as tarefas são executadas em uma DMZ ou em um data center local.

Além disso, o Airflow 3.0 oferece suporte a implementações de borda, que permitem casos de uso como inferência de ML ou detecção de anomalias diretamente no hardware industrial ou móvel.

Esses recursos oferecem suporte à conformidade com as normas de localidade de dados, programação tolerante a falhas e execução acelerada por GPU.

Divisão da CLI: airflow e airflowctl

O Airflow 3.0 apresenta uma interface de linha de comando (CLI) dividida, projetada para complementar o back-end modular, que faz distinção entre o desenvolvimento local e as tarefas operacionais remotas.

airflow

  • Usado para desenvolvimento e testes locais
  • Interage com DAGs locais, banco de dados de metadados e componentes
  • Oferece suporte a testes rápidos, análise de DAG e depuração baseada em CLI

airflowctl

  • Projetado para produção e orquestração remota
  • Você lida com o gerenciamento do ambiente, a implementação e a execução da nuvem
  • Útil para pipelines de CI/CD, observabilidade e gerenciamento de clusters distribuídos

Essa divisão simplifica os fluxos de trabalho para desenvolvedores individuais e equipes de plataforma. 

Para obter todos os detalhes técnicos e uma lista completa de alterações, confira o relatório oficial do Airflow 3.0 notas de versão.

Resumo dos aprimoramentos da arquitetura

Aqui está uma tabela com um resumo dos aprimoramentos da arquitetura:

Recurso

Descrição

Tarefa SDK + API

Escreva e execute tarefas em qualquer linguagem com suporte à execução remota

Executor de borda

Execução de tarefas distribuídas perto de fontes de dados ou em regiões geográficas

Isolamento de tarefas

Ambientes de tarefas seguros e independentes; gerenciamento flexível de dependências

Divisão da CLI

Distinção clara entre comandos locais (airflow) e remotos (airflowctl)

Topologias de implantação

Suporta padrões de execução híbridos, de várias nuvens, de borda e acelerados por GPU

Nova interface de usuário baseada em React e controle de versão de DAG

O Airflow 3.0 apresenta uma interface de usuário completamente redesenhada, construída desde o início usando React para o front-end e FastAPI como a nova estrutura de back-end. 

Interface de usuário mais rápida e responsiva

A nova arquitetura de IU oferece uma experiência de usuário significativamente mais suave, especialmente em ambientes com centenas ou milhares de DAGs. 

As páginas são carregadas mais rapidamente, os elementos da interface do usuário são mais intuitivos e o modelo de navegação parece consistente e responsivo em diferentes exibições.

Alguns dos principais aprimoramentos da interface do usuário incluem:

  • Aprimoramentos da visualização de grade: Melhoria na navegação, pesquisa e filtragem da linha do tempo. Os usuários agora podem verificar com mais facilidade o status de execução dos DAGs e solucionar problemas de tarefas com falha ou travadas.
  • Melhorias na visualização do gráfico: Melhor zoom, panorâmica e exploração interativa de metadados de tarefas. Isso ajuda você a entender estruturas DAG complexas em um piscar de olhos.
  • Painel de ativos: Uma nova visualização projetada especificamente para fluxos de trabalho orientados por ativos. Ele permite que os usuários visualizem os ativos, seus produtores e consumidores, e a linhagem entre os DAGs.

Suporte integrado para o modo escuro

Agora, o modo escuro está integrado de forma nativa e cuidadosa ao Airflow, que oferece uma experiência visual refinada, projetada para proporcionar clareza e conforto a longo prazo.

Embora uma versão do modo escuro estivesse disponível na versão 2.x, esta versão apresenta uma camada de design totalmente desenvolvida e criada para esse fim. 

Ele foi cuidadosamente otimizado para proporcionar contraste, legibilidade e redução do cansaço visual durante sessões de trabalho prolongadas.

Como alguém que passou algum tempo no espaço de desenvolvimento, eu realmente aprecio isso. 

Esse foi um dos recursos mais solicitados pela comunidade e é especialmente valioso para os desenvolvedores que trabalham com frequência em ambientes com pouca luz ou que simplesmente preferem uma interface mais escura.

As imagens abaixo destacam o contraste visual entre os modos claro e escuro no painel do console Airflow.

Captura de tela do console Airflow no modo de luz.

Captura de tela do console Airflow no modo de luz. Fonte: Vídeo de introdução do Airflow 3.0 Astronomer

Captura de tela do console do Airflow no modo escuro.

Captura de tela do console do Airflow no modo escuro. Fonte: Vídeo de introdução do Airflow 3.0 Astronomer

Controle de versão do DAG

Um dos novos recursos mais impactantes do Airflow 3.0 é o versionamento de DAG de primeira classe. 

O desafio do Airflow 2.x

Nas versões anteriores do Airflow, os DAGs eram analisados a partir de arquivos de código-fonte, e a versão mais recente do DAG era aplicada universalmente, até mesmo retroativamente, a execuções anteriores do DAG. 

Essa abordagem levou a vários problemas bem conhecidos. 

Um grande problema foi o desvio de execução. Se você atualizou um DAG durante uma execução, as tarefas podem acabar sendo executadas em versões diferentes do código. 

Também houve perda de auditabilidade, pois o Airflow não tinha nenhum mecanismo nativo para rastrear qual versão de um DAG foi usada para uma execução específica. 

Além disso, a precisão do histórico foi prejudicada porque a interface do usuário sempre exibiu a estrutura mais recente do DAG, independentemente de quando o DAG foi realmente executado, o que resultou em históricos de execução inconsistentes e potencialmente enganosos.

O que o Airflow 3.0 muda

O Airflow 3.0 introduz o controle de versão de DAG estruturado diretamente na plataforma:

  • Os DAGs são versionados sempre que ocorre uma nova implantação ou alteração de código.
  • As execuções históricas são preservadas junto com a versão exata do DAG que as produziu.
  • Os usuários podem selecionar uma versão específica de um DAG para inspecionar, executar novamente ou analisar a partir da interface do usuário.

Eu realmente gosto desse recurso porque, na prática, é quase impossível criar um DAG que não precise de alterações. 

Os DAGs precisarão evoluir devido à nova lógica de negócios, à correção de bugs ou à otimização do desempenho, e o controle de versão integrado torna esse processo muito mais transparente e gerenciável.

Você pode ver isso em ação nas capturas de tela abaixo, que mostram a interface de orquestração do DAG e o novo menu suspenso do histórico de versões.

Imagem da orquestração de DAG.

Imagem da orquestração de DAG. Fonte: Vídeo de introdução do Airflow 3.0 Astronomer

Captura de tela da orquestração de DAG com um menu suspenso de histórico de versões.

Captura de tela da orquestração de DAG com um menu suspenso de histórico de versões. Fonte: Vídeo de introdução do Airflow 3.0 Astronomer

Por que o controle de versão do DAG é importante

O controle de versão do DAG desempenha uma função crucial na manutenção de fluxos de trabalho de dados confiáveis, rastreáveis e compatíveis. Veja por que isso é importante:

  • Reprodutibilidade: Agora você pode executar novamente um DAG de forma confiável, exatamente como foi executado no passado, mesmo que o código atual tenha sido alterado.
  • Depuração: Os erros podem ser rastreados até a versão específica do DAG responsável, auxiliando na análise da causa raiz.
  • Governança: Em ambientes regulamentados, o controle de versão oferece suporte à conformidade, mantendo uma trilha de auditoria de qual código foi usado, quando e como.
  • Integração CI/CD: As equipes que usam fluxos de trabalho GitOps podem vincular versões DAG no Airflow a hashes de confirmação no controle de origem para obter um pipeline de entrega totalmente rastreável.

As capturas de tela abaixo mostram como algumas das alterações são exibidas na interface do usuário, com visualizações com reconhecimento de versão na visão geral do DAG e no painel de código.

Captura de tela do painel de visão geral em um DAG no console do Airflow.

Captura de tela do painel de visão geral em um DAG no console do Airflow. Fonte: Vídeo de introdução do Airflow 3.0 Astronomer)

Captura de tela do painel de código em um DAG no console do Airflow.

Captura de tela do painel de código em um DAG no console do Airflow. Fonte: Vídeo de introdução do Airflow 3.0 Astronomer

Colaboração e transparência

O controle de versão do DAG também facilita a colaboração entre as equipes de dados. Por exemplo:

  • Os engenheiros podem revisar as alterações do DAG diretamente na interface do usuário sem precisar de acesso ao Git.
  • Os analistas e as equipes de controle de qualidade podem verificar o comportamento histórico sem correr o risco de interferir nos DAGs de produção.
  • Os engenheiros de plataforma podem testar com segurança as novas versões do DAG juntamente com as versões estáveis.

Programação mais inteligente e preenchimentos posteriores

O Airflow 3.0 marca uma evolução significativa na forma como os fluxos de trabalho são acionados, gerenciados e coordenados.

DAGs orientados por ativos

No centro da programação mais inteligente do Airflow 3.0 está o conceito de Ativos. 

Inspirado na evolução dos conjuntos de dados introduzidos em versões anteriores, o novo decorador @asset permite que os usuários definam pipelines que são orientados pela disponibilidade e pelo status das entidades de dados lógicos.

O que é um ativo?

Um ativo no Airflow representa uma parte dos dados ou uma saída que é produzida, transformada ou consumida por um DAG. 

Pode ser uma tabela de banco de dados, um arquivo no armazenamento em nuvem, um modelo de ML treinado ou até mesmo uma resposta de API.

Com o decorador @asset:

  • Os ativos são declarados como funções Python que retornam ou geram dados.
  • Esses ativos são tratados como cidadãos de primeira classe no processo de orquestração.
  • O Airflow programa automaticamente as dependências entre ativos e DAGs.

A captura de tela abaixo mostra como os ativos são visualizados no console do Airflow.

Captura de tela dos ativos no console do Airflow.

Captura de tela dos ativos no console do Airflow. Fonte: Vídeo de introdução do Airflow 3.0 Astronomer

Alguns dos principais recursos de ativos no Airflow 3.0 incluem:

Imagem dos principais recursos do Assets no Airflow 3.0.

Imagem dos principais recursos do Assets no Airflow 3.0. Imagem criada usando o Napkin AI

  • Metadados estruturados: Os ativos são compatíveis com nomes, URIs, identificadores de grupo e campos de metadados arbitrários, o que permite a descoberta e a linhagem avançada.
  • Design componível: Os ativos podem fazer referência uns aos outros para criar pipelines interdependentes e modulares.
  • Suporte ao Watcher: Os ativos podem ser configurados com Watchers, que monitoram sinais externos (atualmente AWS SQS) e acionam a execução do DAG em resposta.

Esse modelo transforma o agendamento de DAG de "executar a cada hora" para "executar quando os dados relevantes estiverem prontos". 

Isso permite fluxos de trabalho verdadeiramente reativos que são fortemente acoplados ao estado dos dados, não ao relógio.

Para obter exemplos mais detalhados e padrões de produção que usam esses novos recursos, você pode consultar o Guia do astrônomo sobre agendamento com reconhecimento de dados oferece um passo a passo detalhado. Você também pode aprender a implementar um pipeline de dados completo com esses recursos no guia para Como criar um pipeline de ETL com o Airflow.

Programação de eventos externos

O Airflow 3.0 apresenta um suporte robusto para agendamento orientado por eventos externos, o que permite que os fluxos de trabalho sejam iniciados com base em acionadores do mundo real de fora do ecossistema do Airflow.

Esse recurso é uma mudança significativa em relação à abordagem tradicional do Airflow baseada em pesquisas.

As fontes de eventos compatíveis incluem AWS SQS para integração com filas de mensagens em fluxos de trabalho nativos da nuvem e desacoplados, suporte planejado para o Kafka para suportar streaming e coordenação de microsserviços, e HTTP/webhooks para receber sinais de sistemas de monitoramento, APIs ou outras plataformas de orquestração.

Os casos de uso variam desde o início de um pipeline de dados quando um novo arquivo chega ao S3 até o lançamento de um DAG em resposta a uma atualização de registro de modelo de ML ou a coordenação de alertas em tempo real e fluxos de trabalho de resposta a incidentes. 

Os DAGs orientados por eventos permitem que o Airflow se torne mais flexível e poderoso, capaz de reagir a sistemas externos em tempo real.

Preenchimentos gerenciados pelo programador

Uma das melhorias mais esperadas no Airflow 3.0 é a revisão da mecânica de backfill, o processo de reexecutar intervalos de dados anteriores ou reparar DAGs com falha.

Alguns dos desafios do Airflow 2.x incluíam a falta de suporte à interface do usuário e à API para backfills, que precisavam ser acionados manualmente por meio da CLI. 

Como resultado disso, foram feitos aprimoramentos no Airflow 3.0 que incluem:

Imagem contendo melhorias no Airflow 3.0.

Imagem contendo melhorias no Airflow 3.0. Imagem criada usando o Napkin AI

  • Modelo de execução unificado: Os backfills agora são tratados pelo agendador principal, garantindo a consistência com as execuções regulares do DAG.
  • Acionamento multimodal: Os backfills podem ser iniciados por meio da interface do usuário, API ou CLI, oferecendo flexibilidade tanto para usuários interativos quanto para sistemas automatizados.
  • Execução assíncrona: Os backfills agora são executados de forma assíncrona e sem bloqueio; vários backfills podem ser enfileirados e gerenciados simultaneamente.
  • Observabilidade total: A interface do usuário inclui um rastreador de progresso de preenchimento com visualizações detalhadas em nível de tarefa, registros em tempo real e indicadores de status.
  • Cancelável é executado: Os backfills agora podem ser pausados ou encerrados na interface do usuário, permitindo que os usuários respondam dinamicamente aos problemas sem reiniciar fluxos de trabalho inteiros.

Suporte a casos de uso de aprendizado de máquina e IA do Airflow 3.0

O Airflow 3.0 dá um passo significativo para que você se torne uma ferramenta de orquestração de primeira classe para fluxos de trabalho modernos de machine learning (ML) e orientados por IA.

DAGs sem intervalo de dados

Uma das mudanças mais transformadoras na versão 3.0 é a remoção da restrição de data de execução de longa data.

No Airflow 2.x e versões anteriores, cada execução de DAG precisava ter uma data de execução exclusiva, que estava vinculada principalmente ao intervalo de agendamento. 

Embora esse modelo funcionasse bem para trabalhos de ETL baseados em tempo, ele criava atritos em cenários experimentais e de inferência.

Com DAGs sem intervalo de dados, o Airflow 3.0 introduz a verdadeira independência de execução:

Alguns dos casos de uso possibilitados por essa mudança incluem:

  • Experimentação de modelos: Execute o mesmo DAG várias vezes para diferentes configurações de modelo ou fatias de dados sem se preocupar com datas de execução conflitantes.
  • Ajuste de hiperparâmetro: Inicie execuções simultâneas de DAGs para diferentes grades de parâmetros ou estratégias de pesquisa, rastreadas separadamente, mas executadas em paralelo.
  • DAGs de inferência: Chame contínua ou repetidamente o mesmo DAG para previsões em tempo real ou em lote acionadas por novos dados, eventos externos ou ações do usuário.

Esse desacoplamento simplifica drasticamente a lógica de orquestração para engenheiros de ML e permite níveis mais altos de automação, paralelismo e reprodutibilidade.

Executar tarefas a qualquer momento

Agora o Airflow 3.0 suporta oficialmente vários paradigmas de execução, reconhecendo que os fluxos de trabalho de dados modernos nem sempre estão em conformidade com programações fixas. 

Essa atualização torna o Airflow mais adaptável a uma variedade de necessidades operacionais e de processamento de dados.

Os modos de execução compatíveis incluem a execução tradicional agendada (lote), que usa agendamento semelhante ao cron e é adequada para trabalhos como relatórios noturnos, sincronizações de hora em hora ou pipelines de ETL em lote. 

O Airflow 3.0 também oferece suporte à execução orientada por eventos, em que os DAGs podem ser acionados por eventos externos, como o aparecimento de um novo arquivo em um bucket de armazenamento em nuvem ou a chegada de uma mensagem no Kafka, o que permite uma orquestração responsiva e em tempo real. Além disso, agora é possível executar Ad Hoc/Inference Execution, o que permite que os DAGs sejam executados sem a necessidade de um registro de data e hora específico. 

Isso é particularmente útil para casos de uso como inferência de machine learning, verificações de qualidade de dados ou trabalhos acionados pelo usuário em que a simultaneidade e o imediatismo são importantes.

Atualizando para o Airflow 3.0

O Airflow 3.0 introduz melhorias significativas, mas também rompe com os padrões legados de forma significativa. 

Para ajudar você a fazer a transição sem problemas, os principais colaboradores forneceram um guia de atualização extenso e bem estruturado.

Esta é uma versão importante e recomenda-se um planejamento cuidadoso. 

Dito isso, o processo de atualização foi feito da forma mais simples possível, com documentação clara, listas de verificação de atualização e ferramentas de compatibilidade.

Alguns dos aspectos abordados no guia incluem:

  • Configuração de ambiente e dependência
  • Alinhamento do escalonador e do executor
  • Migrações e backups do esquema do banco de dados
  • Diferenças comportamentais na execução de tarefas e análise de DAG

Captura de tela da página da Web do Apache Airflow sobre a atualização para a versão 3.0.

Captura de tela da página da Web do Apache Airflow sobre a atualização para a versão 3.0. Fonte: Apache Airflow

É importante que você avalie as seguintes áreas antes de prosseguir com o upgrade:

  • Compatibilidade com DAG: Certifique-se de que os DAGs usem APIs e construções compatíveis com o SDK de tarefas 3.0, principalmente se você adotar novos recursos de execução.
  • Transição da CLI: Substitua o uso da CLI obsoleta pelo airflowctl quando apropriado, especialmente em contextos de CI/CD e execução remota.
  • Validação do plug-in: Confirme se os plug-ins personalizados e as integrações de terceiros são compatíveis com o novo design arquitetônico e a divisão da CLI.

Se você quiser uma experiência de atualização tranquila, dê uma olhada na documentação completa de Como atualizar para o Airflow 3.0 antes de você atualizar o Airflow.

Avaliação baseada em demonstração

Para você ver os novos recursos do Airflow 3.0 em ação, os DAGs de demonstração oficiais fornecidos pela Astronomer oferecem uma maneira prática de você explorar os recursos mais recentes da plataforma.

Essas demonstrações servem como uma vitrine abrangente e são ideais para você entender como funcionam recursos como controle de versão de DAG, fluxos de trabalho orientados por ativos e execução orientada por eventos em cenários reais.

Captura de tela de um exemplo de caso de uso em que o Airflow 3.0 poderia ser usado.

Captura de tela de um exemplo de caso de uso em que o Airflow 3.0 poderia ser usado. Fonte: Astronomer GitHub

A interface atualizada se destacou imediatamente. A exibição de ativos ofereceu um mapa visual claro das dependências e da linhagem de dados, o que se mostrou especialmente útil quando você trabalhava com DAGs orientados por ativos. 

O painel de histórico de versões do DAG foi outro destaque. Isso permitiu a inspeção rápida de alterações anteriores, tornou a reprodutibilidade simples e facilitou a correlação de execuções específicas com o código que as produziu. 

Além disso, o modo escuro recém-redesenhado oferece excelente contraste e legibilidade, o que o torna um aprimoramento bem-vindo para sessões de depuração prolongadas ou trabalho de desenvolvimento até tarde da noite.

Se você quiser experimentar por conta própria, o Astronomer fornece instruções passo a passo e um ambiente de demonstração pronto para ser executado no repositório do GitHub. Você pode clonar o repositório, seguir o guia de configuração e explorar os novos recursos do Airflow 3.0.

Comunidade e desenvolvimento futuro

O Apache Airflow sempre foi impulsionado por sua comunidade, e isso também se aplica ao Airflow 3.0. 

Muitos dos recursos mais impactantes desta versão foram respostas diretas a pesquisas da comunidade, discussões no GitHub e feedback dos usuários.

Se estiver usando o Airflow, você deve considerar a possibilidade de participar. Veja como você pode causar um impacto:

  • Participe da Comunidade do Apache Airflow no Slack para compartilhar comentários, fazer perguntas e se conectar com outros profissionais.
  • Envolva-se no GitHub participando de problemas, propostas de recursos e discussões de design para ajudar a moldar futuras versões.
  • Participe das pesquisas de recursos quando elas forem compartilhadas. O próprio Airflow 3.0 foi moldado pelas percepções de usuários como você.

Conclusão

O Apache Airflow 3.0 traz uma arquitetura orientada a serviços, execução de tarefas poliglotas, agendamento mais inteligente e uma interface de usuário completamente modernizada, tudo em uma única versão.

A mudança pode parecer drástica, especialmente com a nova divisão da CLI e os executores focados na borda, mas o resultado é uma plataforma de orquestração mais modular, dimensionável e pronta para a produção. 

Também é mais flexível para equipes de ML, pilhas nativas de nuvem e sistemas orientados a eventos, em que a capacidade de resposta e a observabilidade são fundamentais.

Se você ainda estiver usando uma versão mais antiga do Airflow, vale a pena considerar a atualização para a versão 3.0.

Para começar a trabalhar com o Airflow, você pode começar com o nosso curso Introdução ao Apache Airflow em Python ou aprofundar seus conhecimentos sobre os principais conceitos.

Perguntas frequentes sobre o Airflow 3.0

Quais são os principais novos recursos do Apache Airflow 3.0?

O Airflow 3.0 apresenta uma arquitetura orientada a serviços, uma nova interface de usuário baseada em React, controle de versão DAG, agendamento orientado por ativos e suporte aprimorado a ML/AI.

Como a nova API de execução de tarefas aumenta a flexibilidade?

A API de execução de tarefas permite que as tarefas sejam executadas em qualquer idioma e ambiente, o que torna o Airflow mais poliglota e nativo da nuvem do que nunca.

Qual é a diferença entre os novos comandos Airflow e Airflowctl da CLI?

 Agora, o airflow é usado para comandos locais, enquanto o airflowctl lida com operações remotas, o que oferece uma melhor separação entre desenvolvimento e implantação.

Como funciona o controle de versão do DAG no Airflow 3.0?

O Airflow 3.0 programa as alterações nos DAGs ao longo do tempo. Isso permite que os usuários inspecionem o histórico de versões e melhorem a depuração, a auditoria e a colaboração.

O Airflow 3.0 é compatível com fluxos de trabalho de machine learning?

Sim. O Airflow 3.0 oferece suporte a DAGs sem intervalo e execuções sob demanda, facilitando a execução de experimentos de ML, treinamento de modelos e trabalhos de inferência.

Qual é a dificuldade de atualizar para o Airflow 3.0?

Embora a maioria dos DAGs funcione com o mínimo de alterações, algumas alterações significativas e recursos obsoletos exigem revisão. Os guias oficiais de migração estão disponíveis.


Don Kaluarachchi's photo
Author
Don Kaluarachchi
LinkedIn
Twitter
Sou o Don - um consultor, desenvolvedor, engenheiro, arquiteto digital e escritor (basicamente, eu uso muitos chapéus 👨‍💻🎩). Adoro manter as plataformas digitais funcionando sem problemas e sempre encontrar maneiras de melhorá-las. Quando não estou programando, estou escrevendo sobre inteligência artificial, ciência de dados e tudo relacionado à tecnologia.
 
Ao longo dos anos, trabalhei em tudo, desde a criação e otimização de software até a implantação de modelos de IA e o design de soluções em nuvem. Tenho mestrado em Inteligência Artificial e bacharelado em Ciência da Computação, ambos pela Brunel University London.
Tópicos

Principais cursos da DataCamp

Programa

Engenheiro de dados Em Python

0 min
Adquira habilidades sob demanda para ingerir, limpar e gerenciar dados com eficiência, além de programar e monitorar pipelines, destacando você no campo da engenharia de dados.
Ver detalhesRight Arrow
Iniciar curso
Ver maisRight Arrow
Relacionado

blog

O que há de novo no Python 3.11 e você deveria se preocupar com ele?

Aqui está nossa visão geral detalhada dos recursos mais importantes que estão chegando ao Python 3.11, incluindo como instalar a versão beta e quando você poderá colocar as mãos na versão estável oficial.
Bekhruz Tuychiev's photo

Bekhruz Tuychiev

10 min

blog

Stability AI anuncia a difusão estável 3: Tudo o que sabemos até agora

Saiba mais sobre as novas atualizações do Stable Diffusion e descubra os recursos do modelo de texto para imagem da versão 3.
Richie Cotton's photo

Richie Cotton

blog

O que é o Alteryx? Um guia introdutório

Saiba tudo sobre o Alteryx e seus usos na preparação de dados e na visualização de fluxos de trabalho e automação de dados.
Austin Chia's photo

Austin Chia

9 min

AI shaking hands with a human

blog

As 5 melhores ferramentas de IA para ciência de dados em 2024: Aumente seu fluxo de trabalho hoje mesmo

Os recentes avanços em IA têm o potencial de mudar drasticamente a ciência de dados. Leia este artigo para descobrir as cinco melhores ferramentas de IA que todo cientista de dados deve conhecer
Javier Canales Luna's photo

Javier Canales Luna

9 min

Tutorial

Primeiros passos com o AWS Athena: Um guia prático para iniciantes

Este guia prático ajudará você a começar a usar o AWS Athena. Explore sua arquitetura e seus recursos e saiba como consultar dados no Amazon S3 usando SQL.
Tim Lu's photo

Tim Lu

15 min

Tutorial

Como fazer o ajuste fino do GPT 3.5: Liberando todo o potencial da IA

Explore o GPT-3.5 Turbo e descubra o potencial transformador do ajuste fino. Saiba como personalizar esse modelo de linguagem avançado para aplicativos de nicho, aprimorar seu desempenho e entender os custos associados, a segurança e as considerações de privacidade.
Moez Ali's photo

Moez Ali

11 min

Ver maisVer mais