[ci&t summit 2014] como escolher sua ferramenta de dados usando o teorema cap

30
Como escolher sua ferramenta de dados usando o teorema CAP Gustavo Concon

Upload: gustavo-concon

Post on 12-Apr-2016

8 views

Category:

Documents


0 download

DESCRIPTION

Com tantas opções de bancos de dados NoSQL, como escolher a melhor? O que devo considerar?

TRANSCRIPT

Page 1: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

Como escolher sua ferramenta de

dados usando o teorema CAP

Gustavo Concon

Page 2: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

Objetivo aqui hoje

Desmistificar

NoSQLQual eu uso???

Page 3: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

Enxurrada de produtos

Page 4: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

WTH is NOSQL????????

➔ NOSQL (Not Only SQL)

➔ É uma linguagem de queries?➔ É uma tecnologia de bigdata?

Termo usado pra categorizar essas soluções de alto volumeSegundo Martin Fowler: uma hashtag do Twitter #nosql

Page 5: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

Relational Databases

Page 6: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

Relational Databases

CONSISTÊNCIA!!!

Page 7: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

INTEGRAÇÃO

ESTOQUECORPORATIVO

VENDAS

Page 8: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

Internet Scale

INSERT

SELECTCONSISTÊNCI

A FAIL!

Page 9: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

NOSQL

Page 10: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

Teorema CAP

➔ ConsistencyTodos enxergam os mesmos dados

➔ AvailabilityOperações com alta disponibilidade (Requisições sempre atendidas)

➔ Partition-toleranceCaso a comunicação (rede) entre um nó e outro falhe, o sistema continua operante

Page 11: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

Teorema CAP

CONSISTÊNCIA AVAILABILITY (DISPONIBILIDADE)

PARTITION TOLERANCE

CA

CP PA

SÓ 2!!!

Page 12: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

C+A - CONSISTENCY + AVAILABILITY

RDBMS ➔ Sem necessidade de ser “internet scale”

➔ Não é “bigdata”

➔ Consegue alta disponibilidade

➔ Todos enxergam o dado imediatamente após o commit

Page 13: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

C+P - CONSISTÊNCIA + PART. TOLERANCE

MemcacheDB

➔ Parte dos dados (shard) pode ficar indisponível (por isso não é A)

➔ CP -> AP (consistência eventual)

➔ master/slave dentro do shard

Page 14: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

A+P - AVAILABILITY + PART. TOLERANCE

➔ +++INSERT

➔ Consistência eventual

Page 15: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

Na prática...

Page 16: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

CONSISTÊNCIA!!!

M I T

O ! !

Page 17: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

BOOKING.COM

1 VAGA!!!

CONSISTÊNCIA!!!

M I T

O ! !

Page 18: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

É UMA

DECISÃO DE NEGÓCIO!!!

Page 19: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

Definiu qual garantia vc vai abrir mão?

Page 20: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP
Page 21: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

Tipos de NoSQL

➔ Key-value

➔ Document

➔ Columnar

➔ Graph

Page 22: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

Key-value

➔ “Like a hashmap”

➔ Schemaless

➔ Value é caixa preta!

key1 <Object 1>key2 <Object 2>key3 <Object 3>key4 <Object 4>

Page 23: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

Document-oriented

➔ Schemaless

➔ Value mais compreensível

Page 24: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

Column-oriented

➔ Alguns são Schemaless, menos flexíveis

➔ Bom para sumarizações

Page 25: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

Graph-oriented

➔ Schemaless

➔ Redes sociais!

Page 26: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

Produtos x Tipo

Page 27: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

NoSQL == Produtividade

Page 28: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

RELACIONAL NÃO ESTÁ MORTO!

Page 29: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

NÃO JUSTIFIQUE TECNOLOGIA PELA

TECNOLOGIA

Page 30: [CI&T Summit 2014] Como Escolher Sua Ferramenta de Dados Usando o Teorema CAP

Título para o Slide

Obrigado!