SlideShare una empresa de Scribd logo
1 de 3
Descargar para leer sin conexión
����� �� ����� � ������������� ��� ��������������� �� ���� � ����� �




                                                                                            www.sxc.hu
� � � � � �� � �� � � � � � �
� � � �� �� ����� � �� �� � ���
��� ������ ��������� �� �������




   Parte 2:                                    No artigo anterior demonstrou­se um
                                         conceito básico sobre os bancos NOSQL
   Classificação                         além de fazer comparações entre os bancos
                                         “tradicionais” versus o NOSQL. Nesse artigo
   de bancos NOSQL                       abordaremos os tipos de bancos NOSQL,
                                         além de sua classificação e, demonstrare­
                                         mos também, alguns exemplos.
                                               Por serem novos bancos ainda não
                                         existem padrões. Por mais que dois bancos
                                         possuam exatamente as mesmas classifica­
                                         ções não é absoluto afirmar que eles possu­
                                         em os mesmo recursos e que fazem as
                                         mesmas coisas. Isso sem falar no grande
                                         trabalho que haverá na mudança de um ban­
                                         co NOSQL para outro, mesmo sendo seme­
                                         lhantes.
                                              Existem hoje diversos SGBDs que se
                                         encaixam com o NOSQL. Eles são classifi­
                                         cados por: Arquitetura, Armazenamento,

   �������� �����   � � ������ � � �                                                   ��
����� �� ����� � ������������� ��� ��������������� �� ���� � ����� �


Modelo de Dados:                                ­ Redis

Arquitetura                                     Disco:
      Na arquitetura dividem­se em dois ti­ ­ CouchDb
pos: distribuídos e não distribuídos. Os distri­ ­ MongoDb
buídos tomam a responsabilidade pela
                                                 ­ Riak
partição dos dados e pela sua replicação.
                                                 ­ Voldemort
Distribuídos :
­ Amazon Dynamo                                 Configurável
                                                ­ BigTable
­ Scalaris
                                                ­ Cassandra
­ Voldemort
                                                ­ Hbase
­ CouchDb
                                                ­ HyperTable
­ Riak
­ MongoDb                                       Modelo de Dados
­ BigTable                                           O Modelo de Dados define como a in­
                                                formação é armazenada e estruturada dentro
­ Cassandra
                                                do banco.
­ HyperTable
                                                ­ Chave/Valor Possui uma estrutura muito
­ HBase                                         semelhante a do Java.util.Map, onde pode­
                                                mos armazenar uma chave e seu valor. Esse
Não distribuídos:                               valor pode ser qualquer informação.
­ Redis
                                                ­ Amazon Dynamo
­ Tokyo Tyrant
                                                ­ Amazon S3
­ MemcacheDb
                                                ­ Redis
­ Amazon SimpleDb
                                                ­ Scalaris
Armazenamento                                   ­ Voldemort
      São aqueles que armazenam dados
em disco e na memória. Esta diferenciação       Documento
é importante pois no caso da gravação em              Este modelo permite armazenar qual­
disco você vai precisar de um cache explici­    quer documento, sem a necessidade de defi­
to. Já os dados armazenados em memória          nir previamente sua estrutura. O documento
não são duráveis. Um ponto interessante a       é composto por inúmeros campos, com tipos
ser avaliado é que no disco os dados tem        de dados diversos ­ inclusive um campo po­
menos possibilidade de serem perdidos, no       de conter um outro, com uma estrutura se­
entanto, o custo de I/O é altíssimo. Em rela­   melhante a um arquivo XML.
ção à memória, apesar do acesso ser mais        ­ Amazon SimpleDb
rápido, deve­se levar em conta o fato dos da­
                                                ­ Apache Couchdb
dos ficarem em regiões voláteis.
                                                ­ MongoDb
Memória:                                        ­ Riak
­ Scalaris


�������� �����   � � ������ � � �                                                            ��
����� �� ����� � ������������� ��� ��������������� �� ���� � ����� �


Colunas                                                amigo de, mora em, comprado por).
      Esse modelo tornou­se popular através            ­ Neo4j
