Your SlideShare is downloading. ×
Fisl   banco de dados no sql de código aberto
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Fisl banco de dados no sql de código aberto

1,693
views

Published on


0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,693
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
14
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Banco de Dados NoSQL de código abertoJean Carlo Nascimento aka SUISSA NodewareLíder Técnico http://www.nodeware.com.brEmail: suissa@nodeware.com.br Twitter:@nodewareTwitter: @osuissahttp://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. Tipos de Armazenamento● Coluna● Documento● Chave/Valor● Grafo● Object● XML● Mutimodel
  • 4. BigTablehttp://static.googleusercontent.com/external_content/untrusted_dlcp/research.google.com/pt-BR//archive/bigtable-osdi06.pdf
  • 5. { 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}, }}
  • 6. Cassandra● O melhor do BigTable e Dynamo● Java● Licença Apache● Protocol personalizado, Thrifthttp://cassandra.apache.org/
  • 7. 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 Hadoophttp://cassandra.apache.org/
  • 8. CassandraMelhor usado: Quando você escreve mais do que você lê(logging). Se todos os componentes do sistema deve ser emJava.Por exemplo: Bancos, setor financeiro (Embora nãonecessariamente para transações financeiras, mas estasindústrias são muito maiores do que isso). Ótimo paraaplicações em tempo real e análise de dados.http://cassandra.apache.org/
  • 9. Redis ●Super rápido● C/C++● Licença: BSD● Telnet-likehttp://redis.io/
  • 10. Redis● Replicação master-slave● Possui transações● Valores podem expirar (como em um cache)● Pub/Sub permite implementação de aplicação de mensagenshttp://redis.io/
  • 11. RedisMelhor uso: Para mudança rápida de dados com umbanco de dados de tamanho previsível (deve caberprincipalmente na memória).Exemplos: Os preços das ações. Analytics. Coleção dedados em tempo real. Comunicação em tempo real.http://redis.io/
  • 12. MongoDB ● Written in: C++ ● Mantém algumas propriedades favoráveis ​de SQL. (Query, index) ● Licença: AGPL ● Protocolo personalizado, RESThttp://www.mongodb.org/
  • 13. 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 servidorhttp://www.mongodb.org/
  • 14. 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 geoespacialhttp://www.mongodb.org/
  • 15. 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/
  • 16. Neo4J ● Java ● Grafos - dados conectados ● Licença: GPL, AGPL/commercial ● Protocolo HTTP/REST (ou incorporado no Java)http://neo4j.org/
  • 17. 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 relacionamentoshttp://neo4j.org/
  • 18. Neo4J ● Administrador web agradável auto-suficiente ● Vários algoritmos de busca de caminho ● Indexação de chaves e relacionamentos ● Optimizado para lerhttp://neo4j.org/
  • 19. 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/