SlideShare uma empresa Scribd logo
Bancos de dados NOSQL
(Not Only SQL)
Rodrigo Valério
Developer
rsvalerio@gmail.com
@rsvalerio
Qual banco de dados utilizado
por Facebook e Twitter????
E pelo google?
Quando você digita pindamonhangaba no
google, e ele traz: "Aproximadamente
20.500.000 resultados (0,15 segundos)",
ANTES DE VOCÊ TERMINAR DE DIGITAR,
você acha que ele está fazendo um SQL
like em um índice??? 
Alguma vez o google encontrou uma
coisa que a busca do site que você
estava não encontrou? 
Essa apresentação é sobre o
google?????
Apresentando o termo: NoSQL
Wikipedia: "NoSQL (entenda-se "Not only SQL") é um um termo genérico para uma
classe definida de banco de dados não-relacionais que rompe uma longa história de banco
de dados relacionais com propriedades ACID. Outros termos equivalentes para esta
categoria de bancos é NF², N1NF (non first normal form), nested relational, dimensional,
multivalue, free-form, schemaless, document database e MRNN (Modelo Relacional Não
Normalizado)..."
Não quer
substituir os
bancos de
dados
relacionais!
Um pouco de história
1. Escalabilidade
2. Performance
3. Consistência Eventual ou Relaxada
1. Dr. Werner Vogels um dos maiores especialistas no mundo em sistemas ultra-escaláveis,
trabalha a amazon.com, Artigo sobre o termo: http://queue.acm.org/detail.cfm?id=1466448
2. http://en.wikipedia.org/wiki/Eventual_consistency
4. Agilidade
5. Complexidade
Cinco NECESSIDADES do mercado, NÃO SÃO ATENDIDAS a
contento pelos produtos de banco de dados e fornecedores
disponíveis no mercado, são eles:
Artigo: A necessidade é a mãe do
NoSQL
Um pouco de história
O divisor de águas no movimento NoSQL, foi a
publicação de 2 artigos:
1. BigTable: A Distributed Storage System for
Structured Data
1. Publicado pelo Google
2. Em Novembro de 2006
3. No 17 simpósio em design e implementação de
sistemas operacionais
2. Dynamo: Amazon’s Highly Available Key-Value
Store
1. Publicado pela Amazon
2. Em Outrubro de 2007
3. No 12 simpósio em princípios de sistemas
operacionais 
Principais tipos disponíveis
Orientado a Documentos
● Linhagem: Inspirado pelo Lotus Notes
●Modelo de dados: Coleção de documentos, que
contém coleções de chave-valor.
●Exemplo: CouchDB, MongoDB 
●Bom para: Modelagem de dados natural. Amigo do
programador. Desenvolvimento Rápido. Amigo da
web, CRUD.
http://highscalability.com/blog/2011/6/20/35-use-cases-for-choosing-your-next-nosql-database.html
Armazenamento por chave-valor
● Linhagem: Inspirado pelos artigos:  Amazon's Dynamo
paper e Distributed HashTables
●Modelo de dados: Coleção global de pares de
chave-valor
●Exemplo: Membase e Riak 
●Bom para: Gerencia bem o tamanho. Processa
uma quantidade constante de pequenas
leituras e escritas. É rápido. Amigo do
programador
Principais tipos disponíveis
http://highscalability.com/blog/2011/6/20/35-use-cases-for-choosing-your-next-nosql-database.html
 Clones de BigTable (google)
