SlideShare uma empresa Scribd logo
1 de 31
Baixar para ler offline
Introdução ao NOSQL
Otávio Santana
@otaviojava
https://github.com/otaviojava/
http://about.me/otaviojava
Cassandra Trip Brasil
Cassandra em Cinco Cidades
Link: http://goo.gl/wbjQyz
Data: 2 de setembro, Segunda-Feira
Cidade: Campinas
Data: 3 de setembro, Terça-Feira
Cidade: São Paulo
Data: 3 de setembro, Terça-Feira
Cidade: Online
Data: 4 de setembro, Quarta-Feira
Cidade: Florianópolis
Data: 5 de setembro, Quinta-Feira
Cidade: Brasília
Data: 6 de setembro, Sexta-Feira
Cidade: Salvador
Cassandra Brasil
Planeta Cassandra
Cassandra Brasil Google Groups
Cassandra Brasil Linkedin
Cassandra Trip Brasil
Cassandra Meetup
Agenda
Data Science
Big Data
NOSQL
NOSQL – Definições
Relacional vs NOSQL
Cassandra
Arquitetura
Hierarquia
Modelagem
Exemplo(Spring e CDI Weld)
Data Science
● Terra
● Ouro
● Petróleo
● Informação
● Big Data
● Empirical
● Theoretical
● Computational
● eScience
Data Science
Data Science
1.Preparing to run a model
2.Running the model
3.Communicating the results
Flu trends
Redes Sociais
Eleições
Negócios
• E-commerce
• Marketing
• Cerveja e Fraldas
• Tail Target
Relação
• Data Science
• Big Data
• NOSQL
Big Data
• 3 Vs (Velocidade, variedade e
volume)
• Sem definição
Big Data
• Cache
• Data Grid
• Algoritmo
Hadoop
●Hadoop Common
●Hadoop Distributed File System (HDFS™)
●Hadoop YARN
●Hadoop MapReduce
●Ambari™
●Avro™
●Cassandra™
●Chukwa™
●HBase™
●Hive™
●Mahout™
●Pig™
●ZooKeeper™
NOSQL
Não apenas SQL
Conhecer o melhor
dos dois mundos
Uso específico
A.C.I.D. vs B.A.S.E
Atomicidade
Consistência
Isolamento
Durabilidade
Basicamente Avaliado
Soft-state
Eventualmente persistente
SQL vs NOSQL
Driver
SQL ANSI
Transação
Alto custo de IO
Fácil troca de Banco
Relacionamento
API
Não padronizado
Não Transação
Busca por chave
Difícil troca de Banco
Não relacionamento
Classificação
Arquitetura Armazenamento Estrutura Dados
Chave-Valor
Documentos
Grafo
Família de Colunas
Cassandra
Distribuída
Configurável
Família de Colunas
Cassandra
Gossip
Nível de consistência
Leitura e Escrita
ANY
ONE
LOCAL_QUORUM
EACH_QOURUM
ALL
Disponibilidade
Consistência
Modelagem
TwittSandra
Usuários Seguidores Seguidos
User Line TimeLine Tweets
Column Family Usuários
alice nome : Allison senha : *
bob nome : Roberto senha : *
eve nome : Evelyn senha : *
chuck nome : Carlos senha : * site : datastax.com
Usuários
Column Family Followers
alice bob : mallory : trent :
Seguidores
Column Family Following
alice bob : carlos : david :
Seguidos
Column Family UserLine
alice 125695372 : AXML 126695372 : XCVL 127695372 : XENY
bob 125795372 : SDFG 126895372 : XCVN
eve 125694372 : FDHL
arthur 125600000 : AXML 125800000 : XCVL 127900000 : XENY
Twettes do usuário
Column Family Timeline
bob 125795372 : SDFG 126895372 : XCVN
eve 1279900000 : FDHL
arthur 125600000 : AXML 125800000 : XCVL 127900000 : XENY
alice 125795372 : SDFG 125800000 : XCVL 1279900000 : FDHL
TimeLine
Column Family: Tweets
LMNO timestamp :
175695372
corpo : estou tão
equivicado?
user : carlos
AXML timestamp :
125695372
corpo: recebeu a
minha mensagem? user : alice
DEXDL timestamp :
155695372
corpo: ouvi o que diz. user : eve
BADFO timestamp :
135695372
corpo : manda-me a
senha.
user : mallory
Tweets
Column Family: UserLine
bob 127695372 : XENY126695372 : XCVL 200000000 : LUMP
Column Family: TimeLine
alice
125795372 : SDFG 125800000 : XCVL 1279900000 : FDHL200000000 : LUMP
125695372 : AXML
bob
125795372 : SDFG 126895372 : XCVN 200000000 : LUMP
eve
1279900000 : FDHL 200000000 : LUMP
UserLine e TimeLine
Exemplo
Integração
http://otaviojava.github.io/Easy-Cassandra/
Obrigado
Otávio Santana
@otaviojava
https://github.com/otaviojava/
http://about.me/otaviojava

