Robson Motta | robson@chaordic.com.br
Big Data e MapReduce
Admirável mundo novo
Mais de
200 milhões
page views mensais
116 milhões
de pedidos
3 bilhões
de visitas
em produtos
700 milhões
de recomendações
geradas diariamente
Como
armazenar?
Como
processar?
Como
visualizar?
Como
monitorar?
Sumário
• A Chaordic
• Chaordic + Big Data + Cloud
• Dos eventos às recomendações
• A vida não é bela: surgem os desafios
• Visualizando e monitorando
• Futuro?
+
Como tudo começou
Como fazemos
Como
fazemos?
+
• Volume
• Velocidade
• Variedade
quantidade
de dados
tempo de
processamento
2010
16 M
eventos 3 dias
quantidade
de dados
tempo de
processamento
2010 2014
16 M
eventos
4500 M
eventos3 dias
quantidade
de dados
tempo de
processamento
2010 2014
16 M
eventos
4500 M
eventos3 dias 7 horas
Arquitetura
Onsite
DashboardEngine
Mail
Platform
Como
armazenar?
Node 1
Node 3
Node 2Node...
"Batch" Cassandra Cluster
Availability Zone - 2
Node 1
Node 3
Node 2Node...
"Online" Cassandra Cluster
Availability Zone - 1
Online Service Tier Batch Service Tier
Como
processar?
MapReduce
Um novo paradigma
que permite e facilita
a implementação de
algoritmos distribuídos
Data
Robson Motta
Raul Seixas
Ed Motta
Reginaldo Rossi
Nelson Mandela
Valentino Rossi
Map
Motta, 1
Seixas, 1
Motta, 1
Rossi, 1
Mandela, 1
Rossi, 1
Mandela, (1)
Motta, (1, 1)
Rossi, (1, 1)
Seixas, (1)
Reduce
Mandela, (1)
Motta, (1, 1)
Rossi, (1, 1)
Seixas, (1)
Mandela, 1
Motta, 2
Rossi, 2
Seixas, 1
Como
processar?
Data
A - B
Cadeira - D
Cadeira - E
Cadeira - E
F - A
Map
A, (B, F)
B, (A)
Cadeira, (D, E, E)
D, (Cadeira)
E, (Cadeira,Cadeira)
F, (A)
Reduce
A, [B, F]
B, [A]
Cadeira, [E, D]
D, [Cadeira]
E, [Cadeira]
F, [A]
Como
processar?
Hadoop: HDFS e Hadoop MapReduce
• Escalável
• Custo reduzido
• Flexível
• Tolerante a falha
Como
processar?
Engine
3
Como
processar?
Engine
Core
Platform
EC2 + EMR
S3
Uploader
5
64
2
1
recomendações
eventos
recomendações
eventos
pré
processamento
processamento
pós
processamento
● produtos vistos
● cliques
● pedidos
etc.
• Itens muito populares
• Eventos inesperados
• Clientes diferentes
• Sazonalidade
• Ausência de eventos
Desafios
Desafios
Desafios
R$ 270,81
Usuário entrou
na página para
comprar a boneca...
...e sugerimos que ele
levasse junto um pneu
Compras
conjuntas?
Desafios
+
Compras
conjuntas?
Desafios
+
31
Dados
consistentes?
Desafios
+
Dados
consistentes?
Desafios
+
Bot gerando
eventos?
Desafios
+
Bot gerando
eventos?
Desafios
+
Kit da
própria loja?
Desafios
+
Desafios
+
Kit da
própria loja?
Destaques
simultâneos?
Desafios
+
Reduziram
de preço?
Desafios
+
Reduziram
de preço?
Desafios
+
...só o pneu
Quando
reduziu?
Desafios
+
Quando
reduziu?
Desafios
+
Conclusão...
Desafios
+
Promoção de pneu
no dia das crianças
Desafios
+
Visualizando
e monitorando
Visualizar
e monitorar
• Consultas em bases não relacionais
• Acompanhamento de desempenho
• Visualização de logs
• Acompanhamento de custos
Visualizar
KINESIS STORM
Real Time Big Data Processing
Futuro
SHARK
In Memory Big Data Processing
Futuro
Robson Motta
robson@chaordic.com.br
/chaordic.com.br

Chaordic - BigData e MapReduce - Robson Motta