● Linhagem: Artigo do Google BigTable
●Modelo de dados: Família de colunas, um modelo
tabular, onde cada linha pode ter suas próprias
colunas.
●Exemplo: HBase, Hypertable, Cassandra 
●Bom para: Gerencia bem o tamanho. Processa uma
grande quantidade de carga via fluxos. Alta
disponibilidade. Multiplos data-centers.
MapReduce.
Principais tipos Disponíveis
http://highscalability.com/blog/2011/6/20/35-use-cases-for-choosing-your-next-nosql-database.html
Orientado a Grafos
● Linhagem: Euler e a teoria dos grafos
●Modelo de dados: Nós e relacionamentos,
ambos manipulam pares de chave-valor
●Exemplo: AllegroGraph, InfoGrid e Neo4j
●Bom para: Problemas complicados com
gravos. É rápido
Principais tipos Disponíveis
http://highscalability.com/blog/2011/6/20/35-use-cases-for-choosing-your-next-nosql-database.html
Principais produtos:
● Couchdb
○ http://couchdb.apache.org/
○ Escrito em: Erlang
○ Principal característica: Consistência do banco de dados. Facilidade de uso
○ Licença: Apache
○ Protocolo: HTTP/REST
● Mongodb
○ http://www.mongodb.org/
○ Escrito em: c++
○ Principal característica: 
○ Licença:
○ Protocolo:
● Cassandra
○ http://cassandra.apache.org/
○ Escrito em: java
○ Principal característica: 
○ Licença:
○ Protocolo:
● Redis
○ http://redis.io/
○ Escrito em: c++
○ Principal característica: 
○ Licença:
http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis
Relatório de abril de 2011 entitulado:
Publicado pela "Empresa independente de
análise da indústria de tecnologia focada no
negócio de inovação tecnológica", o grupo
451
Fonte: http://www.the451group.com/caos/caos_detail.php?icid=1651
O relatório completo custa $3.750,00 dólares no
site: https://store.the451group.com/product_info.php?products_id=162&osCsid=mqnruh3dnnb5ob
1uv25ssosk27
Referências:
http://nosql-database.org/
http://mynosql.org/
35+ Use Cases for Choosing Your Next NoSQL Database
http://couchdb.apache.org/
http://www.mongodb.org/
http://redis.io/
http://cassandra.apache.org/

Mais conteúdo relacionado

Mais procurados

Banco de dados nas nuvens - aula 2
Banco de dados nas nuvens - aula 2Banco de dados nas nuvens - aula 2
Banco de dados nas nuvens - aula 2
Luiz Henrique Zambom Santana
 
Banco de dados nas nuvens - aula 1
Banco de dados nas nuvens - aula 1Banco de dados nas nuvens - aula 1
Banco de dados nas nuvens - aula 1
Luiz Henrique Zambom Santana
 
Mongo db
Mongo dbMongo db
Mongo db
Edmilson Neto
 
Introdução no sql mongodb java
Introdução no sql mongodb javaIntrodução no sql mongodb java
Introdução no sql mongodb java
Fabiano Modos
 
Comparação de desempenho entre SQL e NoSQL
Comparação de desempenho entre SQL e NoSQLComparação de desempenho entre SQL e NoSQL
Comparação de desempenho entre SQL e NoSQL
pichiliani
 
Introdução ao MongoDB (NoSQL)
Introdução ao MongoDB (NoSQL)Introdução ao MongoDB (NoSQL)
Introdução ao MongoDB (NoSQL)
Thiago de Azeredo
 
Lições Aprendidas MongoDB
Lições Aprendidas MongoDBLições Aprendidas MongoDB
Lições Aprendidas MongoDB
Fabiano Modos
 
Nosql e BD Orientados a Documentos
Nosql e BD Orientados a DocumentosNosql e BD Orientados a Documentos
Nosql e BD Orientados a Documentos
Yuri Adams
 
Mais um comparativo MongoDB - Fernando Boaglio - abril.2014
Mais um comparativo MongoDB - Fernando Boaglio - abril.2014Mais um comparativo MongoDB - Fernando Boaglio - abril.2014
Mais um comparativo MongoDB - Fernando Boaglio - abril.2014
Fernando Boaglio
 
MongoDB: Uma forma diferente de pensar no desenvolvimento
MongoDB: Uma forma diferente de pensar no desenvolvimento MongoDB: Uma forma diferente de pensar no desenvolvimento
MongoDB: Uma forma diferente de pensar no desenvolvimento
Marcos Thomaz
 
Mongo db slides
Mongo db slidesMongo db slides
Mongo db slides
Terra / Neo
 
NoSQL Familia de Colunas Apresentação
NoSQL Familia de Colunas ApresentaçãoNoSQL Familia de Colunas Apresentação
NoSQL Familia de Colunas Apresentação
Augusto Giles
 
Mongo
MongoMongo
pgModeler: muito mais que um modelador de bancos de dados PostgreSQL
pgModeler: muito mais que um modelador de bancos de dados PostgreSQLpgModeler: muito mais que um modelador de bancos de dados PostgreSQL
pgModeler: muito mais que um modelador de bancos de dados PostgreSQL
Raphael Silva
 
