1. BIG DATA:
Do Conceito à Prática
http://Checchia.NET
Daniel Checchia
Consultor de Tecnologia
daniel@checchia.net
2. Daniel Checchia…. Quem??
• +30 anos em Tecnologia
• Passagem por todos os grandes e-Commerce nacionais
(americanas.com, shoptime.com, submarino.com, pontofrio.com),
empresas de internet (imovelweb.com, zap.com.br) e startups
(psafe.com, sitepx.com).
• Especializado em Arquitetura Corporativa, Infraestrutura, segurança
e Cloud Computing.
• “T-Rex” evoluído
2
3. O que eu faço….
Planejamento Estratégico TI
Arquitetura Corporativa de TI
Consultoria Estratégica
Mentoring para Startups
CTO Virtual ou On Demand
Hands on
Lavo
Passo
Cozinho....
3
4. Big data é como sexo no colegial: “Ninguém faz, mas todo
mundo diz que faz. Então todos pensam que alguém está
fazendo e dizem que fazem também”
Jay Kidd, CTO da NetApp
4
5. Alguns Projetos BigData
[2011] Psafe.com (Lockbox):
• 480 Servidores (64Gb RAM, 32Tb SATA)
• Distribuídos em 3 DCs
• 16 Racks por DC
• 10 Servidores por Rack
• Hadoop HDFS
[2013] SitePX (ElasticSearch):
• +5.000.000 Documentos
• Distribuídos em 10 instâncias AWS (Auto-Scalling)
• Resultados de busca em 0.4 Segundos
5
7. Os 5 'Vs' do Big Data
• Volume (volume)
• Velocidade (velocity)
• Variedade (variety)
• Veracidade (veracity)
• Valor (value)
7
8. Premissas para BigData
• Lidar com volumes extremamente grandes de dados
• Mais variados tipos
• Distribuição de processamento
• Elasticidade
• Escalabilidade
8
9. Bancos Relacionais (ACID)
• Atomicidade: toda transação deve ser atômica, isto é, só pode ser
considerada efetivada se executada completamente;
• Consistência: todas as regras aplicadas ao banco de dados devem
ser seguidas;
• Isolamento: nenhuma transação pode interferir em outra que esteja
em andamento ao mesmo tempo;
• Durabilidade: uma vez que a transação esteja concluída, os dados
consequentes não podem ser perdidos.
Problema: Muito restritivo para uma solução de Big
Data. A elasticidade, por exemplo, pode ser
inviabilizada pela atomicidade e pela consistência.
9
10. Categorias NoSQL
• Orientado a documentos (MongoDB, CouchDB)
• Bancos de dados chave/valor (DynamoDB, Redis)
• Bancos de dados de grafos (Neo4j)
• Etc
10
12. Hadoop
• Mantido pela Apache Foundation
• Open Source
• Desenvolvido para Processamento e análise de grandes volumes
de Dados
• Maiores Colaboradores:
•
Facebook
•
Google
•
Yahoo!
•
IBM
12
19. Sobre o Splunk
O Splunk é um mecanismo para os dados de máquina. Ele
coleta, indexa e aproveita os dados de máquina gerados
por todos os seus sistemas e infraestrutura de TI, sejam
eles físicos, virtuais ou em nuvem.
19
20. Logstash
• O Logstash é um sistema para gerenciamento e
agregação de logs.
• Com ele, podemos coletar logs, aplicar filtros e
tratar as mensagens e armazenar para uso
posterior, como visualização, estatística e
alertas.
• Você consegue agregar logs de diferentes
máquinas e aplicações em um ponto central e
ver diversas informações relacionadas através
de uma interface Web.
20
21. ElasticSearch
•
Servidor de buscas distribuído
•
Baseado em REST
•
Open Source
•
Baseado no Apache Lucene
•
Programado em Java (1 Jar)
•
Pode manter sua base local e Distribuída
ou armazenar no Hadoop (Nosso Caso)
21
22. Kibana
•
Kibana é um frontend HTML / JS
•
Desenvolvido para criação de dashboards
para seus dados
•
Integração total com Logstash, Apache
Flume, Fluentd e outros
•
Análise em tempo real do fluxo de dados
•
Altamente escalável
22