SlideShare ist ein Scribd-Unternehmen logo
1 von 32
Downloaden Sie, um offline zu lesen
Banco de Dados NoSQL de
     código aberto
Jean Carlo Nascimento aka SUISSA   Nodeware
Líder Técnico                      http://www.nodeware.com.br
Email: suissa@nodeware.com.br      Twitter:@nodeware
Twitter: @osuissa
http://about.me/suissa
Sobre o autor
●   Desenvolvedor web há 8 anos
●   Formado pela UTF-PR em SI
●   Especialista em Desenvolvimento Web
●   Criador do Sampa.js e FrontinSampa
●   Evangelista Node.js e NoSQL
●   nosqlbr.com.br
●   javascriptbrasil.com
●   jquerybrasil.org
Tipos de Armazenamento
●   Coluna
●   Documento
●   Chave/Valor
●   Grafo
●   Object
●   XML
●   Mutimodel
BigTable
http://static.googleusercontent.
com/external_content/untrusted_dlcp/research.google.
com/pt-BR//archive/bigtable-osdi06.pdf
{
                       Cassandra
    name: "homeAddress",
    value: {
            street: {    name: "street",
                         value: "1234 x street",
                         timestamp: 123456789},
            city: { name: "city",
                     value: "san francisco",
                     timestamp: 123456789},
            zip: { name: "zip",
                     value: "94107",
                     timestamp: 123456789},
            }
}
Cassandra
●   O melhor do BigTable e Dynamo
●   Java
●   Licença Apache
●   Protocol personalizado, Thrift




http://cassandra.apache.org/
Cassandra
● Consulta por faixa de coluna e chaves
● BigTable-como características: colunas, famílias de
   coluna
● Tem índices secundários
● As gravações são muito mais rápido do que lê (!)
● Map / Reduce possível com Apache Hadoop




http://cassandra.apache.org/
Cassandra
Melhor usado: Quando você escreve mais do que você lê
(logging). Se todos os componentes do sistema deve ser em
Java.

Por exemplo: Bancos, setor financeiro (Embora não
necessariamente para transações financeiras, mas estas
indústrias são muito maiores do que isso). Ótimo para
aplicações em tempo real e análise de dados.




http://cassandra.apache.org/
Redis
 ●Super rápido
● C/C++
● Licença: BSD
● Telnet-like




http://redis.io/
Redis
●   Replicação master-slave
●   Possui transações
●   Valores podem expirar (como em um cache)
●   Pub/Sub permite implementação de aplicação de
    mensagens




http://redis.io/
Redis
Melhor uso: Para mudança rápida de dados com um
banco de dados de tamanho previsível (deve caber
principalmente na memória).

Exemplos: Os preços das ações. Analytics. Coleção de
dados em tempo real. Comunicação em tempo real.




http://redis.io/
MongoDB
 ● Written in: C++
 ● Mantém algumas propriedades favoráveis ​de SQL.
    (Query, index)
 ● Licença: AGPL
 ● Protocolo personalizado, REST




http://www.mongodb.org/
MongoDB
 ● Master / slave de replicação (failover automático com
    conjuntos de réplicas)
 ● Sharding embutido
 ● As consultas são expressões javascript
 ● Executa funções javascript do lado do servidor




http://www.mongodb.org/
MongoDB
 ● Usa arquivos de memória mapeada para
   armazenamento de dados
 ● Em sistemas de 32 bits, limitado a ~ 2.5Gb
 ● GridFS para armazenar grande de dados de metadados
 ● Tem indexação geoespacial




http://www.mongodb.org/
MongoDB
 Melhor usado: Se você precisar de consultas dinâmicas.
 Se você precisa de bom desempenho em um banco de
 dados grande. Sistemas de logging.

 Por exemplo: Para a maioria das coisas que você faria
 com MySQL ou PostgreSQL, mas ter colunas predefinidas
 realmenteseguram você.




http://www.mongodb.org/
Neo4J
 ●   Java
 ●   Grafos - dados conectados
 ●   Licença: GPL, AGPL/commercial
 ●   Protocolo HTTP/REST (ou incorporado no Java)




http://neo4j.org/
Neo4J
 ● Standalone, ou embutido em aplicações Java
 ● ACID completo (incluindo dados duráveis​​)
 ● Ambos os nós e os relacionamentos podem ter
    metadados
 ● Linguagem de consulta integrada ("Cypher")
 ● Linguagem "Gremlin" pode ser usada
 ● Indexação de nós e relacionamentos