MongoDB - Performance e Escalabilidade para aplicações web
MongoDB - Performance e Escalabilidade para aplicações webMongoDB - Performance e Escalabilidade para aplicações web
MongoDB - Performance e Escalabilidade para aplicações web
Rafael Nunes
 
DocumentDB - Azure Fridays São Paulo
DocumentDB - Azure Fridays São PauloDocumentDB - Azure Fridays São Paulo
DocumentDB - Azure Fridays São Paulo
Renato Groff
 
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
iMasters
 
MongoDB - Tudo o que você precisa saber
MongoDB - Tudo o que você precisa saberMongoDB - Tudo o que você precisa saber
MongoDB - Tudo o que você precisa saber
Christiano Anderson
 
Pos-QCon-BigData
Pos-QCon-BigDataPos-QCon-BigData
Pos-QCon-BigData
Fernando Cicconeto
 
NoSQL
NoSQLNoSQL

Mais procurados (20)

Banco de dados nas nuvens - aula 2
Banco de dados nas nuvens - aula 2Banco de dados nas nuvens - aula 2
Banco de dados nas nuvens - aula 2
 
Banco de dados nas nuvens - aula 1
Banco de dados nas nuvens - aula 1Banco de dados nas nuvens - aula 1
Banco de dados nas nuvens - aula 1
 
Mongo db
Mongo dbMongo db
Mongo db
 
Introdução no sql mongodb java
Introdução no sql mongodb javaIntrodução no sql mongodb java
Introdução no sql mongodb java
 
Comparação de desempenho entre SQL e NoSQL
Comparação de desempenho entre SQL e NoSQLComparação de desempenho entre SQL e NoSQL
Comparação de desempenho entre SQL e NoSQL
 
Introdução ao MongoDB (NoSQL)
Introdução ao MongoDB (NoSQL)Introdução ao MongoDB (NoSQL)
Introdução ao MongoDB (NoSQL)
 
Lições Aprendidas MongoDB
Lições Aprendidas MongoDBLições Aprendidas MongoDB
Lições Aprendidas MongoDB
 
Nosql e BD Orientados a Documentos
Nosql e BD Orientados a DocumentosNosql e BD Orientados a Documentos
Nosql e BD Orientados a Documentos
 
Mais um comparativo MongoDB - Fernando Boaglio - abril.2014
Mais um comparativo MongoDB - Fernando Boaglio - abril.2014Mais um comparativo MongoDB - Fernando Boaglio - abril.2014
Mais um comparativo MongoDB - Fernando Boaglio - abril.2014
 
MongoDB: Uma forma diferente de pensar no desenvolvimento
MongoDB: Uma forma diferente de pensar no desenvolvimento MongoDB: Uma forma diferente de pensar no desenvolvimento
MongoDB: Uma forma diferente de pensar no desenvolvimento
 
Mongo db slides
Mongo db slidesMongo db slides
Mongo db slides
 
NoSQL Familia de Colunas Apresentação
NoSQL Familia de Colunas ApresentaçãoNoSQL Familia de Colunas Apresentação
NoSQL Familia de Colunas Apresentação
 
Mongo
MongoMongo
Mongo
 
pgModeler: muito mais que um modelador de bancos de dados PostgreSQL
pgModeler: muito mais que um modelador de bancos de dados PostgreSQLpgModeler: muito mais que um modelador de bancos de dados PostgreSQL
pgModeler: muito mais que um modelador de bancos de dados PostgreSQL
 
MongoDB - Performance e Escalabilidade para aplicações web
MongoDB - Performance e Escalabilidade para aplicações webMongoDB - Performance e Escalabilidade para aplicações web
MongoDB - Performance e Escalabilidade para aplicações web
 
DocumentDB - Azure Fridays São Paulo
DocumentDB - Azure Fridays São PauloDocumentDB - Azure Fridays São Paulo
DocumentDB - Azure Fridays São Paulo
 
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
 
MongoDB - Tudo o que você precisa saber
MongoDB - Tudo o que você precisa saberMongoDB - Tudo o que você precisa saber
MongoDB - Tudo o que você precisa saber
 
Pos-QCon-BigData
Pos-QCon-BigDataPos-QCon-BigData
Pos-QCon-BigData
 
NoSQL
NoSQLNoSQL
NoSQL
 

Semelhante a Bancos de dados nosql (not only sql)

