70
N SQL Alexandre Porcelli @porcelli

noSQL @ MSTechDay São Paulo

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: noSQL @ MSTechDay São Paulo

N SQLAlexandre Porcelli@porcelli

Page 2: noSQL @ MSTechDay São Paulo

Alexandre Porcelli

Writer

Alexandre Porcelli

Organizer

Alexandre Porcelli

Commiter / Parser Developer

Alexandre PorcelliCreator & Dictator

Alexandre PorcelliCore Developer / API Designer

Page 3: noSQL @ MSTechDay São Paulo

contexto

Page 4: noSQL @ MSTechDay São Paulo

século xxi

Page 5: noSQL @ MSTechDay São Paulo
Page 6: noSQL @ MSTechDay São Paulo

falta de capital

Page 7: noSQL @ MSTechDay São Paulo

big data

Page 8: noSQL @ MSTechDay São Paulo

história...

Page 9: noSQL @ MSTechDay São Paulo

• Hierarchical (IMS): late 1960’s and 1970’s • Directed graph (CODASYL): 1970’s • Relational: 1970’s and early 1980’s • Entity-Relationship: 1970’s • Extended Relational: 1980’s • Semantic: late 1970’s and 1980’s• Object-oriented: late 1980’s and early 1990’s • Object-relational: late 1980’s and early 1990’s • Semi-structured (XML): late 1990’s to late 2000’s• The next big thing: ???

ref: What Goes Around Comes Around por Michael Stonebraker e Joey Hellerstein

modelos

Page 10: noSQL @ MSTechDay São Paulo

nosql

Page 11: noSQL @ MSTechDay São Paulo
Page 12: noSQL @ MSTechDay São Paulo

definição...

Page 13: noSQL @ MSTechDay São Paulo

abaixo ao banco de

dados relacional!

Page 14: noSQL @ MSTechDay São Paulo

abaixo ao banco de dados relacional!

como bala de prata!

Page 15: noSQL @ MSTechDay São Paulo

momento histórico...

Page 16: noSQL @ MSTechDay São Paulo
Page 17: noSQL @ MSTechDay São Paulo

uma nova escola

Page 18: noSQL @ MSTechDay São Paulo

estrutura de dados

Page 19: noSQL @ MSTechDay São Paulo

DESNORMALIZAÇÃO

Page 20: noSQL @ MSTechDay São Paulo

chave-valor

Page 21: noSQL @ MSTechDay São Paulo

modelo

Page 22: noSQL @ MSTechDay São Paulo

família de colunas

Page 23: noSQL @ MSTechDay São Paulo

modeloKeyspace

Família de Colunas

.

.

.

chavelinha

coluna coluna coluna. . .coluna

chavelinha

coluna coluna coluna. . .coluna coluna coluna

nome valortimestamp

Coluna

Page 24: noSQL @ MSTechDay São Paulo

documento

Page 25: noSQL @ MSTechDay São Paulo

modelo

Page 26: noSQL @ MSTechDay São Paulo

grafo

Page 27: noSQL @ MSTechDay São Paulo

visão geral

Page 28: noSQL @ MSTechDay São Paulo
Page 29: noSQL @ MSTechDay São Paulo
Page 30: noSQL @ MSTechDay São Paulo

arquitetura

Page 31: noSQL @ MSTechDay São Paulo

Eventually Consistent

ref: Eventually Consistent por Werner Vogels

Page 32: noSQL @ MSTechDay São Paulo

Consistência em Momento

Indeterminado

@mdediana

Page 33: noSQL @ MSTechDay São Paulo

BASE

ref: BASE: an Acid Alternative por Dan Pritchett

Page 34: noSQL @ MSTechDay São Paulo

BASE

asicallyvailableoft Stateeventually Consistent

Page 35: noSQL @ MSTechDay São Paulo

jogo de palavras

relaxamento das regras

Page 36: noSQL @ MSTechDay São Paulo

estado de fluxo

Page 37: noSQL @ MSTechDay São Paulo

durabilidade

ref: The End of an Architectural Era por Michael Stonebraker & al.

Page 38: noSQL @ MSTechDay São Paulo

apps & db

Page 39: noSQL @ MSTechDay São Paulo

ORM & UnQLUnstructured Query LanguageObject-Relational Mapping

Page 40: noSQL @ MSTechDay São Paulo

schema first vs.

flexibility

Page 41: noSQL @ MSTechDay São Paulo
Page 42: noSQL @ MSTechDay São Paulo
Page 43: noSQL @ MSTechDay São Paulo
Page 44: noSQL @ MSTechDay São Paulo

FAULT TOLERANCE

Page 45: noSQL @ MSTechDay São Paulo

MINDSET

Page 46: noSQL @ MSTechDay São Paulo

NoSQLSQLdurabilidade

dsl comum

triggers

chave estrangeira

chave composta

transação

2 phase commit

flexibilidadegrafos

k-v store

escalabilidade

commodity hard.

RAM

distributed

documento

relacional

padrões

api`s

Page 47: noSQL @ MSTechDay São Paulo

NoSQLSQLdurabilidade

dsl comum

triggers

chave estrangeira

chave composta

transação

2 phase commit

flexibilidadegrafos

k-v store

escalabilidade

commodity hard.

RAM

distributed

documento

relacional

padrões

api`s

Page 48: noSQL @ MSTechDay São Paulo

dsl comum

escalabilidade

commodity hard.

RAM

distributed

relacional

padrões

NewSQL

Page 49: noSQL @ MSTechDay São Paulo

ferramentas

Page 50: noSQL @ MSTechDay São Paulo

noSQL

Page 51: noSQL @ MSTechDay São Paulo

key-valuecolumnfamily

document graph

Page 52: noSQL @ MSTechDay São Paulo

key-valuecolumnfamily

document graph

Page 53: noSQL @ MSTechDay São Paulo
Page 54: noSQL @ MSTechDay São Paulo

newSQL

Page 55: noSQL @ MSTechDay São Paulo
Page 56: noSQL @ MSTechDay São Paulo
Page 57: noSQL @ MSTechDay São Paulo

newSQLgraph key-value

Page 59: noSQL @ MSTechDay São Paulo
Page 60: noSQL @ MSTechDay São Paulo
Page 61: noSQL @ MSTechDay São Paulo

cada escolha uma

renúncia

Page 62: noSQL @ MSTechDay São Paulo

padrões

Page 63: noSQL @ MSTechDay São Paulo

how-to

Page 64: noSQL @ MSTechDay São Paulo
Page 65: noSQL @ MSTechDay São Paulo

acid

Page 66: noSQL @ MSTechDay São Paulo

(

Page 67: noSQL @ MSTechDay São Paulo

existe nosqlacid

Page 68: noSQL @ MSTechDay São Paulo

)

Page 69: noSQL @ MSTechDay São Paulo

perguntas?