[MinhaVida TechDay] NoSQL

328 visualizações

Publicada em

NoSQL - O que eu vi por ai...

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
328
No SlideShare
0
A partir de incorporações
0
Número de incorporações
14
Ações
Compartilhamentos
0
Downloads
4
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

[MinhaVida TechDay] NoSQL

  1. 1. NoSQLO que eu vi por ai...
  2. 2. Cleber Dantas• 8+ anos de experiência na área de TI• Especialista em desenvolvimento Web• Responsável pela área técnica do grupo Minha Vida• Ministro treinamentos sobre desenvolvimento Web• Dou algumas palestras em eventos de tecnologia• @cleberdantas• http://www.cleberdantas.com
  3. 3. Not Only SQL• Uma nova (ou não) escola de pensamentos• Aprendemos o modelo relacional na escola• Not Only RDBMS• MongoDB (DoubleClick)
  4. 4. CAP Theorem• Consistency (all nodes see the same data at the same time)• Availability ( a guarantee that every request receives a response about whether it was successful or failed)• Partition tolerance (the system continues to operate despite arbitrary message loss or failure of part of the system)• “Em um sistema de computação distribuída é impossível ter as 3 características” – Erick Brewer http://en.wikipedia.org/wiki/CAP_theorem
  5. 5. CAP Theorem
  6. 6. ACID vs BASE • ACID (atomicidade, consistência, isolamento, durabilidade) – Lembram?  • BASE (Basically Available, Soft state, Eventual consistency – Relaxamento das regras) • Onde não ser ACID não é ruim? Think about... http://en.wikipedia.org/wiki/Eventual_consistency http://en.wikipedia.org/wiki/ACID
  7. 7. Estrutura de dados • Key-Value • Column family • Document • Graph
  8. 8. Bancos de dados
  9. 9. Arquitetura de armazenamento • Normalmente os NoSQL trabalham em memória • O próprio engine forka o processo de tempos em tempos e leva os dados ao disco • Para garantir a disponibilidade/performance trabalham com replicas/sharding
  10. 10. Map Reduce• Funções que coletam/mapeiam dados de 1 ou mais nós gerando uma nova coleção• Depois agrupam/reduzem os dados os tornando de alguma forma útil• Ex: Contador de palavras http://en.wikipedia.org/wiki/MapReduce
  11. 11. RDBMS Anti Patterns by @gleicon
  12. 12. RDBMS Anti Patterns by @gleicon
  13. 13. RDBMS Anti Patterns by @gleicon
  14. 14. RDBMS Anti Patterns by @gleicon
  15. 15. RDBMS Anti Patterns by @gleicon
  16. 16. RDBMS Anti Patterns by @gleicon
  17. 17. RDBMS Anti Patterns by @gleicon
  18. 18. Mensagem final…• Cada vez mais temos que pensar muito nos problemas que estamos resolvendo e como vamos resolve-lo, independente da tecnologia• Se é com PHP, Asp.Net, Java, Oracle, Sql Server, MemCached, Redis, MongoDB, Lua, Nuvem, Hadoop, Lucene ou não isso realmente não importa afinal somos profissionais de tecnologia. #OpenMind• Temos que estudar 
  19. 19. Obrigado. Perguntas? Se eu souber responder claro 

×