Bancos de dados NoSQL
Bancos de dados NoSQLBancos de dados NoSQL
Bancos de dados NoSQL
Rodrigo De Souza Valerio
 
#1 Introdução ao MongoDB
#1   Introdução ao MongoDB#1   Introdução ao MongoDB
#1 Introdução ao MongoDB
Gabriel Alves Scavassa
 
Minicurso Epoca mongoDB
Minicurso Epoca mongoDBMinicurso Epoca mongoDB
Minicurso Epoca mongoDB
LelyBarros
 
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
João Helis Bernardo
 
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
Christiano Anderson
 
Apresentação
ApresentaçãoApresentação
Apresentação
Joel Junior
 
Tcc versao final-15-12
Tcc versao final-15-12Tcc versao final-15-12
Tcc versao final-15-12
José Fernando Castroviejo Vilela
 
Pepe Legal Python e Babalu MongoDB, uma dupla dinâmica
Pepe Legal Python e Babalu MongoDB, uma dupla dinâmicaPepe Legal Python e Babalu MongoDB, uma dupla dinâmica
Pepe Legal Python e Babalu MongoDB, uma dupla dinâmica
FATEC São José dos Campos
 
NoSQL Familia de Colunas Monografia
NoSQL Familia de Colunas MonografiaNoSQL Familia de Colunas Monografia
NoSQL Familia de Colunas Monografia
Augusto Giles
 
Algumas das principais características do NoSQL
Algumas das principais características do NoSQLAlgumas das principais características do NoSQL
Algumas das principais características do NoSQL
Eric Silva
 
Cobo, Cristiane Brandão. Especialização Banco de Dados
Cobo, Cristiane Brandão. Especialização Banco de DadosCobo, Cristiane Brandão. Especialização Banco de Dados
Cobo, Cristiane Brandão. Especialização Banco de Dados
cris.finholdt
 
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
Antonio Lazaro Carvalho Borges
 
NoSql e NewSql
NoSql e NewSqlNoSql e NewSql
NoSql e NewSql
Suzana Viana Mota
 
Bancos de dados no sql – uma nova abordagem
Bancos de dados no sql – uma nova abordagemBancos de dados no sql – uma nova abordagem
Bancos de dados no sql – uma nova abordagem
João Gabriel Lima
 
Tema3.pptx
Tema3.pptxTema3.pptx
Tema3.pptx
fabio20718
 
Tema3.pptx
Tema3.pptxTema3.pptx
Tema3.pptx
ssuser0bad45
 
Alinguagem SQL no mundo NOSQL
Alinguagem SQL no mundo NOSQLAlinguagem SQL no mundo NOSQL
Alinguagem SQL no mundo NOSQL
pichiliani
 
NoSQL com Zend Framework 2
NoSQL com Zend Framework 2NoSQL com Zend Framework 2
NoSQL com Zend Framework 2
Flávio Lisboa
 
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São PauloNoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
Renato Groff
 
Workshop MongoDB
Workshop MongoDBWorkshop MongoDB
Workshop MongoDB
Leonardo Loures Quirino
 

Semelhante a Bancos de dados nosql (not only sql) (20)

Bancos de dados NoSQL
Bancos de dados NoSQLBancos de dados NoSQL
Bancos de dados NoSQL
 
#1 Introdução ao MongoDB
#1   Introdução ao MongoDB#1   Introdução ao MongoDB
#1 Introdução ao MongoDB
 
Minicurso Epoca mongoDB
Minicurso Epoca mongoDBMinicurso Epoca mongoDB
Minicurso Epoca mongoDB
 
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
 
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
 
Apresentação
ApresentaçãoApresentação
Apresentação
 
Tcc versao final-15-12
Tcc versao final-15-12Tcc versao final-15-12
Tcc versao final-15-12
 
Pepe Legal Python e Babalu MongoDB, uma dupla dinâmica
Pepe Legal Python e Babalu MongoDB, uma dupla dinâmicaPepe Legal Python e Babalu MongoDB, uma dupla dinâmica
Pepe Legal Python e Babalu MongoDB, uma dupla dinâmica
 
NoSQL Familia de Colunas Monografia
NoSQL Familia de Colunas MonografiaNoSQL Familia de Colunas Monografia
NoSQL Familia de Colunas Monografia
 