http://neo4j.org/
Neo4J
 ●   Administrador web agradável auto-suficiente
 ●   Vários algoritmos de busca de caminho
 ●   Indexação de chaves e relacionamentos
 ●   Optimizado para ler




http://neo4j.org/
Neo4J
 Melhor usado: Para gráfico de estilo, ricos ou complexos,
 os dados interligados. Neo4j é bastante diferente dos
 outros neste sentido.

 Por exemplo: relações sociais, transportes públicos,
 mapas rodoviários, topologias de rede.




http://neo4j.org/
Banco de Dados NoSQL código aberto

Weitere ähnliche Inhalte

Was ist angesagt?

AJAX?? Não!! Asynchronous Javascript and... JSON!!
AJAX?? Não!! Asynchronous Javascript and... JSON!!AJAX?? Não!! Asynchronous Javascript and... JSON!!
AJAX?? Não!! Asynchronous Javascript and... JSON!!Lucas Brasilino
 
Descobrindo o Nginx - Um servidor web de alta performance
Descobrindo o Nginx - Um servidor web de alta performanceDescobrindo o Nginx - Um servidor web de alta performance
Descobrindo o Nginx - Um servidor web de alta performanceGustavo Ciello
 
O que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
O que você precisa saber para modelar bancos de dados NoSQL - Dani MonteiroO que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
O que você precisa saber para modelar bancos de dados NoSQL - Dani MonteiroiMasters
 
Estudo de caso do "O Curioso" (Rio on Rails)
Estudo de caso do "O Curioso" (Rio on Rails)Estudo de caso do "O Curioso" (Rio on Rails)
Estudo de caso do "O Curioso" (Rio on Rails)guestf4f70f
 
Alta Performance com Java
Alta Performance com JavaAlta Performance com Java
Alta Performance com JavaAlisson Pedrina
 
Node.js: 5 razões para começar a utilizar
Node.js: 5 razões para começar a utilizarNode.js: 5 razões para começar a utilizar
Node.js: 5 razões para começar a utilizarFilipe Falcão
 
NGiNX, o motor da sua aplicação web
NGiNX, o motor da sua aplicação webNGiNX, o motor da sua aplicação web
NGiNX, o motor da sua aplicação webernaniaz
 

Was ist angesagt? (11)

Talk at QConSP
Talk at QConSPTalk at QConSP
Talk at QConSP
 
AJAX?? Não!! Asynchronous Javascript and... JSON!!
AJAX?? Não!! Asynchronous Javascript and... JSON!!AJAX?? Não!! Asynchronous Javascript and... JSON!!
AJAX?? Não!! Asynchronous Javascript and... JSON!!
 
Node.js
Node.jsNode.js
Node.js
 
Descobrindo o Nginx - Um servidor web de alta performance
Descobrindo o Nginx - Um servidor web de alta performanceDescobrindo o Nginx - Um servidor web de alta performance
Descobrindo o Nginx - Um servidor web de alta performance
 
O que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
O que você precisa saber para modelar bancos de dados NoSQL - Dani MonteiroO que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
O que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
 
AWS 101 - VBronwBag Brasil
AWS 101 - VBronwBag BrasilAWS 101 - VBronwBag Brasil
AWS 101 - VBronwBag Brasil
 
Estudo de caso do "O Curioso" (Rio on Rails)
Estudo de caso do "O Curioso" (Rio on Rails)Estudo de caso do "O Curioso" (Rio on Rails)
Estudo de caso do "O Curioso" (Rio on Rails)
 
Alta Performance com Java
Alta Performance com JavaAlta Performance com Java
Alta Performance com Java
 
Node.js: 5 razões para começar a utilizar
Node.js: 5 razões para começar a utilizarNode.js: 5 razões para começar a utilizar
Node.js: 5 razões para começar a utilizar
 
NGiNX, o motor da sua aplicação web
NGiNX, o motor da sua aplicação webNGiNX, o motor da sua aplicação web
NGiNX, o motor da sua aplicação web
 
Postgres nuvens
Postgres nuvensPostgres nuvens
Postgres nuvens
 

Ähnlich wie Banco de Dados NoSQL código aberto

PostgreSQL: O melhor banco de dados Universo
PostgreSQL: O melhor banco de dados UniversoPostgreSQL: O melhor banco de dados Universo
PostgreSQL: O melhor banco de dados Universoelliando dias
 