Mais conteúdo relacionado

Mais de Otávio Santana

Arquitetando soluções de computação em nuvem com Java
Arquitetando soluções de computação em nuvem com JavaArquitetando soluções de computação em nuvem com Java
Arquitetando soluções de computação em nuvem com JavaOtávio Santana
 
Build, run, and scale your Java applications end to end
Build, run, and scale your Java applications end to endBuild, run, and scale your Java applications end to end
Build, run, and scale your Java applications end to endOtávio Santana
 
Jakarta NoSQL: Meet the first Jakarta EE specification in the Cloud
Jakarta NoSQL: Meet the first Jakarta EE specification in the CloudJakarta NoSQL: Meet the first Jakarta EE specification in the Cloud
Jakarta NoSQL: Meet the first Jakarta EE specification in the CloudOtávio Santana
 
ORMs: Heroes or Villains Inside the Architecture?
ORMs: Heroes or Villains Inside the Architecture?ORMs: Heroes or Villains Inside the Architecture?
ORMs: Heroes or Villains Inside the Architecture?Otávio Santana
 
Jakarta EE Meets NoSQL at the Cloud Age
Jakarta EE Meets NoSQL at the Cloud AgeJakarta EE Meets NoSQL at the Cloud Age
Jakarta EE Meets NoSQL at the Cloud AgeOtávio Santana
 
Boost your APIs with GraphQL 1.0
Boost your APIs with GraphQL 1.0Boost your APIs with GraphQL 1.0
Boost your APIs with GraphQL 1.0Otávio Santana
 
Jakarta EE Meets NoSQL in the Cloud Age [DEV6109]
Jakarta EE Meets NoSQL in the Cloud Age [DEV6109]Jakarta EE Meets NoSQL in the Cloud Age [DEV6109]
Jakarta EE Meets NoSQL in the Cloud Age [DEV6109]Otávio Santana
 
Let’s Make Graph Databases Fun Again with Java [DEV6043]
Let’s Make Graph Databases Fun Again with Java [DEV6043]Let’s Make Graph Databases Fun Again with Java [DEV6043]
Let’s Make Graph Databases Fun Again with Java [DEV6043]Otávio Santana
 
Eclipse JNoSQL: One API to Many NoSQL Databases - BYOL [HOL5998]
Eclipse JNoSQL: One API to Many NoSQL Databases - BYOL [HOL5998]Eclipse JNoSQL: One API to Many NoSQL Databases - BYOL [HOL5998]
Eclipse JNoSQL: One API to Many NoSQL Databases - BYOL [HOL5998]Otávio Santana
 
The new generation of data persistence with graph
The new generation of data persistence with graphThe new generation of data persistence with graph
The new generation of data persistence with graphOtávio Santana
 
Eclipse JNoSQL updates from JCP September 11
Eclipse JNoSQL updates from JCP September 11Eclipse JNoSQL updates from JCP September 11
Eclipse JNoSQL updates from JCP September 11Otávio Santana
 
Stateless Microservice Security via JWT and MicroProfile - Guatemala
Stateless Microservice Security via JWT and MicroProfile - GuatemalaStateless Microservice Security via JWT and MicroProfile - Guatemala
Stateless Microservice Security via JWT and MicroProfile - GuatemalaOtávio Santana
 
Stateless Microservice Security via JWT and MicroProfile - Mexico
Stateless Microservice Security via JWT and MicroProfile - MexicoStateless Microservice Security via JWT and MicroProfile - Mexico
Stateless Microservice Security via JWT and MicroProfile - MexicoOtávio Santana
 
Eclipse JNoSQL: The Definitive Solution for Java and NoSQL Database
Eclipse JNoSQL: The Definitive Solution for Java and NoSQL DatabaseEclipse JNoSQL: The Definitive Solution for Java and NoSQL Database
Eclipse JNoSQL: The Definitive Solution for Java and NoSQL DatabaseOtávio Santana
 
Management 3.0 and open source
Management 3.0 and open sourceManagement 3.0 and open source
Management 3.0 and open sourceOtávio Santana
 
Building a Recommendation Engine with Java EE
Building a Recommendation Engine with Java EEBuilding a Recommendation Engine with Java EE
Building a Recommendation Engine with Java EEOtávio Santana
 
Cassandra NoSQL, NoLimits!
Cassandra NoSQL, NoLimits!Cassandra NoSQL, NoLimits!
Cassandra NoSQL, NoLimits!Otávio Santana
 
Disasters of the century NoSQL
Disasters of the century NoSQLDisasters of the century NoSQL
Disasters of the century NoSQLOtávio Santana
 