Algumas das principais características do NoSQL
Algumas das principais características do NoSQLAlgumas das principais características do NoSQL
Algumas das principais características do NoSQL
 
Cobo, Cristiane Brandão. Especialização Banco de Dados
Cobo, Cristiane Brandão. Especialização Banco de DadosCobo, Cristiane Brandão. Especialização Banco de Dados
Cobo, Cristiane Brandão. Especialização Banco de Dados
 
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
 
NoSql e NewSql
NoSql e NewSqlNoSql e NewSql
NoSql e NewSql
 
Bancos de dados no sql – uma nova abordagem
Bancos de dados no sql – uma nova abordagemBancos de dados no sql – uma nova abordagem
Bancos de dados no sql – uma nova abordagem
 
Tema3.pptx
Tema3.pptxTema3.pptx
Tema3.pptx
 
Tema3.pptx
Tema3.pptxTema3.pptx
Tema3.pptx
 
Alinguagem SQL no mundo NOSQL
Alinguagem SQL no mundo NOSQLAlinguagem SQL no mundo NOSQL
Alinguagem SQL no mundo NOSQL
 
NoSQL com Zend Framework 2
NoSQL com Zend Framework 2NoSQL com Zend Framework 2
NoSQL com Zend Framework 2
 
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São PauloNoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
NoSQL para Desenvolvedores .NET - SQLSaturday #804 - São Paulo
 
Workshop MongoDB
Workshop MongoDBWorkshop MongoDB
Workshop MongoDB
 

Último

Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdfEscola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Gabriel de Mattos Faustino
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
TomasSousa7
 
Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
joaovmp3
 
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
Faga1939
 
Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
WELITONNOGUEIRA3
 
Segurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas PráticasSegurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas Práticas
Danilo Pinotti
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
Momento da Informática
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
Momento da Informática
 

Último (8)

Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdfEscola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
Escola Virtual - Fundação Bradesco - ITIL - Gabriel Faustino.pdf
 
História da Rádio- 1936-1970 século XIX .2.pptx
História da Rádio- 1936-1970 século XIX   .2.pptxHistória da Rádio- 1936-1970 século XIX   .2.pptx
História da Rádio- 1936-1970 século XIX .2.pptx
 
Certificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdfCertificado Jornada Python Da Hashtag.pdf
Certificado Jornada Python Da Hashtag.pdf
 
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...
 
Manual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdfManual-de-Credenciamento ANATER 2023.pdf
Manual-de-Credenciamento ANATER 2023.pdf
 
Segurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas PráticasSegurança Digital Pessoal e Boas Práticas
Segurança Digital Pessoal e Boas Práticas
 
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdfTOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
TOO - TÉCNICAS DE ORIENTAÇÃO A OBJETOS aula 1.pdf
 
Logica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptxLogica de Progamacao - Aula (1) (1).pptx
Logica de Progamacao - Aula (1) (1).pptx
 

