18
NoSQL Systems Survey? Cassandra & CouchDB Henrique Dias 1

No sql system_survey

Embed Size (px)

Citation preview

Page 1: No sql system_survey

NoSQL Systems Survey?

Cassandra & CouchDB

Henrique Dias

1

Page 2: No sql system_survey

RoteiroPrimeiro vou apresentar a motivação do artigo, os conceitos relacionados aosdiferentes bancos não-relacionais. Em seguida apresentarei uma comparação entre osesquemas relacionais e NOSQL aprofundando os modelos do Cassandra e CouchDB. Por fim, farei uma conclusão sobre o assunto. Este roteiro é uma crítica lúdica aosslides puro-texto onde o apresentador fica de costas para a platéia... de braçoscruzados... lendo o slide :) Para quem chegou nesse ponto do texto, essas últimaspalavras são para você: esse slide é uma técnica de apresentação chamada quebra-gelo onde o apresentador faz um contado instigando a curiosidade do público para a apresentação que será feita. Também podem procurar a apresentação Death by Power Point para se inspirarem para fazer ótimas apresentações. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse nec orci lacus, sit amet gravida sem. Aenean at libero ac urna egestas aliquam et id lectus. In fringilla ultrices magna, quis ultricies est variussed. Suspendisse semper leo id mi accumsan ac egestas neque vulputate. Duis accumsan ligulaquis tellus condimentum ullamcorper. Nullam mollis nisi sit amet purus laoreet ut tincidunterat tincidunt. Donec ipsum lacus, semper sed aliquam vel, molestie quis nulla. Vivamus tellusmagna, luctus in elementum non, porttitor sed quam. Morbi ultrices erat at risus hendrerittristique. Phase-llus sodales sodales dui, eget pharetra sapien ultricies et. Proin a justomassa, at hendrerit purus. Suspendisse id tortor nibh.

2

Page 3: No sql system_survey

Ferramentas

3Conceitos Cassandra CouchDB Final Conclusão

Page 4: No sql system_survey

ACID x BASE

Atomicidade

Consistência

Isolamento

Durabilidade

Basically

Available

Soft-State

Eventual consistency

4Conceitos Cassandra CouchDB Final Conclusão

Page 5: No sql system_survey

Teorema CAP

Escolha Dois

Avaliabilidade:Cada cliente sempre pode ler e escrever.

Consistência:Todos os clientes sempre tem a mesma visão dos dados.

Partição:O sistema funciona mesmo quando a rede

está particionada.5

Conceitos Cassandra CouchDB Final Conclusão

Page 6: No sql system_survey

Teorema CAP

• CAo SGBDs em geralo MySQLo PostgreSQL

• APo Dynamoo Cassandrao CouchDB

• CPo BigTableo MongoDBo Berkeley DB

6Conceitos Cassandra CouchDB Final Conclusão

Page 7: No sql system_survey

Disponibilidade

Solicitação

--------------------------------------------------X

7Conceitos Cassandra CouchDB Final Conclusão

Page 8: No sql system_survey

Consistência Eventual

ConsistênciaEventual

ConsistênciaForte

8Conceitos Cassandra CouchDB Final Conclusão

Page 9: No sql system_survey

Partição da Rede

Partiçãode Rede

Leitura Escrita

Cliente

9Conceitos Cassandra CouchDB Final Conclusão

Page 10: No sql system_survey

10Conceitos Cassandra CouchDB Final Conclusão

Page 11: No sql system_survey

Esquema Cassandra

11Conceitos Cassandra CouchDB Final Conclusão

userID refID Scrap

23 75 Mensagem enviada para 23

23 85 ...

52 458 ...

125 22 ...

23 85 ...

78 12 ...

96 99 ...

Scraps

userID: 23• 2010-12-14 22:15:45.568

o 86o "Vai na aula de BD amanhã?"

• 2006-12-14 16:25:30.245o 78o "É o INTER na final!!!"

userID: 76• 2010-12-13 08:12:43.125

o 99o "Sempre costumo ir lá, claro!"

• 2010-11-29 19:33:11.753o 216o "Sim, mas ela não atendeu =/"

Page 12: No sql system_survey

Admin Cassandra

12Conceitos Cassandra CouchDB Final Conclusão

Page 13: No sql system_survey

Admin Cassandra

13Conceitos Cassandra CouchDB Final Conclusão

Page 14: No sql system_survey

Esquema CouchDB

14Conceitos Cassandra CouchDB Final Conclusão

DocID Título Autor Corpo Cabeçalho Versão

23 Carta de Demissão Empresa Caro funcio.... - 25

56 Folha Timbrada - - Logotipo 34

Documento 56

DocID: 15632Version: 2178963"Título": "Folha Timbrada""Cabeçalho": "Logotipo"

Documento 23

DocID: 1238472Version: 2348795"Título": "Carta de Demissão""Autor": "Empresa""Corpo": "Caro funcionário..."

Page 15: No sql system_survey

Admin CouchDB

15Conceitos Cassandra CouchDB Final Conclusão

Page 16: No sql system_survey

Comparativo

16Conceitos Cassandra CouchDB Final Conclusão

Cassandra CouchDB

Consulta API JavaScript

Linguagem Java Erlang

Modelo Colunas Documento

Arquitetura Distribuído Replicado

Consistência Eventual Versões

Falhas Tolerante Replicação

Page 17: No sql system_survey

Múltiplos Modelos

idCliente Nome Endereço

1 Fulano Rua do Zero

Ciclano Avenida Perspectiva2

Filmes

DocID: 1238472"Título": "American Pie""Diretor": "Paul Weitz""Atores": ["Jason", "Chris", "Thomas", "Alyson"]"Sinopse": "quatro amigos que fazem um pacto queantes de se formarem todos eles vão perder a virgindade..""Tags":["comédia", "jovens", "sexo"]"Locações": 350

Locações

idCliente: 1• idFilmes

o 12382o 526o ...

• Tagso comédia: 12o drama 15o sexo: 86

17Conceitos Cassandra CouchDB Final Conclusão

Page 18: No sql system_survey

Conclusão

Hábito ModeloX

Dados Modelo

NoSQL + Relacional

18Conceitos Cassandra CouchDB Final Conclusão