noSQL e ORM, será que dá samba?

Preview:

DESCRIPTION

 

Citation preview

JBossInBossa 2011 - Brasilia

N SQL

Alexandre Porcelli@porcelli

ORM...

&

será que dá samba?

Alexandre Porcelli

Organizer

Alexandre Porcelli

Commiter / Parser Developer

Alexandre PorcelliAPI Designer / Core Developer

Alexandre PorcelliDSL Designer

Alexandre Porcelli

Co-founder / Parser Developer

Alexandre Porcelli

Founder

no:sql(br)/v221 e 22 de outubro

http://nosqlbrasil.com

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

schema first vs.

flexibility

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.

GRID

FAULT TOLERANCE

apps & db

cada escolha uma

renúncia

padrões

how-to

acid

(

existe nosqlacid

)

MINDSET

NoSQLSQL

durabilidade

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

NoSQLSQL

durabilidade

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-value columnfamily

document graph

grid

newSQL

O[?]M & UnQLUnstructured Query LanguageObject/[?] Mapping

1970 2000

30anos

2008 2011

anos3

@Entitypublic class Dog {   @Id   public Long getId() { return id; }   public void setId(Long id) { this.id = id; }   private Long id;

   public String getName() { return name; }   public void setName(String name) { this.name = name; }   private String name;

   @ManyToOne   public Breed getBreed() { return breed; }   public void setBreed(Breed breed) { this.breed = breed; }   private Breed breed;}

HIBERNATE OGM?

cache

sessions

Perguntas?

no:sql(br)/v221 e 22 de outubro

http://nosqlbrasil.com