2º Meritt CC - NoSQL - E o Futuro dos Bancos de Dados na Web
2º Meritt CC - NoSQL - E o Futuro dos Bancos de Dados na Web2º Meritt CC - NoSQL - E o Futuro dos Bancos de Dados na Web
2º Meritt CC - NoSQL - E o Futuro dos Bancos de Dados na WebMeritt - Cada Aluno é Único
 
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.Ambiente Livre
 
Como criar infraestrutura de sites para receber milhões de usuários?
Como criar infraestrutura de sites para receber milhões de usuários?Como criar infraestrutura de sites para receber milhões de usuários?
Como criar infraestrutura de sites para receber milhões de usuários?Marcelo Dieder
 
Oficina técnica da Infraestrutura Nacional de Dados Abertos - INDA
Oficina técnica da Infraestrutura Nacional de Dados Abertos - INDAOficina técnica da Infraestrutura Nacional de Dados Abertos - INDA
Oficina técnica da Infraestrutura Nacional de Dados Abertos - INDAnitaibezerra
 
Palestra Desenvolvimento Ágil para Web com ROR UVA
Palestra Desenvolvimento Ágil para Web com ROR UVAPalestra Desenvolvimento Ágil para Web com ROR UVA
Palestra Desenvolvimento Ágil para Web com ROR UVAThiago Cifani
 
Bancos de dados analíticos open source
Bancos de dados analíticos open sourceBancos de dados analíticos open source
Bancos de dados analíticos open sourceMatheus Espanhol
 
Utilizando NoSQL no desenvolvimento de soluções inteligentes
Utilizando NoSQL no desenvolvimento de soluções inteligentesUtilizando NoSQL no desenvolvimento de soluções inteligentes
Utilizando NoSQL no desenvolvimento de soluções inteligentesChristiano Anderson
 
Tuning Apache/MySQL/PHP para desenvolvedores
Tuning Apache/MySQL/PHP para desenvolvedoresTuning Apache/MySQL/PHP para desenvolvedores
Tuning Apache/MySQL/PHP para desenvolvedoresDouglas V. Pasqua
 
Modelos de computação distribuída no Hadoop
Modelos de computação distribuída no HadoopModelos de computação distribuída no Hadoop
Modelos de computação distribuída no HadoopBig Data Week São Paulo
 
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
 
Hangout Tempo Real Eventos - Nodejs - Os Primeiros Passos
Hangout  Tempo Real Eventos - Nodejs - Os Primeiros PassosHangout  Tempo Real Eventos - Nodejs - Os Primeiros Passos
Hangout Tempo Real Eventos - Nodejs - Os Primeiros PassosJackson F. de A. Mafra
 
Um milhao de usuários simultâneos
Um milhao de usuários simultâneosUm milhao de usuários simultâneos
Um milhao de usuários simultâneosFernando Ike
 
Oracle para PostgreSQL: Conseguir migrar e não parar UTI
Oracle para PostgreSQL: Conseguir migrar e não parar UTIOracle para PostgreSQL: Conseguir migrar e não parar UTI
Oracle para PostgreSQL: Conseguir migrar e não parar UTIFernando Ike
 
Big data para programadores convencionais
Big data para programadores convencionaisBig data para programadores convencionais
Big data para programadores convencionaisRoberto Oliveira
 

Ähnlich wie Banco de Dados NoSQL código aberto (20)

PostgreSQL: O melhor banco de dados Universo
PostgreSQL: O melhor banco de dados UniversoPostgreSQL: O melhor banco de dados Universo
PostgreSQL: O melhor banco de dados Universo
 
Bancos de dados NoSQL
Bancos de dados NoSQLBancos de dados NoSQL
Bancos de dados NoSQL
 
2º Meritt CC - NoSQL - E o Futuro dos Bancos de Dados na Web
2º Meritt CC - NoSQL - E o Futuro dos Bancos de Dados na Web2º Meritt CC - NoSQL - E o Futuro dos Bancos de Dados na Web
2º Meritt CC - NoSQL - E o Futuro dos Bancos de Dados na Web
 
Hadoop
HadoopHadoop
Hadoop
 
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
Escalabilidade Linear com o Banco de Dados NoSQL Apache Cassandra.
 
Hadoop
HadoopHadoop
Hadoop
 
Como criar infraestrutura de sites para receber milhões de usuários?
Como criar infraestrutura de sites para receber milhões de usuários?Como criar infraestrutura de sites para receber milhões de usuários?
Como criar infraestrutura de sites para receber milhões de usuários?
 