Building a recommendation engine with tinker pop
Building a recommendation engine with tinker popBuilding a recommendation engine with tinker pop
Building a recommendation engine with tinker popOtávio Santana
 

Mais de Otávio Santana (20)

Arquitetando soluções de computação em nuvem com Java
Arquitetando soluções de computação em nuvem com JavaArquitetando soluções de computação em nuvem com Java
Arquitetando soluções de computação em nuvem com Java
 
Build, run, and scale your Java applications end to end
Build, run, and scale your Java applications end to endBuild, run, and scale your Java applications end to end
Build, run, and scale your Java applications end to end
 
Jakarta NoSQL: Meet the first Jakarta EE specification in the Cloud
Jakarta NoSQL: Meet the first Jakarta EE specification in the CloudJakarta NoSQL: Meet the first Jakarta EE specification in the Cloud
Jakarta NoSQL: Meet the first Jakarta EE specification in the Cloud
 
ORMs: Heroes or Villains Inside the Architecture?
ORMs: Heroes or Villains Inside the Architecture?ORMs: Heroes or Villains Inside the Architecture?
ORMs: Heroes or Villains Inside the Architecture?
 
Jakarta EE Meets NoSQL at the Cloud Age
Jakarta EE Meets NoSQL at the Cloud AgeJakarta EE Meets NoSQL at the Cloud Age
Jakarta EE Meets NoSQL at the Cloud Age
 
Boost your APIs with GraphQL 1.0
Boost your APIs with GraphQL 1.0Boost your APIs with GraphQL 1.0
Boost your APIs with GraphQL 1.0
 
Jakarta EE Meets NoSQL in the Cloud Age [DEV6109]
Jakarta EE Meets NoSQL in the Cloud Age [DEV6109]Jakarta EE Meets NoSQL in the Cloud Age [DEV6109]
Jakarta EE Meets NoSQL in the Cloud Age [DEV6109]
 
Let’s Make Graph Databases Fun Again with Java [DEV6043]
Let’s Make Graph Databases Fun Again with Java [DEV6043]Let’s Make Graph Databases Fun Again with Java [DEV6043]
Let’s Make Graph Databases Fun Again with Java [DEV6043]
 
Eclipse JNoSQL: One API to Many NoSQL Databases - BYOL [HOL5998]
Eclipse JNoSQL: One API to Many NoSQL Databases - BYOL [HOL5998]Eclipse JNoSQL: One API to Many NoSQL Databases - BYOL [HOL5998]
Eclipse JNoSQL: One API to Many NoSQL Databases - BYOL [HOL5998]
 
The new generation of data persistence with graph
The new generation of data persistence with graphThe new generation of data persistence with graph
The new generation of data persistence with graph
 
Eclipse JNoSQL updates from JCP September 11
Eclipse JNoSQL updates from JCP September 11Eclipse JNoSQL updates from JCP September 11
Eclipse JNoSQL updates from JCP September 11
 
Stateless Microservice Security via JWT and MicroProfile - Guatemala
Stateless Microservice Security via JWT and MicroProfile - GuatemalaStateless Microservice Security via JWT and MicroProfile - Guatemala
Stateless Microservice Security via JWT and MicroProfile - Guatemala
 
Stateless Microservice Security via JWT and MicroProfile - Mexico
Stateless Microservice Security via JWT and MicroProfile - MexicoStateless Microservice Security via JWT and MicroProfile - Mexico
Stateless Microservice Security via JWT and MicroProfile - Mexico
 
Eclipse JNoSQL: The Definitive Solution for Java and NoSQL Database
Eclipse JNoSQL: The Definitive Solution for Java and NoSQL DatabaseEclipse JNoSQL: The Definitive Solution for Java and NoSQL Database
Eclipse JNoSQL: The Definitive Solution for Java and NoSQL Database
 
Polyglot persistence
Polyglot persistencePolyglot persistence
Polyglot persistence
 
Management 3.0 and open source
Management 3.0 and open sourceManagement 3.0 and open source
Management 3.0 and open source
 
Building a Recommendation Engine with Java EE
Building a Recommendation Engine with Java EEBuilding a Recommendation Engine with Java EE
Building a Recommendation Engine with Java EE
 
Cassandra NoSQL, NoLimits!
Cassandra NoSQL, NoLimits!Cassandra NoSQL, NoLimits!
Cassandra NoSQL, NoLimits!
 
Disasters of the century NoSQL
Disasters of the century NoSQLDisasters of the century NoSQL
Disasters of the century NoSQL
 
Building a recommendation engine with tinker pop
Building a recommendation engine with tinker popBuilding a recommendation engine with tinker pop
Building a recommendation engine with tinker pop
 

Intro NOSQL Cassandra