Bancos de dados nosql (not only sql)

  • 1. Bancos de dados NOSQL (Not Only SQL) Rodrigo Valério Developer rsvalerio@gmail.com @rsvalerio
  • 2. Qual banco de dados utilizado por Facebook e Twitter???? E pelo google?
  • 3. Quando você digita pindamonhangaba no google, e ele traz: "Aproximadamente 20.500.000 resultados (0,15 segundos)", ANTES DE VOCÊ TERMINAR DE DIGITAR, você acha que ele está fazendo um SQL like em um índice??? 
  • 4.
  • 5. Alguma vez o google encontrou uma coisa que a busca do site que você estava não encontrou? 
  • 6. Essa apresentação é sobre o google?????
  • 7. Apresentando o termo: NoSQL Wikipedia: "NoSQL (entenda-se "Not only SQL") é um um termo genérico para uma classe definida de banco de dados não-relacionais que rompe uma longa história de banco de dados relacionais com propriedades ACID. Outros termos equivalentes para esta categoria de bancos é NF², N1NF (non first normal form), nested relational, dimensional, multivalue, free-form, schemaless, document database e MRNN (Modelo Relacional Não Normalizado)..." Não quer substituir os bancos de dados relacionais!
  • 8. Um pouco de história 1. Escalabilidade 2. Performance 3. Consistência Eventual ou Relaxada 1. Dr. Werner Vogels um dos maiores especialistas no mundo em sistemas ultra-escaláveis, trabalha a amazon.com, Artigo sobre o termo: http://queue.acm.org/detail.cfm?id=1466448 2. http://en.wikipedia.org/wiki/Eventual_consistency 4. Agilidade 5. Complexidade Cinco NECESSIDADES do mercado, NÃO SÃO ATENDIDAS a contento pelos produtos de banco de dados e fornecedores disponíveis no mercado, são eles: Artigo: A necessidade é a mãe do NoSQL
  • 9. Um pouco de história O divisor de águas no movimento NoSQL, foi a publicação de 2 artigos: 1. BigTable: A Distributed Storage System for Structured Data 1. Publicado pelo Google 2. Em Novembro de 2006 3. No 17 simpósio em design e implementação de sistemas operacionais 2. Dynamo: Amazon’s Highly Available Key-Value Store 1. Publicado pela Amazon 2. Em Outrubro de 2007 3. No 12 simpósio em princípios de sistemas operacionais 
  • 10. Principais tipos disponíveis Orientado a Documentos ● Linhagem: Inspirado pelo Lotus Notes ●Modelo de dados: Coleção de documentos, que contém coleções de chave-valor. ●Exemplo: CouchDB, MongoDB  ●Bom para: Modelagem de dados natural. Amigo do programador. Desenvolvimento Rápido. Amigo da web, CRUD. http://highscalability.com/blog/2011/6/20/35-use-cases-for-choosing-your-next-nosql-database.html
  • 11. Armazenamento por chave-valor ● Linhagem: Inspirado pelos artigos:  Amazon's Dynamo paper e Distributed HashTables ●Modelo de dados: Coleção global de pares de chave-valor ●Exemplo: Membase e Riak  ●Bom para: Gerencia bem o tamanho. Processa uma quantidade constante de pequenas leituras e escritas. É rápido. Amigo do programador Principais tipos disponíveis http://highscalability.com/blog/2011/6/20/35-use-cases-for-choosing-your-next-nosql-database.html
  • 12.  Clones de BigTable (google) ● Linhagem: Artigo do Google BigTable ●Modelo de dados: Família de colunas, um modelo tabular, onde cada linha pode ter suas próprias colunas. ●Exemplo: HBase, Hypertable, Cassandra  ●Bom para: Gerencia bem o tamanho. Processa uma grande quantidade de carga via fluxos. Alta disponibilidade. Multiplos data-centers. MapReduce. Principais tipos Disponíveis http://highscalability.com/blog/2011/6/20/35-use-cases-for-choosing-your-next-nosql-database.html
  • 13. Orientado a Grafos ● Linhagem: Euler e a teoria dos grafos ●Modelo de dados: Nós e relacionamentos, ambos manipulam pares de chave-valor ●Exemplo: AllegroGraph, InfoGrid e Neo4j ●Bom para: Problemas complicados com gravos. É rápido Principais tipos Disponíveis http://highscalability.com/blog/2011/6/20/35-use-cases-for-choosing-your-next-nosql-database.html
  • 14. Principais produtos: ● Couchdb ○ http://couchdb.apache.org/ ○ Escrito em: Erlang ○ Principal característica: Consistência do banco de dados. Facilidade de uso ○ Licença: Apache ○ Protocolo: HTTP/REST ● Mongodb ○ http://www.mongodb.org/ ○ Escrito em: c++ ○ Principal característica:  ○ Licença: ○ Protocolo: ● Cassandra ○ http://cassandra.apache.org/ ○ Escrito em: java ○ Principal característica:  ○ Licença: ○ Protocolo: ● Redis ○ http://redis.io/ ○ Escrito em: c++ ○ Principal característica:  ○ Licença: http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis
  • 15. Relatório de abril de 2011 entitulado: Publicado pela "Empresa independente de análise da indústria de tecnologia focada no negócio de inovação tecnológica", o grupo 451 Fonte: http://www.the451group.com/caos/caos_detail.php?icid=1651 O relatório completo custa $3.750,00 dólares no site: https://store.the451group.com/product_info.php?products_id=162&osCsid=mqnruh3dnnb5ob 1uv25ssosk27
  • 16. Referências: http://nosql-database.org/ http://mynosql.org/ 35+ Use Cases for Choosing Your Next NoSQL Database http://couchdb.apache.org/ http://www.mongodb.org/ http://redis.io/ http://cassandra.apache.org/