do paper BigTable do Google, com o objetivo
de montar um sistema de armazenamento                  ­ InfoGrid
de dados distribuído. Projetado para ter um            ­ Sones
alto grau de escalabilidade e de volume de
                                                       ­ HyperGraphDB
dados é composto por três componentes
­ Keyspace: Semelhante a um banco de da­ Conclusão:
dos relacional tem como função agrupar um            Neste artigo falou­se sobre os diversos
conjunto de Famílias de Colunas.               tipos de bancos NOSQL, além de classificá­
­ Família de Colunas: Semelhante a uma ta­ los por arquitetura, armazenamento e mode­
bela no modelo relacional, organiza as colu­ lo de dados. Conclui­se que, com o grande
nas. Faz uso de uma chave única, que traz número de aplicações e suas diversidade, foi
flexibilidade ao modelo sem poluir as linhas necessário a criação de algumas formas de
com colunas nulas.                             armazenamento para atender melhor um re­
                                               quisito específico. Finalizando uma breve in­
­ Coluna: É uma tupla composta por nome,
                                               trodução sobre o NOSQL.
timestamp e valor, onde os dados são real­
mente armazenados.                                   No próximo artigo abordaremos o Cas­
                                               sandra e suas características.
      Duas características adicionais e impor­
tantes deste modelo são a forma de consul­
ta, que pode ser executada apenas através
da chave das linhas de uma família de colu­
nas, e a necessidade de definir previamente
                                               Referências
o conjunto de colunas que podem ser arma­ __ Porcelli, Alexandre: Java Magazine nº 86 Introdu­
zenadas em cada família.                       ção ao NOSQL
­ Cassandra                                            __ Ferreira, Edmar: http://va.mu/TfSR
­ Google BigTable                                      __ Cassandra: http://va.mu/TixL
­ HBase                                                __ Reis, Valéria Quadros dos: http://va.mu/TfST
­ Hyperbase
      Grafo (whiteboard friendly) é uma es­
