Automação de Processamento de Dados

Automatize o processamento com MWAA, automação de consultas Athena, DataBrew e agendamento de EventBridge.

Uma das partes mais difíceis de executar pipelines de dados é gerenciar o trabalho repetitivo. Processar os dados de vendas do dia anterior toda manhã às 8h, executar transformações toda vez que um novo arquivo chega ao S3, gerar relatórios semanais — nada disso pode ser feito manualmente em escala. Automação significa fazer os sistemas realizarem esse trabalho em seu lugar. As questões do exame DEA-C01 sobre automação perguntam qual tipo de gatilho (baseado em tempo ou em eventos) usar e quais serviços combinar.

 

Automação baseada em tempo — Executar conforme um cronograma

A forma mais intuitiva de automação é "executar isso em um horário específico", como um alarme recorrente para seu pipeline de dados.

EventBridge Scheduler: O recurso de agendamento do AWS EventBridge. Use expressões cron para horários precisos ou expressões rate para intervalos. Por exemplo, executa todos os dias às 8h. Os destinos incluem funções Lambda, máquinas de estado do Step Functions, jobs do Glue, filas SQS e mais.

MWAA (Amazon Managed Workflows for Apache Airflow): O Apache Airflow é uma ferramenta de orquestração de fluxo de trabalho de código aberto. Você escreve DAGs (Grafos Acíclicos Dirigidos) em Python para definir dependências entre tarefas. O MWAA é a versão totalmente gerenciada do Airflow na AWS — sem instalação ou manutenção de servidor necessária.

Quando o MWAA é a escolha certa: Pipelines complexos de múltiplas etapas (extrair → transformar → validar → carregar) Tarefas com dependências intrincadas entre elas Pipelines que precisam de lógica de nova tentativa em caso de falha Equipes que já usam o Airflow e querem migrar DAGs existentes

EventBridge Scheduler vs MWAA:

| Aspecto | EventBridge Scheduler | MWAA | |---------|----------------------|------| | Complexidade | Simples | DAGs complexos suportados | | Gerenciamento | Totalmente serverless | Ambiente de servidor gerenciado | | Melhor para | Agendamento de job único | Fluxos de trabalho de múltiplas etapas | | Modelo de custo | Por evento | Por tempo de execução do ambiente |

 

Automação baseada em eventos — Executar quando algo acontece

Em vez de um cronograma, o processamento começa automaticamente quando um evento específico ocorre.

S3 Event → Lambda: No momento em que um arquivo é carregado em um bucket S3, uma função Lambda é acionada automaticamente. Por exemplo, quando um arquivo CSV chega, o Lambda pode lê-lo, validar os dados e gravar apenas registros válidos no DynamoDB — tudo sem envolvimento humano. Configure isso nas configurações de Notificações de Eventos do bucket S3 apontando para um destino Lambda.

DynamoDB Streams → Lambda: Sempre que um item da tabela DynamoDB é inserido, atualizado ou excluído, a alteração é gravada no DynamoDB Streams. O Lambda verifica o stream e processa cada evento de alteração. Usos comuns: enviar uma notificação quando o status de um pedido muda para "Entregue", ou atualizar uma tabela de resumo sempre que novos registros chegam.

Vantagens dos padrões orientados a eventos: Sem espera ociosa: o processamento começa no instante em que os dados chegam Custo zero quando não há dados para processar A taxa de transferência escala automaticamente com o volume de eventos

 

Automação de consultas Athena

O Athena é um serviço serverless para analisar dados do S3 com SQL. Essas consultas também podem ser automatizadas.

StartQueryExecution API: O método do SDK da AWS para o Athena. De dentro de uma função Lambda ou um job do Glue, você pode acionar uma consulta Athena em código. Após iniciar a consulta, use para verificar a conclusão e para recuperar os resultados.

Athena Notebooks: Um ambiente de notebook interativo alimentado pelo Apache Spark. Combine SQL e Python (PySpark) para fazer análise exploratória e transformações complexas de forma interativa, sem gerenciar nenhuma infraestrutura.

CTAS (Create Table As Select): Crie uma nova tabela a partir dos resultados de uma consulta Athena. Pré-agregar consultas caras e armazenar os resultados como tabela Parquet reduz drasticamente o custo e a latência das consultas subsequentes.

 

DataBrew — Preparação de dados sem código

O AWS Glue DataBrew é uma ferramenta visual de preparação de dados. Não desenvolvedores podem limpar e transformar dados clicando em uma interface semelhante a uma planilha — sem necessidade de código.

Recursos principais:

Mais de 250 transformações integradas: Padronizar formatos de data, preencher valores ausentes, remover duplicatas, normalizar texto, dividir colunas, mesclar colunas e mais — tudo por apontar e clicar. Criação de perfil de dados: O DataBrew analisa automaticamente um conjunto de dados e calcula estatísticas no nível de coluna (média, mín/máx, taxa de ausência, contagem de valores únicos). Isso oferece uma visão rápida dos problemas de qualidade de dados antes de começar a limpar. Receitas: Cada etapa de transformação que você aplica é registrada como uma receita. Salve a receita e aplique-a a um conjunto de dados diferente, ou agende-a para executar automaticamente de forma recorrente. Regras de qualidade: Defina regras que os dados devem satisfazer. Por exemplo, "a coluna de idade deve estar entre 0 e 150." O DataBrew sinaliza ou separa automaticamente os registros que violam as regras.

Quando usar o DataBrew: Analistas de negócios sem habilidades em SQL ou Python precisam limpar dados O trabalho repetitivo de limpeza de dados precisa ser padronizado em uma receita reutilizável Você quer entender visualmente os problemas de qualidade de dados antes de escrever código de transformação

 

Automação baseada em SDK — Boto3

O Boto3 é o SDK Python para AWS. Quase todos os serviços AWS podem ser controlados por código Boto3. Use-o quando quiser automatizar um pipeline completamente em código.

Padrões comumente usados: Iniciar um job do Glue: Copiar um arquivo S3: Executar uma consulta Athena: Ler um item DynamoDB:

Combinar o Boto3 com o Lambda permite responder a cronogramas do EventBridge ou eventos S3 e executar lógica de pipeline complexa com controle programático total.

 

Pontos-chave do exame

"Executar um job único em um horário agendado" → EventBridge Scheduler "Agendar um fluxo de trabalho complexo de múltiplas etapas" → MWAA (Apache Airflow) "Processar automaticamente dados quando um arquivo chega ao S3" → S3 Event → Lambda "Reagir automaticamente a mudanças no DynamoDB" → DynamoDB Streams → Lambda "Executar consultas Athena a partir de código" → StartQueryExecution API "Salvar resultados de consultas Athena como nova tabela" → CTAS "Limpar dados sem escrever código" → DataBrew "Salvar e reutilizar etapas de transformação do DataBrew" → Recipe "Controlar serviços AWS com Python" → Boto3

Voltar à lista do blog