Oficina técnica da Infraestrutura Nacional de Dados Abertos - INDA
Oficina técnica da Infraestrutura Nacional de Dados Abertos - INDAOficina técnica da Infraestrutura Nacional de Dados Abertos - INDA
Oficina técnica da Infraestrutura Nacional de Dados Abertos - INDA
 
Palestra Desenvolvimento Ágil para Web com ROR UVA
Palestra Desenvolvimento Ágil para Web com ROR UVAPalestra Desenvolvimento Ágil para Web com ROR UVA
Palestra Desenvolvimento Ágil para Web com ROR UVA
 
Bancos de dados analíticos open source
Bancos de dados analíticos open sourceBancos de dados analíticos open source
Bancos de dados analíticos open source
 
Utilizando NoSQL no desenvolvimento de soluções inteligentes
Utilizando NoSQL no desenvolvimento de soluções inteligentesUtilizando NoSQL no desenvolvimento de soluções inteligentes
Utilizando NoSQL no desenvolvimento de soluções inteligentes
 
Tuning Apache/MySQL/PHP para desenvolvedores
Tuning Apache/MySQL/PHP para desenvolvedoresTuning Apache/MySQL/PHP para desenvolvedores
Tuning Apache/MySQL/PHP para desenvolvedores
 
Modelos de computação distribuída no Hadoop
Modelos de computação distribuída no HadoopModelos de computação distribuída no Hadoop
Modelos de computação distribuída no Hadoop
 
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
 
Hangout Tempo Real Eventos - Nodejs - Os Primeiros Passos
Hangout  Tempo Real Eventos - Nodejs - Os Primeiros PassosHangout  Tempo Real Eventos - Nodejs - Os Primeiros Passos
Hangout Tempo Real Eventos - Nodejs - Os Primeiros Passos
 
Spring data
Spring dataSpring data
Spring data
 
Um milhao de usuários simultâneos
Um milhao de usuários simultâneosUm milhao de usuários simultâneos
Um milhao de usuários simultâneos
 
Oracle para PostgreSQL: Conseguir migrar e não parar UTI
Oracle para PostgreSQL: Conseguir migrar e não parar UTIOracle para PostgreSQL: Conseguir migrar e não parar UTI
Oracle para PostgreSQL: Conseguir migrar e não parar UTI
 
NoSql e NewSql
NoSql e NewSqlNoSql e NewSql
NoSql e NewSql
 
Big data para programadores convencionais
Big data para programadores convencionaisBig data para programadores convencionais
Big data para programadores convencionais
 

Mehr von Suissa

ES6 funcional TDC - Suissa
ES6 funcional TDC - SuissaES6 funcional TDC - Suissa
ES6 funcional TDC - SuissaSuissa
 
TypeScript - Olhe teu tipo, script slides
TypeScript - Olhe teu tipo, script slidesTypeScript - Olhe teu tipo, script slides
TypeScript - Olhe teu tipo, script slidesSuissa
 
Mongoose - Melhores práticas usando MongoDB e Node.js
Mongoose - Melhores práticas usando MongoDB e Node.jsMongoose - Melhores práticas usando MongoDB e Node.js
Mongoose - Melhores práticas usando MongoDB e Node.jsSuissa
 
Atomic design
Atomic design Atomic design
Atomic design Suissa
 
Palestra node.js
Palestra   node.js Palestra   node.js
Palestra node.js Suissa
 
Be MEAN JSConf Uruguay - Suissa
Be MEAN JSConf Uruguay - SuissaBe MEAN JSConf Uruguay - Suissa
Be MEAN JSConf Uruguay - SuissaSuissa
 
Atomic design
Atomic designAtomic design
Atomic designSuissa
 
Be MEAN
Be MEANBe MEAN
Be MEANSuissa
 
Be mean
Be meanBe mean
Be meanSuissa
 
Devcast node.js e mongo db o casamento perfeito
Devcast   node.js e mongo db o casamento perfeitoDevcast   node.js e mongo db o casamento perfeito
Devcast node.js e mongo db o casamento perfeitoSuissa
 
Flisol - Nodejs e MongoDb o casamento perfeito
Flisol - Nodejs e MongoDb o casamento perfeitoFlisol - Nodejs e MongoDb o casamento perfeito
Flisol - Nodejs e MongoDb o casamento perfeitoSuissa
 