trutura de dados que conecta um conjunto de
vértices através de um conjunto de arestas.
Os bancos de dados de grafo moderno su­
portam estruturas de grafo multi­relacionais, ������ ��������� �� �������
onde existem tipos diferentes de vértices (re­ ������� �� ����� �� ������������� ����
                                               ��������� �� ��������� �� ������
presentando pessoas, lugares, itens) e dife­ ����������� ������� ���������� �������� �� ����
rentes tipos de arestas (como por exemplo �� ������� �������� �� ������ �� �����.




�������� �����   � � ������ � � �                                                                        ��

Más contenido relacionado

La actualidad más candente

NoSQL, Base VS ACID e Teorema CAP
NoSQL, Base VS ACID e Teorema CAPNoSQL, Base VS ACID e Teorema CAP
NoSQL, Base VS ACID e Teorema CAPAricelio Souza
 
Sistemas NoSQL, surgimento, características e exemplos
Sistemas NoSQL, surgimento, características e exemplosSistemas NoSQL, surgimento, características e exemplos
Sistemas NoSQL, surgimento, características e exemplosAricelio Souza
 
DBA Brasil 2.0 NOSql Apache Cassandra para DBAs
DBA Brasil 2.0   NOSql Apache Cassandra para DBAsDBA Brasil 2.0   NOSql Apache Cassandra para DBAs
DBA Brasil 2.0 NOSql Apache Cassandra para DBAsRonaldo Leite Martins
 
NoSQL Familia de Colunas Monografia
NoSQL Familia de Colunas MonografiaNoSQL Familia de Colunas Monografia
NoSQL Familia de Colunas MonografiaAugusto Giles
 
Introducao aos Bancos de Dados Não-relacionais
Introducao aos Bancos de Dados Não-relacionaisIntroducao aos Bancos de Dados Não-relacionais
Introducao aos Bancos de Dados Não-relacionaisMauricio De Diana
 
NoSQL: onde, como e por quê? Cassandra e MongoDB
NoSQL: onde, como e por quê? Cassandra e MongoDBNoSQL: onde, como e por quê? Cassandra e MongoDB
NoSQL: onde, como e por quê? Cassandra e MongoDBRodrigo Hjort
 
Conhecendo Apache Cassandra @Movile
Conhecendo Apache Cassandra  @MovileConhecendo Apache Cassandra  @Movile
Conhecendo Apache Cassandra @MovileEiti Kimura
 
Bancos de dados NoSQL - Redis e MongoDB
Bancos de dados NoSQL - Redis e MongoDBBancos de dados NoSQL - Redis e MongoDB
Bancos de dados NoSQL - Redis e MongoDBPaulo Bischof
 
NoSQL Familia de Colunas Apresentação
NoSQL Familia de Colunas ApresentaçãoNoSQL Familia de Colunas Apresentação
NoSQL Familia de Colunas ApresentaçãoAugusto Giles
 
Primeiros passos com o Cassandra
 Primeiros passos com o Cassandra  Primeiros passos com o Cassandra
Primeiros passos com o Cassandra Otávio Santana
 
No sql e as vantagens na utilização do mongodb
No sql e as vantagens na utilização do mongodbNo sql e as vantagens na utilização do mongodb
No sql e as vantagens na utilização do mongodbfabio perrella
 
Tirando água da rocha: escalabilidade via software no ExpressoV3
Tirando água da rocha: escalabilidade via software no ExpressoV3Tirando água da rocha: escalabilidade via software no ExpressoV3
Tirando água da rocha: escalabilidade via software no ExpressoV3Flávio Lisboa
 
Estudo comparativo entr bancos RDBMS, NoSQL e NewSQL
Estudo comparativo entr bancos RDBMS, NoSQL e NewSQLEstudo comparativo entr bancos RDBMS, NoSQL e NewSQL
Estudo comparativo entr bancos RDBMS, NoSQL e NewSQLOrlando Vitali
 

La actualidad más candente (20)

NoSQL, Base VS ACID e Teorema CAP
NoSQL, Base VS ACID e Teorema CAPNoSQL, Base VS ACID e Teorema CAP
NoSQL, Base VS ACID e Teorema CAP
 
Sistemas NoSQL, surgimento, características e exemplos
Sistemas NoSQL, surgimento, características e exemplosSistemas NoSQL, surgimento, características e exemplos
Sistemas NoSQL, surgimento, características e exemplos
 
DBA Brasil 2.0 NOSql Apache Cassandra para DBAs
DBA Brasil 2.0   NOSql Apache Cassandra para DBAsDBA Brasil 2.0   NOSql Apache Cassandra para DBAs
DBA Brasil 2.0 NOSql Apache Cassandra para DBAs
 
Cassandra NoSQL JUG Vale 2012
Cassandra NoSQL JUG Vale 2012Cassandra NoSQL JUG Vale 2012
Cassandra NoSQL JUG Vale 2012
 
NoSQL Familia de Colunas Monografia
NoSQL Familia de Colunas MonografiaNoSQL Familia de Colunas Monografia
NoSQL Familia de Colunas Monografia
 
Introducao aos Bancos de Dados Não-relacionais
Introducao aos Bancos de Dados Não-relacionaisIntroducao aos Bancos de Dados Não-relacionais
Introducao aos Bancos de Dados Não-relacionais
 
Cassandra - O básico
Cassandra - O básicoCassandra - O básico
Cassandra - O básico
 
Bancos de dados NoSQL
Bancos de dados NoSQLBancos de dados NoSQL
Bancos de dados NoSQL
 
Banco de Dados - NoSQL
Banco de Dados - NoSQLBanco de Dados - NoSQL
Banco de Dados - NoSQL
 
NoSQL: onde, como e por quê? Cassandra e MongoDB
NoSQL: onde, como e por quê? Cassandra e MongoDBNoSQL: onde, como e por quê? Cassandra e MongoDB
NoSQL: onde, como e por quê? Cassandra e MongoDB
 
Artigo Nosql
Artigo NosqlArtigo Nosql
Artigo Nosql
 
Conhecendo Apache Cassandra @Movile
Conhecendo Apache Cassandra  @MovileConhecendo Apache Cassandra  @Movile
Conhecendo Apache Cassandra @Movile
 
Bancos de dados NoSQL - Redis e MongoDB
Bancos de dados NoSQL - Redis e MongoDBBancos de dados NoSQL - Redis e MongoDB
Bancos de dados NoSQL - Redis e MongoDB
 
NoSQL Familia de Colunas Apresentação
NoSQL Familia de Colunas ApresentaçãoNoSQL Familia de Colunas Apresentação
NoSQL Familia de Colunas Apresentação
 
Primeiros passos com o Cassandra
 Primeiros passos com o Cassandra  Primeiros passos com o Cassandra
Primeiros passos com o Cassandra
 
No sql o_que_e_isso.key
No sql o_que_e_isso.keyNo sql o_que_e_isso.key
No sql o_que_e_isso.key
 
C-Store 7 years later
C-Store 7 years laterC-Store 7 years later
C-Store 7 years later
 
No sql e as vantagens na utilização do mongodb
No sql e as vantagens na utilização do mongodbNo sql e as vantagens na utilização do mongodb
No sql e as vantagens na utilização do mongodb
 
Tirando água da rocha: escalabilidade via software no ExpressoV3
Tirando água da rocha: escalabilidade via software no ExpressoV3Tirando água da rocha: escalabilidade via software no ExpressoV3
Tirando água da rocha: escalabilidade via software no ExpressoV3
 
Estudo comparativo entr bancos RDBMS, NoSQL e NewSQL
Estudo comparativo entr bancos RDBMS, NoSQL e NewSQLEstudo comparativo entr bancos RDBMS, NoSQL e NewSQL
Estudo comparativo entr bancos RDBMS, NoSQL e NewSQL
 

Destacado

Desenvolvimento web com php parte1
Desenvolvimento web com php parte1Desenvolvimento web com php parte1
Desenvolvimento web com php parte1Eduardo Mendes
 
Guia JEE com Frameworks
Guia JEE com FrameworksGuia JEE com Frameworks
Guia JEE com FrameworksCamilo Lopes
 
Java magazine july/august 2012
Java magazine july/august 2012Java magazine july/august 2012
Java magazine july/august 2012Otávio Santana
 
Evolucao de software - parte 2
Evolucao de software - parte 2Evolucao de software - parte 2
Evolucao de software - parte 2Eduardo Mendes
 
Movendo o java para Frente- Parte 1
Movendo o java para Frente- Parte 1Movendo o java para Frente- Parte 1
Movendo o java para Frente- Parte 1Otávio Santana
 
Introdução à Linguagem Ruby - Fundamentos - Parte 2
 Introdução à Linguagem Ruby - Fundamentos - Parte 2 Introdução à Linguagem Ruby - Fundamentos - Parte 2
Introdução à Linguagem Ruby - Fundamentos - Parte 2Eduardo Mendes
 
Introdução à Linguagem Ruby - Fundamentos
Introdução à Linguagem Ruby - FundamentosIntrodução à Linguagem Ruby - Fundamentos
Introdução à Linguagem Ruby - FundamentosEduardo Mendes
 
Desenvolvimento Web com PHP parte 7
Desenvolvimento Web com PHP parte 7Desenvolvimento Web com PHP parte 7
Desenvolvimento Web com PHP parte 7Eduardo Mendes
 
Movendo o java para Frente- projeto Coin
Movendo o java para Frente- projeto CoinMovendo o java para Frente- projeto Coin
Movendo o java para Frente- projeto CoinOtávio Santana
 
Desenvolvimento agil de_software
Desenvolvimento agil de_softwareDesenvolvimento agil de_software
Desenvolvimento agil de_softwareEduardo Mendes
 
Nos Batidores do FLISOL2010 Salvador com JEE6
Nos Batidores do FLISOL2010 Salvador com JEE6Nos Batidores do FLISOL2010 Salvador com JEE6
Nos Batidores do FLISOL2010 Salvador com JEE6Otávio Santana
 
Imergindo jvm[Apresentação ]
Imergindo jvm[Apresentação ]Imergindo jvm[Apresentação ]
Imergindo jvm[Apresentação ]Otávio Santana
 
Ekaaty na Feira de Formandos 2009
Ekaaty na Feira de Formandos 2009Ekaaty na Feira de Formandos 2009
Ekaaty na Feira de Formandos 2009Otávio Santana
 

Destacado (20)

Desenvolvimento web com php parte1
Desenvolvimento web com php parte1Desenvolvimento web com php parte1
Desenvolvimento web com php parte1
 
Guia JEE com Frameworks
Guia JEE com FrameworksGuia JEE com Frameworks
Guia JEE com Frameworks
 
Java magazine july/august 2012
Java magazine july/august 2012Java magazine july/august 2012
Java magazine july/august 2012
 
Evolucao de software - parte 2
Evolucao de software - parte 2Evolucao de software - parte 2
Evolucao de software - parte 2
 
Movendo o java para Frente- Parte 1
Movendo o java para Frente- Parte 1Movendo o java para Frente- Parte 1
Movendo o java para Frente- Parte 1
 
Gwt
GwtGwt
Gwt
 
Introdução à Linguagem Ruby - Fundamentos - Parte 2
 Introdução à Linguagem Ruby - Fundamentos - Parte 2 Introdução à Linguagem Ruby - Fundamentos - Parte 2
Introdução à Linguagem Ruby - Fundamentos - Parte 2
 
Introdução à Linguagem Ruby - Fundamentos
Introdução à Linguagem Ruby - FundamentosIntrodução à Linguagem Ruby - Fundamentos
Introdução à Linguagem Ruby - Fundamentos
 
GWT revista espirito
GWT revista espiritoGWT revista espirito
GWT revista espirito
 
Ekaaty day 2010
Ekaaty day 2010Ekaaty day 2010
Ekaaty day 2010
 
Desenvolvimento Web com PHP parte 7
Desenvolvimento Web com PHP parte 7Desenvolvimento Web com PHP parte 7
Desenvolvimento Web com PHP parte 7
 
Movendo o java para Frente- projeto Coin
Movendo o java para Frente- projeto CoinMovendo o java para Frente- projeto Coin
Movendo o java para Frente- projeto Coin
 
Porque java
Porque javaPorque java
Porque java
 
Refatoração
RefatoraçãoRefatoração
Refatoração
 
Desenvolvimento agil de_software
Desenvolvimento agil de_softwareDesenvolvimento agil de_software
Desenvolvimento agil de_software
 
Nos Batidores do FLISOL2010 Salvador com JEE6
Nos Batidores do FLISOL2010 Salvador com JEE6Nos Batidores do FLISOL2010 Salvador com JEE6
Nos Batidores do FLISOL2010 Salvador com JEE6
 
Imergindo jvm[Apresentação ]
Imergindo jvm[Apresentação ]Imergindo jvm[Apresentação ]
Imergindo jvm[Apresentação ]
 
Javaonebrasil2010
Javaonebrasil2010Javaonebrasil2010
Javaonebrasil2010
 
Adote OpenJDK
Adote OpenJDKAdote OpenJDK
Adote OpenJDK
 
Ekaaty na Feira de Formandos 2009
Ekaaty na Feira de Formandos 2009Ekaaty na Feira de Formandos 2009
Ekaaty na Feira de Formandos 2009
 

Similar a Cassandra com NOSQL parte 2

Desenvolvendo com NOSQL ­ Cassandra em Java: Parte 1 ­ Conceito NOSQL
Desenvolvendo com NOSQL ­ Cassandra em Java: Parte 1 ­ Conceito NOSQLDesenvolvendo com NOSQL ­ Cassandra em Java: Parte 1 ­ Conceito NOSQL
Desenvolvendo com NOSQL ­ Cassandra em Java: Parte 1 ­ Conceito NOSQLOtávio Santana
 
NoSQL x SQL: Bancos de Dados em Nuvens Computacionais
NoSQL x SQL: Bancos de Dados em Nuvens ComputacionaisNoSQL x SQL: Bancos de Dados em Nuvens Computacionais
NoSQL x SQL: Bancos de Dados em Nuvens ComputacionaisCarlo Pires
 
Apresentação Modelo de Gestão de dados para sistemas Colaborativos
Apresentação Modelo de Gestão de dados para sistemas ColaborativosApresentação Modelo de Gestão de dados para sistemas Colaborativos
Apresentação Modelo de Gestão de dados para sistemas ColaborativosMozart Dornelles Claret
 
No sql no desenvolvimento de aplicações web colaborativas
No sql no desenvolvimento de aplicações web colaborativasNo sql no desenvolvimento de aplicações web colaborativas
No sql no desenvolvimento de aplicações web colaborativasJoão Gabriel Lima
 
Banco de Dados NoSQL - Disciplina: Sistemas Distribuídos
Banco de Dados NoSQL - Disciplina: Sistemas DistribuídosBanco de Dados NoSQL - Disciplina: Sistemas Distribuídos
Banco de Dados NoSQL - Disciplina: Sistemas DistribuídosJoão Helis Bernardo
 
Introdução ao MongoDB (NoSQL)
Introdução ao MongoDB (NoSQL)Introdução ao MongoDB (NoSQL)
Introdução ao MongoDB (NoSQL)Thiago de Azeredo
 
L'esprit de l'escalier
L'esprit de l'escalierL'esprit de l'escalier
L'esprit de l'escalierGleicon Moraes
 
Bancos de dados nas nuvens: uma visão geral
Bancos de dados nas nuvens: uma visão geralBancos de dados nas nuvens: uma visão geral
Bancos de dados nas nuvens: uma visão geralPET Computação
 
Introdução ao Nosql
Introdução ao NosqlIntrodução ao Nosql
Introdução ao NosqlJosé Silva
 

Similar a Cassandra com NOSQL parte 2 (20)

Bancos de dados NoSQL: uma visão geral
Bancos de dados NoSQL: uma visão geralBancos de dados NoSQL: uma visão geral
Bancos de dados NoSQL: uma visão geral
 
Desenvolvendo com NOSQL ­ Cassandra em Java: Parte 1 ­ Conceito NOSQL
Desenvolvendo com NOSQL ­ Cassandra em Java: Parte 1 ­ Conceito NOSQLDesenvolvendo com NOSQL ­ Cassandra em Java: Parte 1 ­ Conceito NOSQL
Desenvolvendo com NOSQL ­ Cassandra em Java: Parte 1 ­ Conceito NOSQL
 
Nosql
NosqlNosql
Nosql
 
Comparação entre bancos de dados de modelo não relacional
Comparação entre bancos de dados de modelo não relacionalComparação entre bancos de dados de modelo não relacional
Comparação entre bancos de dados de modelo não relacional
 
NoSQL x SQL: Bancos de Dados em Nuvens Computacionais
NoSQL x SQL: Bancos de Dados em Nuvens ComputacionaisNoSQL x SQL: Bancos de Dados em Nuvens Computacionais
NoSQL x SQL: Bancos de Dados em Nuvens Computacionais
 
Bancos de dados NoSQL (Not only sql)
Bancos de dados NoSQL (Not only sql)Bancos de dados NoSQL (Not only sql)
Bancos de dados NoSQL (Not only sql)
 
Artigo couchdb
Artigo couchdbArtigo couchdb
Artigo couchdb
 
Apresentação Modelo de Gestão de dados para sistemas Colaborativos
Apresentação Modelo de Gestão de dados para sistemas ColaborativosApresentação Modelo de Gestão de dados para sistemas Colaborativos
Apresentação Modelo de Gestão de dados para sistemas Colaborativos
 
Introdução ao NoSQL
Introdução ao NoSQLIntrodução ao NoSQL
Introdução ao NoSQL
 
No sql no desenvolvimento de aplicações web colaborativas
No sql no desenvolvimento de aplicações web colaborativasNo sql no desenvolvimento de aplicações web colaborativas
No sql no desenvolvimento de aplicações web colaborativas
 
Banco de Dados NoSQL - Disciplina: Sistemas Distribuídos
Banco de Dados NoSQL - Disciplina: Sistemas DistribuídosBanco de Dados NoSQL - Disciplina: Sistemas Distribuídos
Banco de Dados NoSQL - Disciplina: Sistemas Distribuídos
 
Introdução ao MongoDB (NoSQL)
Introdução ao MongoDB (NoSQL)Introdução ao MongoDB (NoSQL)
Introdução ao MongoDB (NoSQL)
 
NoSql e NewSql
NoSql e NewSqlNoSql e NewSql
NoSql e NewSql
 
L'esprit de l'escalier
L'esprit de l'escalierL'esprit de l'escalier
L'esprit de l'escalier
 
Tema3.pptx
Tema3.pptxTema3.pptx
Tema3.pptx
 
Tema3.pptx
Tema3.pptxTema3.pptx
Tema3.pptx
 
Web Scale Data Management
Web Scale Data ManagementWeb Scale Data Management
Web Scale Data Management
 
Bancos de dados nas nuvens: uma visão geral
Bancos de dados nas nuvens: uma visão geralBancos de dados nas nuvens: uma visão geral
Bancos de dados nas nuvens: uma visão geral
 
Pesquisa sobre no sql
Pesquisa sobre no sqlPesquisa sobre no sql
Pesquisa sobre no sql
 
Introdução ao Nosql
Introdução ao NosqlIntrodução ao Nosql
Introdução ao Nosql
 

Más de Otávio Santana

NoSQL design pitfalls with Java
NoSQL design pitfalls with JavaNoSQL design pitfalls with Java
NoSQL design pitfalls with JavaOtávio Santana
 
Modern Cloud-Native Jakarta EE Frameworks: tips, challenges, and trends.
Modern Cloud-Native Jakarta EE Frameworks: tips, challenges, and trends.Modern Cloud-Native Jakarta EE Frameworks: tips, challenges, and trends.
Modern Cloud-Native Jakarta EE Frameworks: tips, challenges, and trends.Otávio Santana
 
Architecting Cloud Computing Solutions with Java [1.1]
Architecting Cloud Computing Solutions with Java [1.1]Architecting Cloud Computing Solutions with Java [1.1]
Architecting Cloud Computing Solutions with Java [1.1]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
 

Más de Otávio Santana (20)

NoSQL design pitfalls with Java
NoSQL design pitfalls with JavaNoSQL design pitfalls with Java
NoSQL design pitfalls with Java
 
Modern Cloud-Native Jakarta EE Frameworks: tips, challenges, and trends.
Modern Cloud-Native Jakarta EE Frameworks: tips, challenges, and trends.Modern Cloud-Native Jakarta EE Frameworks: tips, challenges, and trends.
Modern Cloud-Native Jakarta EE Frameworks: tips, challenges, and trends.
 
Architecting Cloud Computing Solutions with Java [1.1]
Architecting Cloud Computing Solutions with Java [1.1]Architecting Cloud Computing Solutions with Java [1.1]
Architecting Cloud Computing Solutions with Java [1.1]
 
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 com NOSQL parte 2

  • 1. ����� �� ����� � ������������� ��� ��������������� �� ���� � ����� � www.sxc.hu � � � � � �� � �� � � � � � � � � � �� �� ����� � �� �� � ��� ��� ������ ��������� �� ������� Parte 2: No artigo anterior demonstrou­se um conceito básico sobre os bancos NOSQL Classificação além de fazer comparações entre os bancos “tradicionais” versus o NOSQL. Nesse artigo de bancos NOSQL abordaremos os tipos de bancos NOSQL, além de sua classificação e, demonstrare­ mos também, alguns exemplos. Por serem novos bancos ainda não existem padrões. Por mais que dois bancos possuam exatamente as mesmas classifica­ ções não é absoluto afirmar que eles possu­ em os mesmo recursos e que fazem as mesmas coisas. Isso sem falar no grande trabalho que haverá na mudança de um ban­ co NOSQL para outro, mesmo sendo seme­ lhantes. Existem hoje diversos SGBDs que se encaixam com o NOSQL. Eles são classifi­ cados por: Arquitetura, Armazenamento, �������� ����� � � ������ � � � ��
  • 2. ����� �� ����� � ������������� ��� ��������������� �� ���� � ����� � Modelo de Dados: ­ Redis Arquitetura Disco: Na arquitetura dividem­se em dois ti­ ­ CouchDb pos: distribuídos e não distribuídos. Os distri­ ­ MongoDb buídos tomam a responsabilidade pela ­ Riak partição dos dados e pela sua replicação. ­ Voldemort Distribuídos : ­ Amazon Dynamo Configurável ­ BigTable ­ Scalaris ­ Cassandra ­ Voldemort ­ Hbase ­ CouchDb ­ HyperTable ­ Riak ­ MongoDb Modelo de Dados ­ BigTable O Modelo de Dados define como a in­ formação é armazenada e estruturada dentro ­ Cassandra do banco. ­ HyperTable ­ Chave/Valor Possui uma estrutura muito ­ HBase semelhante a do Java.util.Map, onde pode­ mos armazenar uma chave e seu valor. Esse Não distribuídos: valor pode ser qualquer informação. ­ Redis ­ Amazon Dynamo ­ Tokyo Tyrant ­ Amazon S3 ­ MemcacheDb ­ Redis ­ Amazon SimpleDb ­ Scalaris Armazenamento ­ Voldemort São aqueles que armazenam dados em disco e na memória. Esta diferenciação Documento é importante pois no caso da gravação em Este modelo permite armazenar qual­ disco você vai precisar de um cache explici­ quer documento, sem a necessidade de defi­ to. Já os dados armazenados em memória nir previamente sua estrutura. O documento não são duráveis. Um ponto interessante a é composto por inúmeros campos, com tipos ser avaliado é que no disco os dados tem de dados diversos ­ inclusive um campo po­ menos possibilidade de serem perdidos, no de conter um outro, com uma estrutura se­ entanto, o custo de I/O é altíssimo. Em rela­ melhante a um arquivo XML. ção à memória, apesar do acesso ser mais ­ Amazon SimpleDb rápido, deve­se levar em conta o fato dos da­ ­ Apache Couchdb dos ficarem em regiões voláteis. ­ MongoDb Memória: ­ Riak ­ Scalaris �������� ����� � � ������ � � � ��
  • 3. ����� �� ����� � ������������� ��� ��������������� �� ���� � ����� � Colunas amigo de, mora em, comprado por). Esse modelo tornou­se popular através ­ Neo4j do paper BigTable do Google, com o objetivo de montar um sistema de armazenamento ­ InfoGrid de dados distribuído. Projetado para ter um ­ Sones alto grau de escalabilidade e de volume de ­ HyperGraphDB dados é composto por três componentes ­ Keyspace: Semelhante a um banco de da­ Conclusão: dos relacional tem como função agrupar um Neste artigo falou­se sobre os diversos conjunto de Famílias de Colunas. tipos de bancos NOSQL, além de classificá­ ­ Família de Colunas: Semelhante a uma ta­ los por arquitetura, armazenamento e mode­ bela no modelo relacional, organiza as colu­ lo de dados. Conclui­se que, com o grande nas. Faz uso de uma chave única, que traz número de aplicações e suas diversidade, foi flexibilidade ao modelo sem poluir as linhas necessário a criação de algumas formas de com colunas nulas. armazenamento para atender melhor um re­ quisito específico. Finalizando uma breve in­ ­ Coluna: É uma tupla composta por nome, trodução sobre o NOSQL. timestamp e valor, onde os dados são real­ mente armazenados. No próximo artigo abordaremos o Cas­ sandra e suas características. Duas características adicionais e impor­ tantes deste modelo são a forma de consul­ ta, que pode ser executada apenas através da chave das linhas de uma família de colu­ nas, e a necessidade de definir previamente Referências o conjunto de colunas que podem ser arma­ __ Porcelli, Alexandre: Java Magazine nº 86 Introdu­ zenadas em cada família. ção ao NOSQL ­ Cassandra __ Ferreira, Edmar: http://va.mu/TfSR ­ Google BigTable __ Cassandra: http://va.mu/TixL ­ HBase __ Reis, Valéria Quadros dos: http://va.mu/TfST ­ Hyperbase Grafo (whiteboard friendly) é uma es­ trutura de dados que conecta um conjunto de vértices através de um conjunto de arestas. Os bancos de dados de grafo moderno su­ portam estruturas de grafo multi­relacionais, ������ ��������� �� ������� onde existem tipos diferentes de vértices (re­ ������� �� ����� �� ������������� ���� ��������� �� ��������� �� ������ presentando pessoas, lugares, itens) e dife­ ����������� ������� ���������� �������� �� ���� rentes tipos de arestas (como por exemplo �� ������� �������� �� ������ �� �����. �������� ����� � � ������ � � � ��