e odiei; • Formei em engenharia mecatrônica (promissor); • Acabei virando cientista (criminoso), analista de dados até me encontrar como Engenheiro; • Passei pela Gamers Club, Gympass, idwall e hoje trabalho como Team Lead SR Data Engineer na 90PoE; • No pessoal: Tenho dois gatos: Vorti e Ciri. Gosto de viajar, samba, cerâmica, bebidas alcoólicas, fotografia analógica e sou ex-viciado em jogos competitivos.
performance; ◦ tudo que resta é dor, pois afeta diretamente outros sistemas produtivos • colocar uma réplica asíncrona e exclusivamente para a ponta de reporting ◦ essa não é tão ruim (mas depende) • recomeçar com uma alternativa sustentável do início.
≠ aplicação); • Pode-se criar diferentes scripts para ingerir de diferentes fontes; • Flexibilidade para construir tabelas que sejam otimizadas para análise de negócio e não para transações O que ganhamos:
• Latência de query não é um problema; ◦ Uma query analítica não tem percepção de diferença de alguns milisegundos para poucos segundos; • Muitos dados :(: ◦ Arquivos podem usar compressão! ( - custo, - network) Características:
Doe, 27 ; 3, John Doe, 32 Linha (localidade para cada registro) 1, 2, 3 ; Gordon Freeman, Jane Doe, John Doe ; 27, 27, 32 Colunar (localidade para cada coluna)
colunas utilizadas Se cada tabela ter 20 colunas, isso significa que polpamos o scan de 18 + 17 (35) colunas na operação. *essa query pode ser melhorada ;)
da nossa pipeline; • Flexibilidade para processar fontes diferentes; • Armazenamento com alta disponibilidade e baixo custo para o alto volume de dados; • Parquets dão eficiência em compressão e performance de leitura; • Nosso motor de query (Trino) pode escalar para picos de uso durante o dia; Em suma:
"Modern Lake tools" que combinam parquet + metadata para dar suporte nisso; • Muitas "partes móveis" que dificultam desenvolvimento, teste e monitoramento; • Dilemas em controlar acesso (ACL); • Complexidade. Mas também perdemos:
hora dia mês dia da semana Airflow define ordem de execução, horários, mantém variáveis e secrets bem como invoca código, containers, pods e o que mais precisar;
Uma stack de cloud (AWS/GCS/Azure); • Bash; • Docker; • Entender e saber do funcionamento de alguns bancos de dados; • Apache Spark. Legal ter: Airflow, Kubernetes, Terraform, Monitoria, Kafka, boas noções de deployment, CI/CD etc;