Ph pn rio 2012 - conheça seu primeiro banco de dados orientado a grafos
Ph pn rio 2012 - conheça seu primeiro banco de dados orientado a grafosPh pn rio 2012 - conheça seu primeiro banco de dados orientado a grafos
Ph pn rio 2012 - conheça seu primeiro banco de dados orientado a grafosSuissa
 
Javascript moderno
Javascript modernoJavascript moderno
Javascript modernoSuissa
 
DevDay - O elo perdido: sincronizando webapps
DevDay - O elo perdido: sincronizando webappsDevDay - O elo perdido: sincronizando webapps
DevDay - O elo perdido: sincronizando webappsSuissa
 
7 masters wordpress - advanced queries
7 masters   wordpress - advanced queries7 masters   wordpress - advanced queries
7 masters wordpress - advanced queriesSuissa
 
Javascript moderno
Javascript modernoJavascript moderno
Javascript modernoSuissa
 
Curso mongo db com php
Curso mongo db com phpCurso mongo db com php
Curso mongo db com phpSuissa
 
Html5 storage api
Html5 storage apiHtml5 storage api
Html5 storage apiSuissa
 
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio Suissa
 
Diagrama de classe
Diagrama de classeDiagrama de classe
Diagrama de classeSuissa
 

Mehr von Suissa (20)

ES6 funcional TDC - Suissa
ES6 funcional TDC - SuissaES6 funcional TDC - Suissa
ES6 funcional TDC - Suissa
 
TypeScript - Olhe teu tipo, script slides
TypeScript - Olhe teu tipo, script slidesTypeScript - Olhe teu tipo, script slides
TypeScript - Olhe teu tipo, script slides
 
Mongoose - Melhores práticas usando MongoDB e Node.js
Mongoose - Melhores práticas usando MongoDB e Node.jsMongoose - Melhores práticas usando MongoDB e Node.js
Mongoose - Melhores práticas usando MongoDB e Node.js
 
Atomic design
Atomic design Atomic design
Atomic design
 
Palestra node.js
Palestra   node.js Palestra   node.js
Palestra node.js
 
Be MEAN JSConf Uruguay - Suissa
Be MEAN JSConf Uruguay - SuissaBe MEAN JSConf Uruguay - Suissa
Be MEAN JSConf Uruguay - Suissa
 
Atomic design
Atomic designAtomic design
Atomic design
 
Be MEAN
Be MEANBe MEAN
Be MEAN
 
Be mean
Be meanBe mean
Be mean
 
Devcast node.js e mongo db o casamento perfeito
Devcast   node.js e mongo db o casamento perfeitoDevcast   node.js e mongo db o casamento perfeito
Devcast node.js e mongo db o casamento perfeito
 
Flisol - Nodejs e MongoDb o casamento perfeito
Flisol - Nodejs e MongoDb o casamento perfeitoFlisol - Nodejs e MongoDb o casamento perfeito
Flisol - Nodejs e MongoDb o casamento perfeito
 
Ph pn rio 2012 - conheça seu primeiro banco de dados orientado a grafos
Ph pn rio 2012 - conheça seu primeiro banco de dados orientado a grafosPh pn rio 2012 - conheça seu primeiro banco de dados orientado a grafos
Ph pn rio 2012 - conheça seu primeiro banco de dados orientado a grafos
 
Javascript moderno
Javascript modernoJavascript moderno
Javascript moderno
 
DevDay - O elo perdido: sincronizando webapps
DevDay - O elo perdido: sincronizando webappsDevDay - O elo perdido: sincronizando webapps
DevDay - O elo perdido: sincronizando webapps
 
7 masters wordpress - advanced queries
7 masters   wordpress - advanced queries7 masters   wordpress - advanced queries
7 masters wordpress - advanced queries
 
Javascript moderno
Javascript modernoJavascript moderno
Javascript moderno
 
Curso mongo db com php
Curso mongo db com phpCurso mongo db com php
Curso mongo db com php
 
Html5 storage api
Html5 storage apiHtml5 storage api
Html5 storage api
 
Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio Palestra sobre MongoDB com PHP no PHP'n'Rio
Palestra sobre MongoDB com PHP no PHP'n'Rio
 
Diagrama de classe
Diagrama de classeDiagrama de classe
Diagrama de classe
 

