Upload
alexandre-porcelli
View
1.049
Download
0
Embed Size (px)
DESCRIPTION
Citation preview
N SQLAlexandre Porcelli@porcelli
Alexandre Porcelli
Writer
Alexandre Porcelli
Organizer
Alexandre Porcelli
Commiter / Parser Developer
Alexandre PorcelliCreator & Dictator
Alexandre PorcelliCore Developer / API Designer
contexto
século xxi
falta de capital
big data
história...
• 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
nosql
definição...
abaixo ao banco de
dados relacional!
abaixo ao banco de dados relacional!
como bala de prata!
momento histórico...
uma nova escola
estrutura de dados
DESNORMALIZAÇÃO
chave-valor
modelo
família de colunas
modeloKeyspace
Família de Colunas
.
.
.
chavelinha
coluna coluna coluna. . .coluna
chavelinha
coluna coluna coluna. . .coluna coluna coluna
nome valortimestamp
Coluna
documento
modelo
grafo
visão geral
arquitetura
Eventually Consistent
ref: Eventually Consistent por Werner Vogels
Consistência em Momento
Indeterminado
@mdediana
BASE
ref: BASE: an Acid Alternative por Dan Pritchett
BASE
asicallyvailableoft Stateeventually Consistent
jogo de palavras
relaxamento das regras
estado de fluxo
durabilidade
ref: The End of an Architectural Era por Michael Stonebraker & al.
apps & db
ORM & UnQLUnstructured Query LanguageObject-Relational Mapping
schema first vs.
flexibility
FAULT TOLERANCE
MINDSET
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
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
dsl comum
escalabilidade
commodity hard.
RAM
distributed
relacional
padrões
NewSQL
ferramentas
noSQL
key-valuecolumnfamily
document graph
key-valuecolumnfamily
document graph
newSQL
newSQLgraph key-value
column store
“Apollo” @ Denali
data warehouse
cada escolha uma
renúncia
padrões
how-to
acid
(
existe nosqlacid
)
perguntas?
Obrigado
@porcelli
linkedin.com/in/alexandreporcelli
porcelli.com.br
github.com/porcelli
about.me/porcelli