Cassandra
Guia de Sobrevivência!
Oi!
!
• Hanneli (‘H' mudo) - @hannelita	

• Software Developer @ CodeMiner 42	

• Café, Pokémon, Lego e bichos <3
HIRING
Por que um meetup sobre
Cassandra?
!
• NoSQL	

• Muitos casos de uso interessantes	

• Muitos casos de uso não muito aprop...
O que *NÃO* vamos ver aqui
• Tutorial básico de instalação e comandos do
Cassandra	

• Vending do DataStax	

• Flame war c...
O que *vamos* ver aqui
• Por que NoSQL?	

• Casos de uso interessantes para o Cassandra	

• Casos de uso não interessantes...
Quem nunca…
O que os
clientes estão
fazendo agora?
Agora
Agora != 20 min atrás
Agora != 15 min atrás
Agora != 5 min atrás
Agora != 1 min atrás
Desenvolvimento Mobile
Agora
Será que alguém encontrou algum bug?
Será que alguém gostou de uma feature?
Será que alguém vai me dar rate na AppSt...
Agora
Preciso gerar um relatório sobre o AGORA
Agora
Mas AGORA está acontecendo muita coisa.
Relatórios
Para gerar um relatório, preciso salvar informações.
Quero analisar meu aplicativo.
Quero gerenciar as ações !
realizadas em todas as telas para todas as features.
Aplicativo
...
Salvar -> Persistência
Qual a primeira forma de armazenamento que vemos !
na disciplina de Banco de Dados?
Encaixe isso em tabelas
Aplicativo
Feature
Tela 1
Tela 2
Info Info
Info Info
Encaixe isso em tabelas
Encaixe isso em tabelas
E se eu quiser monitorar vários aplicativos e a!
interação entre eles?
Encaixe isso em tabelas
E se eu tiver muitas features com muitas telas?
Como monitoro o ‘AGORA’?
Tem informação demais! O MySQL aguenta?
Como monitoro o ‘AGORA’?
Tem informação demais! O MySQL aguenta?
Tempo
Quanto tempo vai demorar para fazer as consultas?
Tempo
Como monitoramos o ‘agora’ se a query demorar!
5 minutos?
Modelo Relacional
#Fail
Até é uma tabela
Aplicativo
Feature
Tela 1
Tela 2
Info Info
Info Info
MAS
• Não Normalizada	

• Uma ‘tabela complexa’	

• Muitas informações nessa mesma tabela
Comportamento de KV em 'Tabelão'
Onde usar?
• Monitoramento Real Time	

• Sistemas de recomendação	

• Sistemas com informações distribuídas em
muitos serv...
Quando não usar?
• Quando há pouca informação	

• Você realmente precisa de KV + Tabela?	

• Time não concorda
Obrigada!
hannelita@gmail.com
@hannelita
Referências
• http://www.slideshare.net/jericevans/cassandra-explained	

• http://www.slideshare.net/rbranson/cassandra-at...
Próximos SlideShares
Carregando em…5
×

Cassandra - Guia de Sobrevivência

445 visualizações

Publicada em

Meetup em SP - out/2014

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

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

Nenhuma nota no slide

Cassandra - Guia de Sobrevivência

  1. 1. Cassandra Guia de Sobrevivência!
  2. 2. Oi! ! • Hanneli (‘H' mudo) - @hannelita • Software Developer @ CodeMiner 42 • Café, Pokémon, Lego e bichos <3 HIRING
  3. 3. Por que um meetup sobre Cassandra? ! • NoSQL • Muitos casos de uso interessantes • Muitos casos de uso não muito apropriados que causam discussões fervorosas!
  4. 4. O que *NÃO* vamos ver aqui • Tutorial básico de instalação e comandos do Cassandra • Vending do DataStax • Flame war com outros bancos • Conceitos monótonos zzzz….
  5. 5. O que *vamos* ver aqui • Por que NoSQL? • Casos de uso interessantes para o Cassandra • Casos de uso não interessantes • Próximos meetups! • Brindes • GIFs e imagens legais
  6. 6. Quem nunca… O que os clientes estão fazendo agora?
  7. 7. Agora Agora != 20 min atrás Agora != 15 min atrás Agora != 5 min atrás Agora != 1 min atrás
  8. 8. Desenvolvimento Mobile
  9. 9. Agora Será que alguém encontrou algum bug? Será que alguém gostou de uma feature? Será que alguém vai me dar rate na AppStore? Será que alguém está achando meu app uma droga?
  10. 10. Agora Preciso gerar um relatório sobre o AGORA
  11. 11. Agora Mas AGORA está acontecendo muita coisa.
  12. 12. Relatórios Para gerar um relatório, preciso salvar informações.
  13. 13. Quero analisar meu aplicativo. Quero gerenciar as ações ! realizadas em todas as telas para todas as features. Aplicativo Feature Tela 1 Tela 2 Info Info Info Info
  14. 14. Salvar -> Persistência Qual a primeira forma de armazenamento que vemos ! na disciplina de Banco de Dados?
  15. 15. Encaixe isso em tabelas Aplicativo Feature Tela 1 Tela 2 Info Info Info Info
  16. 16. Encaixe isso em tabelas
  17. 17. Encaixe isso em tabelas E se eu quiser monitorar vários aplicativos e a! interação entre eles?
  18. 18. Encaixe isso em tabelas E se eu tiver muitas features com muitas telas?
  19. 19. Como monitoro o ‘AGORA’? Tem informação demais! O MySQL aguenta?
  20. 20. Como monitoro o ‘AGORA’? Tem informação demais! O MySQL aguenta?
  21. 21. Tempo Quanto tempo vai demorar para fazer as consultas?
  22. 22. Tempo Como monitoramos o ‘agora’ se a query demorar! 5 minutos?
  23. 23. Modelo Relacional #Fail
  24. 24. Até é uma tabela Aplicativo Feature Tela 1 Tela 2 Info Info Info Info
  25. 25. MAS • Não Normalizada • Uma ‘tabela complexa’ • Muitas informações nessa mesma tabela
  26. 26. Comportamento de KV em 'Tabelão'
  27. 27. Onde usar? • Monitoramento Real Time • Sistemas de recomendação • Sistemas com informações distribuídas em muitos servidores
  28. 28. Quando não usar? • Quando há pouca informação • Você realmente precisa de KV + Tabela? • Time não concorda
  29. 29. Obrigada! hannelita@gmail.com @hannelita
  30. 30. Referências • http://www.slideshare.net/jericevans/cassandra-explained • http://www.slideshare.net/rbranson/cassandra-at-instagram-aug-2013 • http://www.slideshare.net/jeromatron/big-databudapest • http://www.slideshare.net/SwissHUG/a-real-life-project-using-cassandra-at-a- large-swiss-telco-operator • http://www.slideshare.net/StampedeCon/a-picture-of-cassandra-in-the-real- world-stampedecon-2014 • http://planetcassandra.org/mongodb-to-cassandra-migration/

×