1. Know your data. Get inspired!
Práticas DevOps aplicadas
a Big Data
2. Quem somos?
Alexandre Cardoso
• Cientista da Computação, pós-graduado em Big Data
• +20 anos fazendo software
• Últimos 7 anos dedicados ao Big Data
• CEO & founder da Datenworks
Gustavo Biondo
• Engenheiro da Computação
• +5 anos de xp Cloud e DevOps
• 6 meses focado em Big Data
• Líder de Operações e Sócio da Datenworks
3. Agenda
● Arquiteturas de Big Data
○ Organização para reutilização
○ Terraform & Terragrunt
● Acelerando o Time to Market
○ CI/CD para Big Data
● Monitoramento
○ Centralização de Logs & Métricas
○ Dashboards
○ Alarmes
4. Big Data – Do que estamos falando?
5 V's do
Big Data
VOLUME
VARIEDADE
VERACIDADE
VALOR
VELOCIDADE
● [Muitos] terabytes
● Transações
● Tabelas
● Arquivos
● Estruturado
● Não-estruturado
● Multi-fator
● Probabilístico
● Fidedigno
● Autêntico
● Disponível
● Não-repúdio
● Verificável
● Estatística
● Insights
● Correlações
● Hipóteses
● Batch
● Near/realtime
● Processos
● Streaming
5. Big Data em (alguns) números - 2020
➔ $189,1 bilhões - Receita projetada mundial com soluções de Big Data Analytics em 2019 [1]
➔ Em 2020, teremos gerado aproximadamente 40 trilhões de gigabytes de dados [2]
➔ $274.3 bilhões - Receita projetada mundial com soluções de Big Data Analytics em 2022 [1]
➔ Usuários na internet deverão gerar aproximadamente 2.5 quintilhões de bytes todos os dias [2]
➔ Usando Big Data, Netflix economiza $1 bilhão por ano em retenção de clientes [1]
➔ 8-10% de aumento no lucro em negócios que utilizam Big Data [1]
[1] https://financesonline.com/big-data-statistics
[2] https://techjury.net/blog/big-data-statistics
6. Como erguer um Big Data?
Data Sources
Fault Tolerance / Elasticity / High Availability
Metadata Data Quality Data Catalog Security
Ingestion Tier
[Near] Real-time
Batch
Data Tier
Raw Data Refined Data
Trusted Data
Processing Analysis
Ad-hoc query
API calls
Visualization
Events
Knowledge Tier Consumers
BI Tools
People
Companies &
Partners
7. Qual é o desafio?
➔ Implantação manual? Sem chance!
➔ Como garantir estado
(esperado/realizado)?
➔ Gerenciar configuração em escala?
➔ Implantar continuamente com
confiança e sem regressão?
➔ Como monitorar e "dormir em paz"?
➔ Como medir e antecipar problemas?
8. Terraform & Terragrunt
● Infraestrutura como código
● HCL
● Diminuir a repetição de código
● Organização e padronização
17. E o Monitoramento?
Usuários & Aplicações
Processos
OS
Load Balancer
Batch job App Server Web Server
Database Services
CPU Memory Disk Network
Sistema de
Monitoramento
UI
Estrutura Monolítica
18. E o Monitoramento?
Estrutura Distribuída / Assíncrona?
Database
CDC engine
Queue
ETL process
Object store
Massive Parallel
Processing Lakehouse
Visualization
😱
19. Afinal, o que é "monitorar"?
➔ Monitorar
◆ Coletar, processar, agregar e exibir dados quantitativos e descritivos sobre um sistema e seu
comportamento
➔ Caixa-branca
◆ Obter dados a partir dos internals de um determinado sistema ou componente, como logs,
métricas JMX, memory dump, etc.
➔ Caixa-preta
◆ Observar e analisar o comportamento de um sistema do ponto de vista do usuário, a partir de
indicadores mensuráveis (tempo de resposta, taxa de erros, etc)
➔ Dashboard
◆ Um painel para acompanhamento visual de indicadores principais de um sistema/aplicação
20. Como centralizar e analisar tudo isso?
● Bom e velho ELK!!
● Beats vs Logstash
● Serviços coletando métricas/logs de serviços