DOCUMENT STORE
TADS- Banco de Dados II
Aline Ferreira
DOCUMENT STORE
• Banco de Dados Orientado a Documentos
• Como o próprio nome diz, este modelo armazena
coleções de documen...
E o que são documentos?
• Um documento é um objeto com um
identificador único acrescido de um conjunto
de campos, que se a...
Características
• Permite que tenha redundância e inconsistência.
• Contêm todas as informações importantes em um único
do...
Não há Registros e sim Documentos!
RELACIONAL ORIENTADO A DOCUMENTOS
Os Documentos podem possuir os seguintes
formatos:
• XML,
• JSON,
• PDF,
• Microsoft Word, etc...
MongoDB vem da palavra
humongous= grande, enorme
Caracteristicas:
• Open- Source- desenvolvido e mantido pela 10gen;;
• Alta Performance;
• Escrito em C++;
• Consultas din...
• Consultas são baseadas em documentos;
• Sharding = particionamento em múltiplos servidores;
• Suporta internamente MapRe...
Por Que JSON?
• JSON (JavaScript Object Notation) é um
formato leve de troca de dados, é um
subconjunto pequeno de Javascr...
• As consultas são feitas por JSON e o retorno é
sempre um documento JSON, ou uma lista de
documentos JSON;
• A linguagem ...
Documento JSON
Relacional Mongodb
Data Base(Banco de Dados) Data Base(Banco de Dados)
Tabela Coleção
Linha, Registro Documento
Coluna Atr...
ID NOME IDADE
1 Aline 18
2 Caio 22
... ... ....
ID: 1
NOME: “Aline”
IDADE: 18
Conexão na base de dados
• Para conectar na base basta usar o
comando mongo:
• Comparando expressões
– Create
MongoDB
• Comparando expressões
– Delete
• Comparando expressões
– Insert
• Comparando expressões
– Select
• Comparando expressões
– Select
• Comparando expressões
– Select
MapReduce
• O mongodb suporta o mapReduce , que é utilizado
tanto para filtrar como para modificar valores
• db.runCommand(
• { mapreduce : <collection>,
• map : <mapfunction>,
• reduce : <reducefunction>
• [, query : <query filt...
map = function() {
emit({tipo_movimentacao: this.tipo_movimentacao},{count: 1});
}
• reduce = function(key, values) {
• va...
GridFs
• O MongoDB usa a especificação GridFS para
armazenar arquivos grandes, dividindo-os em
pedaços menores entre diver...
Pra que é indicado?
• Empresas que utilizam o MongoDB
– Dentre as empresas que já usam o MongoDB,destaque para a
globo.com (com o Cartola FC),...
Duvidas?
Referências
• Documentação. Disponível em: < http://www.mongodb.org/>.
• Ianni, Vinicius. Introdução aos bancos dedados No...
Document store e Mongodb
Document store e Mongodb
Upcoming SlideShare
Loading in...5
×

Document store e Mongodb

210

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
210
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Document store e Mongodb

  1. 1. DOCUMENT STORE TADS- Banco de Dados II Aline Ferreira
  2. 2. DOCUMENT STORE • Banco de Dados Orientado a Documentos • Como o próprio nome diz, este modelo armazena coleções de documentos.
  3. 3. E o que são documentos? • Um documento é um objeto com um identificador único acrescido de um conjunto de campos, que se assemelham a estrutura de chave valor.
  4. 4. Características • Permite que tenha redundância e inconsistência. • Contêm todas as informações importantes em um único documento. • Livre de esquemas. • Consultar os documentos através de métodos avançados de agrupamento e filtragem: MapReduce
  5. 5. Não há Registros e sim Documentos!
  6. 6. RELACIONAL ORIENTADO A DOCUMENTOS
  7. 7. Os Documentos podem possuir os seguintes formatos: • XML, • JSON, • PDF, • Microsoft Word, etc...
  8. 8. MongoDB vem da palavra humongous= grande, enorme
  9. 9. Caracteristicas: • Open- Source- desenvolvido e mantido pela 10gen;; • Alta Performance; • Escrito em C++; • Consultas dinâmicas; • Eficiente para armazenar dados binários, como: fotos e vídeos;
  10. 10. • Consultas são baseadas em documentos; • Sharding = particionamento em múltiplos servidores; • Suporta internamente MapReduce; • Possui drivers para várias linguagens: Python, Java, PHP, Erlang, etc • Utiliza documentos JSON para o modelo de dados
  11. 11. Por Que JSON? • JSON (JavaScript Object Notation) é um formato leve de troca de dados, é um subconjunto pequeno de Javascript; • É independente de linguagem de programção, composto por pares de chave e valor;
  12. 12. • As consultas são feitas por JSON e o retorno é sempre um documento JSON, ou uma lista de documentos JSON; • A linguagem de comandos e funções internas do MongoDB é JavaScript.
  13. 13. Documento JSON
  14. 14. Relacional Mongodb Data Base(Banco de Dados) Data Base(Banco de Dados) Tabela Coleção Linha, Registro Documento Coluna Atributo
  15. 15. ID NOME IDADE 1 Aline 18 2 Caio 22 ... ... ....
  16. 16. ID: 1 NOME: “Aline” IDADE: 18
  17. 17. Conexão na base de dados • Para conectar na base basta usar o comando mongo:
  18. 18. • Comparando expressões – Create
  19. 19. MongoDB • Comparando expressões – Delete
  20. 20. • Comparando expressões – Insert
  21. 21. • Comparando expressões – Select
  22. 22. • Comparando expressões – Select
  23. 23. • Comparando expressões – Select
  24. 24. MapReduce • O mongodb suporta o mapReduce , que é utilizado tanto para filtrar como para modificar valores
  25. 25. • db.runCommand( • { mapreduce : <collection>, • map : <mapfunction>, • reduce : <reducefunction> • [, query : <query filter object>] • [, sort : <sorts the input objects using this key. Useful for optimization>] • [, limit : <number of objects to return from collection>] • [, out : <see output options below>] • [, keeptemp: <true|false>] • [, finalize : <finalizefunction>] • [, scope : <object where fields go into javascriptglobal scope >] • [, jsMode : true] • [, verbose : true] • } • ); •
  26. 26. map = function() { emit({tipo_movimentacao: this.tipo_movimentacao},{count: 1}); } • reduce = function(key, values) { • var count = 0; • values.forEach(function(v) { • count += v['count']; • }); • return {count: count}; • }
  27. 27. GridFs • O MongoDB usa a especificação GridFS para armazenar arquivos grandes, dividindo-os em pedaços menores entre diversos documentos.
  28. 28. Pra que é indicado?
  29. 29. • Empresas que utilizam o MongoDB – Dentre as empresas que já usam o MongoDB,destaque para a globo.com (com o Cartola FC), SourceForge ea FourSquare. – Outrosprojetoscom MongoDBna Globo.comsão: receitas.com, novo catálogo de vídeos da emissora, com 800 mil arquivoscadastrados, e o site de participações em eventose programas da Globo.
  30. 30. Duvidas?
  31. 31. Referências • Documentação. Disponível em: < http://www.mongodb.org/>. • Ianni, Vinicius. Introdução aos bancos dedados NoSQL. Disponível em: <http://www.devmedia.com.br/introducao-aos- bancos-de-dados-nosql/26044#ixzz2O7Sed5P3>. • Ianni, Vinicius. Big Data: Algumas definições e, sim, servetambém para o pequeno negócio! Disponível em: <http://www.devmedia.com.br/space.asp?id=198225>. • Lerner, Alberto. Introdução ao MongoDB –Direto da fonte! Disponível em: <http://ensinar.wordpress.com/tag/mongodb/>. • Lennon, Joe. Exploreo MongoDB. Disponível em: <http://www.ibm.com/developerworks/br/library/os-mongodb4/>. • Nascimento, Jean3 Razões para usar MongoDB. Disponível em: <http://imasters.com.br/artigo/18334/mongodb/3-razoes- para-usar-mongodb/>. • Nascimento, Jean. Como utilizar selects com MongoDB. Disponível em: <http://imasters.com.br/artigo/17308/mongodb/como-utilizar-selects-com-mongodb//>.

×