LAB 33 · Engenharia de Dados

Pipelines incrementais em escala.

Processe só o que mudou, com checkpoints, partições Parquet e verificação por replay.

PythonDuckDBPyArrowSQLite
57 páginas em português 4–5 h de estudo e prática
EBOOK + REPOSITÓRIOR$ 49,00
Pagamento viaHotmart
Comprar agora

Depois da compra, o repositório do Lab é enviado por e-mail e WhatsApp para o cadastro feito na Hotmart.

Antes de começarPython e SQL intermediários, terminal e noção de Parquet.

UM LAB. UM PROJETO COMPLETO.
DO CONCEITO À EXECUÇÃO

É isso que você
vai construir.

Processe só o que mudou, com checkpoints, partições Parquet e verificação por replay.

Você trata duplicatas e eventos atrasados, atualiza apenas as partições afetadas e grava o progresso com segurança. A verificação compara a execução incremental com uma reconstrução completa.

O incpipe: uma fonte simulada com duplicatas, eventos fora de ordem e atrasados; um pipeline que lê a partir de um checkpoint, agrupa por janela de uma hora, reescreve só as partições Parquet tocadas, faz o merge do estado dos pedidos por bucket, manda o que chegou tarde demais para a quarentena e só então grava o checkpoint; e uma verificação que prova que incremental dá o mesmo resultado que reconstruir do zero.

5 minpara o demo*
57páginas de conteúdo
17seções no ebook
*Estimativa do Lab. Preparação do ambiente e downloads podem acrescentar tempo.
DUAS PARTES. O MESMO PROJETO.

Um guia para entender.
Um projeto para fazer.

Leia, execute e volte ao trecho que precisar.
O ritmo é seu.

O ebook visual

57 páginas em português, com diagramas, decisões de implementação e exercícios nas seções práticas.

PDF · EDIÇÃO VISUAL

O repositório completo

Código, dados de exemplo, instruções de execução e 33 testes de unidade. Inclui o ambiente Docker do projeto.

Depois da compra, o repositório do Lab é enviado por e-mail e WhatsApp para o cadastro feito na Hotmart.

CÓDIGO · TESTES · DOCUMENTAÇÃO
O CAMINHO DO LAB

Saiba onde
você vai chegar.

17 seções para acompanhar o projeto, do ambiente aos próximos passos.

Edição visual · 57 páginas
  1. 01Introdução

    Conheça um pipeline incremental que recebe duplicatas, atrasos e eventos fora de ordem. Veja como checkpoints, arquivos e reprocessamento se combinam para permitir retomadas verificáveis.

  2. 02Ambiente Python

    Prepare o ambiente Python e rode o demo completo. Inspecione os bancos e arquivos gerados para reconhecer fonte, estado do pipeline e datasets de saída.

  3. 03Requirements explicados

    Entenda DuckDB no processamento SQL, PyArrow no transporte dos dados e Parquet no armazenamento. Veja por que o laboratório mantém os arquivos como fonte dos datasets.

  4. 04O mapa do sistema

    Separe responsabilidades da fonte, do banco de estado e do lake em arquivos. Acompanhe uma execução para entender quem escreve cada informação e quando ela se torna confirmada.

  5. 05Por que incremental é difícil

    Compare formas de identificar dados novos e diferencie tempo do evento e da chegada. Entenda janelas, marca d'água, tolerância a atraso e idempotência.

  6. 06A fonte: gerar eventos de exemplo

    Gere eventos de pedidos com cursor sequencial, duplicatas e atrasos intencionais. Use uma fonte determinística para testar situações que uma carga incremental precisa tratar.

  7. 07Modelar estado e checkpoints

    Persista checkpoints, execuções e registros do pipeline em um banco separado da fonte. Entenda o momento do commit e como o cursor determina de onde retomar a leitura.

  8. 08Processar por janelas

    Agrupe eventos por hora e classifique atrasos usando a marca d'água. Reescreva as janelas afetadas e encaminhe eventos fora da tolerância para quarentena com o motivo.

  9. 09Salvar Parquet particionado

    Organize datasets em partições Parquet e examine a escrita atômica e os fingerprints. Gere métricas por janela e consulte os arquivos aproveitando filtros de partição.

  10. 10Merge: o estado atual de cada pedido

    Mantenha uma linha atual por pedido com merge em SQL. Distribua o snapshot em buckets para reescrever apenas os grupos afetados e lidar com eventos fora de ordem.

  11. 11Dados atrasados e reprocessamento

    Observe eventos novos alterando janelas já gravadas e compare suas versões. Experimente quarentena, reprocessamento de uma janela e reconstrução completa do lake.

  12. 12Testar a idempotência

    Injete uma falha entre a gravação dos arquivos e o checkpoint. Compare registros, arquivos e reconstrução para comprovar que a retomada mantém os resultados esperados.

  13. 13Rodar com Docker

    Empacote o pipeline em Docker e preserve os dados fora do container. Execute o demo e acompanhe o servidor de status com o pipeline em movimento.

  14. 14Troubleshooting

    Investigue ausência de dados novos, datasets ainda inexistentes e divergências nos arquivos. Use verificação, reprocessamento e reconstrução conforme o alcance do problema.

  15. 15Custos, limites e trade-offs

    Meça o custo de uma hora nova contra a reconstrução completa. Entenda as limitações do armazenamento local e quais partes da arquitetura precisariam mudar para produção.

  16. 16Próximos passos

    Explore uma fonte baseada em data de atualização, com sobreposição e deduplicação. Use medições e testes para avaliar novas estratégias de leitura sem perder eventos atrasados.

  17. 17Checklist final

    Confira cursor, checkpoints, janelas, partições e merge de pedidos. Verifique o tratamento de atrasos e a retomada após falhas com comparação dos resultados.

PARA COMEÇAR COM CLAREZA

Seu ponto
de partida.

Conhecimento prévio

Python e SQL intermediários, terminal e noção de Parquet. Nível: Python + SQL.

Ferramentas do projeto

Python, DuckDB, PyArrow, SQLite. As instruções de instalação e as versões estão no pacote.

Custo para executar

Zero. Sem cluster, sem serviço, sem conta. Roda em um notebook comum.

Tempo para aprender

4–5 h estimadas para ler, executar e entender. Você pode dividir o estudo em várias sessões.

LAB 33 · EBOOK + PROJETO

Seu próximo passo
pode ser construir.

R$ 49,00Comprar agora