CDS, 25/10/2011
Logs,
Monitoramento e
Estatísticas
Uma abordagem sobre
ferramentas
CDS, 25/10/2011
Motivação
2011: dados gerados
no mundo ultrapassou
1.8 ZB = 1.8 trilhão GB
2011: dados gerados
no mundo ul...
CDS, 25/10/2011
Motivação
CDS, 25/10/2011
Motivação
CDS, 25/10/2011
O que é Big Data?
GrandeGrande
ComplexoComplexo
Não-estruturadoNão-estruturado
CDS, 25/10/2011
Motivação
“Empresas devem aprender rapidamente o quão
importante é lidar com big data, pois o volume de
da...
CDS, 25/10/2011
Objetivo
Como lidar com grandes
quantidades de LOGS?
Como lidar com grandes
quantidades de LOGS?
Como MONI...
CDS, 25/10/2011
Outline
CDS, 25/10/2011
Hadoop: ficha técnica
2003 2004 2005 2006 2008
GFS(GoogleFile
System)
Nutch(websearchengine
–partedoLucene...
CDS, 25/10/2011
NYT: menos de 24h para
converter para PDF 4TB
de arquivos scaneados
utilizando 100 máquinas de
Hadoop
Face...
CDS, 25/10/2011
Hadoop powered by
CDS, 25/10/2011
Hadoop tecnicamente...
• Java
• Open Source
• Projeto top level da Apache
• Commiters: Yahoo! e Cloudera
•...
CDS, 25/10/2011
O que é Hadoop?
CDS, 25/10/2011
O que é Hadoop?
O software Apache Hadoop é um framework que
permite o processamento distribuído de grande
...
CDS, 25/10/2011
O que é Hadoop?
= +
armazenamento processamento
Um sistema de ARMAZENAMENTO e PROCESSAMENTO de dadosUm sis...
CDS, 25/10/2011
HDFS
Hadoop
Distributed
File
System
[fabiola-laptop ~]$ hadoop dfs –mkdir /ctbc
[fabiola-laptop ~]$ hadoop...
CDS, 25/10/2011
HDFS: como funciona?
A partida em Donetsk foi
a última de Cristiano
Ronaldo na temporada
2011/2012. Agora,...
CDS, 25/10/2011
HDFS: como funciona?
A partida em Donetsk foi
a última de Cristiano
Ronaldo na temporada
2011/2012. Agora,...
CDS, 25/10/2011
HDFS: como funciona?
HDFS manterá 3 cópias de cada bloco
A partida em Donetsk foi a
última de Cristiano
Ro...
CDS, 25/10/2011
HDFS: como funciona?
HDFS armazena esses blocos em datanodes
A partida em Donetsk foi
a última de Cristian...
CDS, 25/10/2011
HDFS: como funciona?
HDFS distribui os blocos aos datanodes
CDS, 25/10/2011
HDFS: como funciona?
Namenode controla blocos e datanodes
DN1, DN4, DN7
DN4, DN5, DN6
DN3, DN5, DN8
Nameno...
CDS, 25/10/2011
HDFS: como funciona?
Algum dia um datanode cairá… não é um problema
DN1, DN4, DN7
DN4, DN5, DN6
DN3, DN5, ...
CDS, 25/10/2011
HDFS: como funciona?
Namenode dirá aos DNs para copiar os blocos, voltando a 3x
DN1, DN4, DN7
DN4, DN5, DN...
CDS, 25/10/2011
HDFS: como funciona?
Namenode
• Namenode é o único ponto de falha (SPOF)
• Backupnode = manual failover
• ...
CDS, 25/10/2011
Relembrando…
= +
armazenamento processamento
Um sistema de ARMAZENAMENTO e PROCESSAMENTO de dadosUm sistem...
CDS, 25/10/2011
Map Reduce
CDS, 25/10/2011
Map Reduce
Pense em termos de <chave, valor>…
<byte offset, texto>
<user, perfil do usuário>
<timestamp, a...
CDS, 25/10/2011
Map Reduce
Para escrever um programa Map-Reduce:
1. Escreva um mapeamento que, dada uma
<chave,valor>, ger...
CDS, 25/10/2011
Map Reduce: como funciona?
Para escrever um programa Map-Reduce:
1. Escreva um mapeamento que, dada uma
<c...
CDS, 25/10/2011
Map Reduce: como funciona?
Exemplificando:
Contador de Palavras (word count)
CDS, 25/10/2011
Map Reduce: como funciona?
<0, “Four score and five years ago our fathers brought”>
words = value.split(“ ...
CDS, 25/10/2011
Tasktracker
Map Reduce: como funciona?
<0, “Four score and five years ago our fathers brought”>
words = va...
CDS, 25/10/2011
Tasktracker
Map Reduce: como funciona?
Datanode
Tasktracker
Datanode
Tasktracker
Datanode
Tasktracker
Data...
CDS, 25/10/2011
Map Reduce: como funciona?
<Four, 1><score, 1><and, 1><five, 1><years, 1><ago, 1><our, 1><fathers,
><broug...
CDS, 25/10/2011
Map Reduce: como funciona?
<Four, [1, 1, 1]>
<and, [1, 1, 1, 1, 1]>
<fathers, [1]>
<score, [1]>
<is, [1, 1...
CDS, 25/10/2011
Map Reduce: como funciona?
<Four, 3>
<and, 5>
<fathers, 1>
<score, 1>
<is, 5 >
…
Reduz
word = key
ones = v...
CDS, 25/10/2011
Hadoop pra quê?
Quando usar Quando não usar
Busca Poucos dados
Processamento de logs Transações complexas
...
CDS, 25/10/2011
Resumindo
Scalability Cost-effective
Flexibility
Faul tolerant
CDS, 25/10/2011
Ecossistema Hadoop et. al.
CDS, 25/10/2011
Discussão
Hadoop é um banco de dados?Hadoop é um banco de dados?
Não. Hadoop não é um SGBD. É um sistema p...
CDS, 25/10/2011
Discussão
Hadoop é um banco de dados?Hadoop é um banco de dados?
Atenção: quando utilizar um SGBDR ou Hado...
CDS, 25/10/2011
Estudo de Caso
no
CDS, 25/10/2011
Estudo de Caso: Facebook
http://borthakur.com/ftp/hadoopmicrosoft.pdf
CDS, 25/10/2011
Estudo de Caso: Facebook
• Logging
• Analytics e machine learning
• 2 clusters principais
• 1100 máquinas,...
CDS, 25/10/2011
Estudo de Caso: Facebook
CDS, 25/10/2011
Estudo de Caso
no
CDS, 25/10/2011
Estudo de Caso: Coreo
HDFS
Web DAV
Portal WS
CDS, 25/10/2011
Estudo de Caso: Coreo
• Logging
• Apenas HDFS (por enquanto…)
• 1 cluster
• 3 máquinas
• fator de replicaç...
CDS, 25/10/2011
Estudo de Caso: CDS
OSS/BSS?
DW?
OCS?
V4?
Smarts?
CDS, 25/10/2011
Big Data
CDS, 25/10/2011
Big Data
CDS, 25/10/2011
Big Data
CDS, 25/10/2011
Hadoop powered by
CDS, 25/10/2011
Outline
CDS, 25/10/2011
Cassandra: o que é?
Cassandra é um sistema distribuído de
armazenamento para GERENCIAR grande quantidade
d...
CDS, 25/10/2011
Cassandra: o que é?
Cassandra é um sistema distribuído de
armazenamento para GERENCIAR grande quantidade
d...
CDS, 25/10/2011
Cassandra: o que é?
Descentralizado
Tolerante a falhas
Modelo de dados <key,value>
Durável
Escalável
Criad...
CDS, 25/10/2011
Cassandra: como funciona?
Escrita
CDS, 25/10/2011
Cassandra: como funciona?
Query
Closest replica
Cassandra Cluster
Replica A
Result
Replica B Replica C
Dig...
CDS, 25/10/2011
Cassandra: modelo de dados
CDS, 25/10/2011
Cassandra: modelo de dados
Uma única coluna
CDS, 25/10/2011
Cassandra: modelo de dados
Uma única linha
CDS, 25/10/2011
Cassandra: modelo de dados
Difícil encontrar
SW para
modelagem
CDS, 25/10/2011
Cassandra: query
no-SQL = CQL = Cassandra Query Language
API Hector
SELECT, UPDATE, DELETE, CREATE COLUMN ...
CDS, 25/10/2011
Cassandra: quando usar?
Big data
Muitos requests
Alta performance (memória)
Analise seu modelo de dados!
CDS, 25/10/2011
Cassandra no Coreo
AppEngine
Controle
EventHandler
Scheduler
Identity Server Componente de BD
CDS, 25/10/2011
Cassandra: discussão
X
CDS, 25/10/2011
Cassandra: discussão
+
CDS, 25/10/2011
Outline
CDS, 25/10/2011
Scribe
Servidor de agregação de streams de logs em tempo
real.
CDS, 25/10/2011
Scribe
• Criado pelo Facebook
• Escrito em C++
• ( + ) Utiliza thrift para comunicação
• ( + ) Escalável
•...
CDS, 25/10/2011
Scribe: como funciona?
CDS, 25/10/2011
Scribe no Coreo
Logs são divididos em categorias do tipo:
1)ESB
esb1
esb2
1)BAM
bam1
bam2
1)SCE
cocreation...
CDS, 25/10/2011
Scribe no Coreo
CDS, 25/10/2011
Scribe no Coreo
CDS, 25/10/2011
Logging no CDS
Syslog?
Splunk?
CDS, 25/10/2011
Outline
CDS, 25/10/2011
WSO2 BAM
Business
Activity
Monitor
CDS, 25/10/2011
WSO2 BAM
CDS, 25/10/2011
WSO2 BAM
• Utiliza SGBDR (Oracle no Coreo)
• Monitora ESB e Application Server
• Obtém dados do tipo:
• Nu...
CDS, 25/10/2011
WSO2 BAM
CDS, 25/10/2011
WSO2 BAM
• Solução corporativa
• ( - ) Pouca documentação
• ( - ) Baixo desempenho (para aplicações de Int...
CDS, 25/10/2011
WSO2 BAM no Coreo
AppEngine
Componentes
Aplicações,
WS externos (broker) e
Proxies, Sequences e
Endpoints ...
CDS, 25/10/2011
WSO2 BAM no Coreo
Aplicações top do mês
Aplicações mais populares
Número de erros de uma aplicação
Número ...
CDS, 25/10/2011
WSO2 BAM: Futuro
Cassandra
Thrift
REST
Escalabilidade horizontal
Apache Hive
Cassandra
Google Gadgets
CDS, 25/10/2011
Outline
CDS, 25/10/2011
SDR
Service
Detail
Record
Registro da execução de um componente ou aplicaçãoRegistro da execução de um com...
CDS, 25/10/2011
SDR
Registro da execução de um componente ou aplicaçãoRegistro da execução de um componente ou aplicação
CDS, 25/10/2011
SDR
Kaha Persistence
Server standalone
API (cocreation-
log)
CDS, 25/10/2011
Outline
CDS, 25/10/2011
Logs, Monitoramento e
Estatísticas
SDRSDR
Estatísticas e
Monitoramento
Estatísticas e
Monitoramento
Centra...
CDS, 25/10/2011
Outline
CDS, 25/10/2011
Futuro para o Coreo...
SDRSDR
Estatísticas e
Monitoramento
Estatísticas e
Monitoramento
Centralização de l...
CDS, 25/10/2011
Conclusão
Atenção para o que está acontecendo no mundo… :)Atenção para o que está acontecendo no mundo… :)...
CDS, 25/10/2011
Dúvidas??Dúvidas??
Próximos SlideShares
Carregando em…5
×