Banco de Dados NoSQL código aberto

  • 1. Banco de Dados NoSQL de código aberto Jean Carlo Nascimento aka SUISSA Nodeware Líder Técnico http://www.nodeware.com.br Email: suissa@nodeware.com.br Twitter:@nodeware Twitter: @osuissa http://about.me/suissa
  • 2. Sobre o autor ● Desenvolvedor web há 8 anos ● Formado pela UTF-PR em SI ● Especialista em Desenvolvimento Web ● Criador do Sampa.js e FrontinSampa ● Evangelista Node.js e NoSQL ● nosqlbr.com.br ● javascriptbrasil.com ● jquerybrasil.org
  • 3.
  • 4.
  • 5.
  • 6. Tipos de Armazenamento ● Coluna ● Documento ● Chave/Valor ● Grafo ● Object ● XML ● Mutimodel
  • 7.
  • 9.
  • 10.
  • 11. { Cassandra name: "homeAddress", value: { street: { name: "street", value: "1234 x street", timestamp: 123456789}, city: { name: "city", value: "san francisco", timestamp: 123456789}, zip: { name: "zip", value: "94107", timestamp: 123456789}, } }
  • 12. Cassandra ● O melhor do BigTable e Dynamo ● Java ● Licença Apache ● Protocol personalizado, Thrift http://cassandra.apache.org/
  • 13. Cassandra ● Consulta por faixa de coluna e chaves ● BigTable-como características: colunas, famílias de coluna ● Tem índices secundários ● As gravações são muito mais rápido do que lê (!) ● Map / Reduce possível com Apache Hadoop http://cassandra.apache.org/
  • 14. Cassandra Melhor usado: Quando você escreve mais do que você lê (logging). Se todos os componentes do sistema deve ser em Java. Por exemplo: Bancos, setor financeiro (Embora não necessariamente para transações financeiras, mas estas indústrias são muito maiores do que isso). Ótimo para aplicações em tempo real e análise de dados. http://cassandra.apache.org/
  • 15.
  • 16.
  • 17. Redis ●Super rápido ● C/C++ ● Licença: BSD ● Telnet-like http://redis.io/
  • 18. Redis ● Replicação master-slave ● Possui transações ● Valores podem expirar (como em um cache) ● Pub/Sub permite implementação de aplicação de mensagens http://redis.io/
  • 19. Redis Melhor uso: Para mudança rápida de dados com um banco de dados de tamanho previsível (deve caber principalmente na memória). Exemplos: Os preços das ações. Analytics. Coleção de dados em tempo real. Comunicação em tempo real. http://redis.io/
  • 20.
  • 21.
  • 22. MongoDB ● Written in: C++ ● Mantém algumas propriedades favoráveis ​de SQL. (Query, index) ● Licença: AGPL ● Protocolo personalizado, REST http://www.mongodb.org/
  • 23. MongoDB ● Master / slave de replicação (failover automático com conjuntos de réplicas) ● Sharding embutido ● As consultas são expressões javascript ● Executa funções javascript do lado do servidor http://www.mongodb.org/
  • 24. MongoDB ● Usa arquivos de memória mapeada para armazenamento de dados ● Em sistemas de 32 bits, limitado a ~ 2.5Gb ● GridFS para armazenar grande de dados de metadados ● Tem indexação geoespacial http://www.mongodb.org/
  • 25. MongoDB Melhor usado: Se você precisar de consultas dinâmicas. Se você precisa de bom desempenho em um banco de dados grande. Sistemas de logging. Por exemplo: Para a maioria das coisas que você faria com MySQL ou PostgreSQL, mas ter colunas predefinidas realmenteseguram você. http://www.mongodb.org/
  • 26.
  • 27.
  • 28. Neo4J ● Java ● Grafos - dados conectados ● Licença: GPL, AGPL/commercial ● Protocolo HTTP/REST (ou incorporado no Java) http://neo4j.org/
  • 29. Neo4J ● Standalone, ou embutido em aplicações Java ● ACID completo (incluindo dados duráveis​​) ● Ambos os nós e os relacionamentos podem ter metadados ● Linguagem de consulta integrada ("Cypher") ● Linguagem "Gremlin" pode ser usada ● Indexação de nós e relacionamentos http://neo4j.org/
  • 30. Neo4J ● Administrador web agradável auto-suficiente ● Vários algoritmos de busca de caminho ● Indexação de chaves e relacionamentos ● Optimizado para ler http://neo4j.org/
  • 31. Neo4J Melhor usado: Para gráfico de estilo, ricos ou complexos, os dados interligados. Neo4j é bastante diferente dos outros neste sentido. Por exemplo: relações sociais, transportes públicos, mapas rodoviários, topologias de rede. http://neo4j.org/