Logs, Monitoramento e Estatísticas - Uma Abordagem sobre Ferramentas

1.285 visualizações

Publicada em

Ferramentas para logs, monitoramento e estatísticas

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
1.285
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
24
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Logs, Monitoramento e Estatísticas - Uma Abordagem sobre Ferramentas

  1. 1. CDS, 25/10/2011 Logs, Monitoramento e Estatísticas Uma abordagem sobre ferramentas
  2. 2. CDS, 25/10/2011 Motivação 2011: dados gerados no mundo ultrapassou 1.8 ZB = 1.8 trilhão GB 2011: dados gerados no mundo ultrapassou 1.8 ZB = 1.8 trilhão GB A quantidade de dadosdo mundo está maisque dobrando a cadadois anos! A quantidade de dadosdo mundo está maisque dobrando a cadadois anos! Fonte: Extracting Value from Chaos, 2011 Estatística cresce mais rápido que a Lei de Moore! Estatística cresce mais rápido que a Lei de Moore!
  3. 3. CDS, 25/10/2011 Motivação
  4. 4. CDS, 25/10/2011 Motivação
  5. 5. CDS, 25/10/2011 O que é Big Data? GrandeGrande ComplexoComplexo Não-estruturadoNão-estruturado
  6. 6. CDS, 25/10/2011 Motivação “Empresas devem aprender rapidamente o quão importante é lidar com big data, pois o volume de dados gerados não dá nenhum sinal de desaceleração.” (Oracle Big Data white paper) “Os dados não são criados por relevância, eles se tornam relevantes!” (IBM Big Data white paper)
  7. 7. CDS, 25/10/2011 Objetivo Como lidar com grandes quantidades de LOGS? Como lidar com grandes quantidades de LOGS? Como MONITORAR informações? Como MONITORAR informações? Como obter ESTATÍSTICAS de grandes massas de dados? Como obter ESTATÍSTICAS de grandes massas de dados?
  8. 8. CDS, 25/10/2011 Outline
  9. 9. CDS, 25/10/2011 Hadoop: ficha técnica 2003 2004 2005 2006 2008 GFS(GoogleFile System) Nutch(websearchengine –partedoLucene)-NDFS MapReduce NDFS +MapReduce Apacheproject: HADOOP
  10. 10. CDS, 25/10/2011 NYT: menos de 24h para converter para PDF 4TB de arquivos scaneados utilizando 100 máquinas de Hadoop Facebook possui omaior cluster deHadoop do mundo:30PB Yahoo! utiliza Hadoop para ordenar 1TB em 59s Hadoop: ficha técnica
  11. 11. CDS, 25/10/2011 Hadoop powered by
  12. 12. CDS, 25/10/2011 Hadoop tecnicamente... • Java • Open Source • Projeto top level da Apache • Commiters: Yahoo! e Cloudera • Plataformas com Hadoop: MapR, Hadapt, Cloudera…
  13. 13. CDS, 25/10/2011 O que é Hadoop?
  14. 14. CDS, 25/10/2011 O que é Hadoop? O software Apache Hadoop é um framework que permite o processamento distribuído de grande massa de dados armazenados em clusters, utilizando um modelo de programação simples. Um sistema de ARMAZENAMENTO e PROCESSAMENTO de dadosUm sistema de ARMAZENAMENTO e PROCESSAMENTO de dados
  15. 15. CDS, 25/10/2011 O que é Hadoop? = + armazenamento processamento Um sistema de ARMAZENAMENTO e PROCESSAMENTO de dadosUm sistema de ARMAZENAMENTO e PROCESSAMENTO de dados
  16. 16. CDS, 25/10/2011 HDFS Hadoop Distributed File System [fabiola-laptop ~]$ hadoop dfs –mkdir /ctbc [fabiola-laptop ~]$ hadoop dfs –copyFromLocal dados.txt /ctbc [fabiola-laptop ~]$ hadoop dfs –ls /ctbc Found 1 items -rw-r—r-- 3 fabiola fabiola 88 2012-06-27 19:12 /ctbc/dados.txt
  17. 17. CDS, 25/10/2011 HDFS: como funciona? A partida em Donetsk foi a última de Cristiano Ronaldo na temporada 2011/2012. Agora, o craque sai de férias garantindo estar feliz com o seu desempenho. Sinceramente, não penso em termos individuais. Ronaldo lamentou não ter podido fazer a sua cobrança na disputa de pênaltis, mas enalteceu o trabalho da seleção portuguesa na Eurocopa. Antes de deixar a Donbass Arena em sua última partida na Eurocopa 2012, 300 MB Dado um arquivo…
  18. 18. CDS, 25/10/2011 HDFS: como funciona? A partida em Donetsk foi a última de Cristiano Ronaldo na temporada 2011/2012. Agora, o craque sai de férias garantindo estar feliz com o seu desempenho. Sinceramente, não penso em termos individuais. Ronaldo lamentou não ter podido fazer a sua cobrança na disputa de pênaltis, mas enalteceu o trabalho da seleção portuguesa na Eurocopa. Antes de deixar a Donbass Arena em sua última partida na Eurocopa 2012, 128 MB HDFS divide em blocos 128 MB 44 MB
  19. 19. CDS, 25/10/2011 HDFS: como funciona? HDFS manterá 3 cópias de cada bloco A partida em Donetsk foi a última de Cristiano Ronaldo na temporada 2011/2012. Agora, o craque sai de férias garantindo estar feliz com o seu desempenho. Sinceramente, não penso em termos individuais. Ronaldo lamentou não ter podido fazer a sua cobrança na disputa de pênaltis, mas enalteceu o trabalho da seleção portuguesa na Eurocopa. Antes de deixar a Donbass Arena em sua última partida na Eurocopa 2012, A partida em Donetsk foi a última de Cristiano Ronaldo na temporada 2011/2012. Agora, o craque sai de férias garantindo estar feliz com o seu desempenho. A partida em Donetsk foi a última de Cristiano Ronaldo na temporada 2011/2012. Agora, o craque sai de férias garantindo estar feliz com o seu desempenho. Sinceramente, não penso em termos individuais. Ronaldo lamentou não ter podido fazer a sua cobrança na disputa de pênaltis, mas enalteceu o trabalho da seleção portuguesa na Eurocopa. Sinceramente, não penso em termos individuais. Ronaldo lamentou não ter podido fazer a sua cobrança na disputa de pênaltis, mas enalteceu o trabalho da seleção portuguesa na Eurocopa. Antes de deixar a Donbass Arena em sua última partida na Eurocopa 2012, Antes de deixar a Donbass Arena em sua última partida na Eurocopa 2012, x3 x3 x3
  20. 20. CDS, 25/10/2011 HDFS: como funciona? HDFS armazena esses blocos em datanodes A partida em Donetsk foi a última de Cristiano Ronaldo na temporada 2011/2012. Agora, o craque sai de férias garantindo estar feliz com o seu desempenho. A partida em Donetsk foi a última de Cristiano Ronaldo na temporada 2011/2012. Agora, o craque sai de férias garantindo estar feliz com o seu desempenho. A partida em Donetsk foi a última de Cristiano Ronaldo na temporada 2011/2012. Agora, o craque sai de férias garantindo estar feliz com o seu desempenho. A partida em Donetsk foi a última de Cristiano Ronaldo na temporada 2011/2012. Agora, o craque sai de férias garantindo estar feliz com o seu desempenho. A partida em Donetsk foi a última de Cristiano Ronaldo na temporada 2011/2012. Agora, o craque sai de férias garantindo estar feliz com o seu desempenho. A partida em Donetsk foi a última de Cristiano Ronaldo na temporada 2011/2012. Agora, o craque sai de férias garantindo estar feliz com o seu desempenho. A partida em Donetsk foi a última de Cristiano Ronaldo na temporada 2011/2012. Agora, o craque sai de férias garantindo estar feliz com o seu desempenho. A partida em Donetsk foi a última de Cristiano Ronaldo na temporada 2011/2012. Agora, o craque sai de férias garantindo estar feliz com o seu desempenho. A partida em Donetsk foi a última de Cristiano Ronaldo na temporada 2011/2012. Agora, o craque sai de férias garantindo estar feliz com o seu desempenho.
  21. 21. CDS, 25/10/2011 HDFS: como funciona? HDFS distribui os blocos aos datanodes
  22. 22. CDS, 25/10/2011 HDFS: como funciona? Namenode controla blocos e datanodes DN1, DN4, DN7 DN4, DN5, DN6 DN3, DN5, DN8 Namenode
  23. 23. CDS, 25/10/2011 HDFS: como funciona? Algum dia um datanode cairá… não é um problema DN1, DN4, DN7 DN4, DN5, DN6 DN3, DN5, DN8 Namenode X
  24. 24. CDS, 25/10/2011 HDFS: como funciona? Namenode dirá aos DNs para copiar os blocos, voltando a 3x DN1, DN4, DN7 DN4, DN5, DN6 DN3, DN5, DN8 Namenode
  25. 25. CDS, 25/10/2011 HDFS: como funciona? Namenode • Namenode é o único ponto de falha (SPOF) • Backupnode = manual failover • Deve-se investir pesado no hardware do Namenode • redundância de energia • discos em RAID • … Como solucionar?Como solucionar?
  26. 26. CDS, 25/10/2011 Relembrando… = + armazenamento processamento Um sistema de ARMAZENAMENTO e PROCESSAMENTO de dadosUm sistema de ARMAZENAMENTO e PROCESSAMENTO de dados
  27. 27. CDS, 25/10/2011 Map Reduce
  28. 28. CDS, 25/10/2011 Map Reduce Pense em termos de <chave, valor>… <byte offset, texto> <user, perfil do usuário> <timestamp, access log entry> <user, lista de amigos do usuário>
  29. 29. CDS, 25/10/2011 Map Reduce Para escrever um programa Map-Reduce: 1. Escreva um mapeamento que, dada uma <chave,valor>, gere zero ou mais <chaves, valores> 2. Escreva um redutor de todos os valores em uma chave, gerando zero ou mais novas <chaves, valores>
  30. 30. CDS, 25/10/2011 Map Reduce: como funciona? Para escrever um programa Map-Reduce: 1. Escreva um mapeamento que, dada uma <chave,valor>, gere zero ou mais <chaves, valores> 2. Escreva um redutor de todos os valores em uma chave, gerando zero ou mais novas <chaves, valores>
  31. 31. CDS, 25/10/2011 Map Reduce: como funciona? Exemplificando: Contador de Palavras (word count)
  32. 32. CDS, 25/10/2011 Map Reduce: como funciona? <0, “Four score and five years ago our fathers brought”> words = value.split(“ “) for( word : words ) emit( word, 1 )
  33. 33. CDS, 25/10/2011 Tasktracker Map Reduce: como funciona? <0, “Four score and five years ago our fathers brought”> words = value.split(“ “) for( word : words ) emit( word, 1 ) Datanode
  34. 34. CDS, 25/10/2011 Tasktracker Map Reduce: como funciona? Datanode Tasktracker Datanode Tasktracker Datanode Tasktracker Datanode Tasktracker Datanode Tasktracker Datanode
  35. 35. CDS, 25/10/2011 Map Reduce: como funciona? <Four, 1><score, 1><and, 1><five, 1><years, 1><ago, 1><our, 1><fathers, ><brought, 1>, <Four, 1><score, 1><and, 1><five, 1><years, 1><ago, 1><our, 1><fathers, ><brought, 1><Four, 1><score, 1><and, 1><five, 1><years, 1><ago, 1><our, 1><fathers, ><brought, 1><Four, 1><score, 1><and, 1><five, 1><years, 1><ago, 1><our, 1><fathers, 1 ><brought, 1><Four, 1><score, 1><and, 1><five, 1><years, 1><ago, 1><our, 1><fathers, ><brought, 1><Four, 1><score, 1><and, 1><five, 1><years, 1><ago, 1><our, 1><fathers, ><brought, 1><Four, 1><score, 1><and, 1><five, 1><years, 1><ago, 1><our, 1><fathers, 1 ><brought, 1><Four, 1><score, 1><and, 1><five, 1><years, 1><ago, 1><our, 1><fathers, ><brought, 1><Four, 1><score, 1><and, 1><five, 1><years, 1><ago, 1><our, 1><fathers, ><brought, 1><Four, 1><score, 1><and, 1><five, 1><years, 1><ago, 1><our, 1><fathers, 1 ><brought, 1>
  36. 36. CDS, 25/10/2011 Map Reduce: como funciona? <Four, [1, 1, 1]> <and, [1, 1, 1, 1, 1]> <fathers, [1]> <score, [1]> <is, [1, 1, 1, 1 1]> … Embaralha
  37. 37. CDS, 25/10/2011 Map Reduce: como funciona? <Four, 3> <and, 5> <fathers, 1> <score, 1> <is, 5 > … Reduz word = key ones = value count = 0 for( one : ones ) count++ emit( word, count )
  38. 38. CDS, 25/10/2011 Hadoop pra quê? Quando usar Quando não usar Busca Poucos dados Processamento de logs Transações complexas Sistemas de recomendação Alta consistência Manipulação de video e imagem Estatísticas, DW Dados não estruturados
  39. 39. CDS, 25/10/2011 Resumindo Scalability Cost-effective Flexibility Faul tolerant
  40. 40. CDS, 25/10/2011 Ecossistema Hadoop et. al.
  41. 41. CDS, 25/10/2011 Discussão Hadoop é um banco de dados?Hadoop é um banco de dados? Não. Hadoop não é um SGBD. É um sistema para armazenamento e processamento de grande massa de dados. Não. Hadoop não é um SGBD. É um sistema para armazenamento e processamento de grande massa de dados. Pode ser combinado com outras ferramentas e formar um banco de dados ou mesmo um sistema de DW. Ex.: Hadoop + Hive, Hadoop + HBase Pode ser combinado com outras ferramentas e formar um banco de dados ou mesmo um sistema de DW. Ex.: Hadoop + Hive, Hadoop + HBase O que é um banco de dados? Oracle SGBDR? Storage? O que é um banco de dados? Oracle SGBDR? Storage?
  42. 42. CDS, 25/10/2011 Discussão Hadoop é um banco de dados?Hadoop é um banco de dados? Atenção: quando utilizar um SGBDR ou Hadoop (+ outras ferramentas)? Atenção: quando utilizar um SGBDR ou Hadoop (+ outras ferramentas)? Analise seus requisitos!Analise seus requisitos!
  43. 43. CDS, 25/10/2011 Estudo de Caso no
  44. 44. CDS, 25/10/2011 Estudo de Caso: Facebook http://borthakur.com/ftp/hadoopmicrosoft.pdf
  45. 45. CDS, 25/10/2011 Estudo de Caso: Facebook • Logging • Analytics e machine learning • 2 clusters principais • 1100 máquinas, 8800 cores, 12PB • 300 máquinas, 2400 cores, 3PB • cada nó possui 8 cores, com 12TB de storage
  46. 46. CDS, 25/10/2011 Estudo de Caso: Facebook
  47. 47. CDS, 25/10/2011 Estudo de Caso no
  48. 48. CDS, 25/10/2011 Estudo de Caso: Coreo HDFS Web DAV Portal WS
  49. 49. CDS, 25/10/2011 Estudo de Caso: Coreo • Logging • Apenas HDFS (por enquanto…) • 1 cluster • 3 máquinas • fator de replicação 3 • backup namenode
  50. 50. CDS, 25/10/2011 Estudo de Caso: CDS OSS/BSS? DW? OCS? V4? Smarts?
  51. 51. CDS, 25/10/2011 Big Data
  52. 52. CDS, 25/10/2011 Big Data
  53. 53. CDS, 25/10/2011 Big Data
  54. 54. CDS, 25/10/2011 Hadoop powered by
  55. 55. CDS, 25/10/2011 Outline
  56. 56. CDS, 25/10/2011 Cassandra: o que é? Cassandra é um sistema distribuído de armazenamento para GERENCIAR grande quantidade de dados estruturados, com alta disponibilidade e sem ponto de falha.
  57. 57. CDS, 25/10/2011 Cassandra: o que é? Cassandra é um sistema distribuído de armazenamento para GERENCIAR grande quantidade de dados estruturados, com alta disponibilidade e sem ponto de falha. Um BANCO DE DADOS distribuído, escalável e de alta performance. Um BANCO DE DADOS distribuído, escalável e de alta performance.
  58. 58. CDS, 25/10/2011 Cassandra: o que é? Descentralizado Tolerante a falhas Modelo de dados <key,value> Durável Escalável Criado pelo Facebook Open source (Apache)
  59. 59. CDS, 25/10/2011 Cassandra: como funciona? Escrita
  60. 60. CDS, 25/10/2011 Cassandra: como funciona? Query Closest replica Cassandra Cluster Replica A Result Replica B Replica C Digest Query Digest Response Digest Response Result Client Read repair if digests differ Read repair if digests differ Leitura
  61. 61. CDS, 25/10/2011 Cassandra: modelo de dados
  62. 62. CDS, 25/10/2011 Cassandra: modelo de dados Uma única coluna
  63. 63. CDS, 25/10/2011 Cassandra: modelo de dados Uma única linha
  64. 64. CDS, 25/10/2011 Cassandra: modelo de dados Difícil encontrar SW para modelagem
  65. 65. CDS, 25/10/2011 Cassandra: query no-SQL = CQL = Cassandra Query Language API Hector SELECT, UPDATE, DELETE, CREATE COLUMN FAMILY, … SELECT ... WHERE KEY = keyname AND name1 = value
  66. 66. CDS, 25/10/2011 Cassandra: quando usar? Big data Muitos requests Alta performance (memória) Analise seu modelo de dados!
  67. 67. CDS, 25/10/2011 Cassandra no Coreo AppEngine Controle EventHandler Scheduler Identity Server Componente de BD
  68. 68. CDS, 25/10/2011 Cassandra: discussão X
  69. 69. CDS, 25/10/2011 Cassandra: discussão +
  70. 70. CDS, 25/10/2011 Outline
  71. 71. CDS, 25/10/2011 Scribe Servidor de agregação de streams de logs em tempo real.
  72. 72. CDS, 25/10/2011 Scribe • Criado pelo Facebook • Escrito em C++ • ( + ) Utiliza thrift para comunicação • ( + ) Escalável • ( + ) Robusto • ( + ) Integra com Hadoop • ( - ) Pouca documentação
  73. 73. CDS, 25/10/2011 Scribe: como funciona?
  74. 74. CDS, 25/10/2011 Scribe no Coreo Logs são divididos em categorias do tipo: 1)ESB esb1 esb2 1)BAM bam1 bam2 1)SCE cocreation-sce1 cocreation-sce2 1)Portal portal1 portal2 1)AppEngine appEngine1 appEngine2 1)…
  75. 75. CDS, 25/10/2011 Scribe no Coreo
  76. 76. CDS, 25/10/2011 Scribe no Coreo
  77. 77. CDS, 25/10/2011 Logging no CDS Syslog? Splunk?
  78. 78. CDS, 25/10/2011 Outline
  79. 79. CDS, 25/10/2011 WSO2 BAM Business Activity Monitor
  80. 80. CDS, 25/10/2011 WSO2 BAM
  81. 81. CDS, 25/10/2011 WSO2 BAM • Utiliza SGBDR (Oracle no Coreo) • Monitora ESB e Application Server • Obtém dados do tipo: • Num. de vezes que um endpoint foi executado • Qual mensagem SOAP trafegada numa chamada de WS • Quantas aplicações estão “deployadas” no AS
  82. 82. CDS, 25/10/2011 WSO2 BAM
  83. 83. CDS, 25/10/2011 WSO2 BAM • Solução corporativa • ( - ) Pouca documentação • ( - ) Baixo desempenho (para aplicações de Internet) • ( + ) Interface de visualização de gadgets amigável • ( + ) Relatórios em pdf, excel e html
  84. 84. CDS, 25/10/2011 WSO2 BAM no Coreo AppEngine Componentes Aplicações, WS externos (broker) e Proxies, Sequences e Endpoints internos Oracle
  85. 85. CDS, 25/10/2011 WSO2 BAM no Coreo Aplicações top do mês Aplicações mais populares Número de erros de uma aplicação Número de execuções/erros de um componente Alto número de requisições pelo Portal Coreo Não possui mecanismo de cache
  86. 86. CDS, 25/10/2011 WSO2 BAM: Futuro Cassandra Thrift REST Escalabilidade horizontal Apache Hive Cassandra Google Gadgets
  87. 87. CDS, 25/10/2011 Outline
  88. 88. CDS, 25/10/2011 SDR Service Detail Record Registro da execução de um componente ou aplicaçãoRegistro da execução de um componente ou aplicação
  89. 89. CDS, 25/10/2011 SDR Registro da execução de um componente ou aplicaçãoRegistro da execução de um componente ou aplicação
  90. 90. CDS, 25/10/2011 SDR Kaha Persistence Server standalone API (cocreation- log)
  91. 91. CDS, 25/10/2011 Outline
  92. 92. CDS, 25/10/2011 Logs, Monitoramento e Estatísticas SDRSDR Estatísticas e Monitoramento Estatísticas e Monitoramento Centralização de logs do sistema Centralização de logs do sistema Registros das instâncias de execução Registros das instâncias de execução
  93. 93. CDS, 25/10/2011 Outline
  94. 94. CDS, 25/10/2011 Futuro para o Coreo... SDRSDR Estatísticas e Monitoramento Estatísticas e Monitoramento Centralização de logs do sistema Centralização de logs do sistema Registros das instâncias de execução Registros das instâncias de execução ??
  95. 95. CDS, 25/10/2011 Conclusão Atenção para o que está acontecendo no mundo… :)Atenção para o que está acontecendo no mundo… :) Analise seus requisitos. Eles determinarão a escolha da ferramenta ideal. Analise seus requisitos. Eles determinarão a escolha da ferramenta ideal.
  96. 96. CDS, 25/10/2011 Dúvidas??Dúvidas??

×