Baixe o app para aproveitar ainda mais
Prévia do material em texto
Banco de Dados NoSQL Universidade do Estado do Rio Grande do Norte Faculdade de Ciências Exatas e Naturais Departamento de Informática Disciplina: Modelos de Bancos de dados avançados Docente: Marcelino Pereira dos Santos Silva André Luiz de Souza Franco Ligia Maria de Sousa Dantas Batista 1 Sumário ● Contexto histórico; ● O que são bancos NoSQL? ● Características; ● Tipos de Bancos de Dados NoSQL; ● SQL x NoSQL; ● Porque usar um Banco de Dados NoSQL? ● Casos de Sucesso; ● Referências. 2 Contexto Histórico 3 Contexto Histórico ● NoSQL foi utilizado pela primeira vez em 1998. ● Carlo Strozzi, alega que o movimento NoSQL "é completamente distinto do modelo relacional e portanto deveria ser mais apropriadamente chamado "NoREL" ou algo que produzisse o mesmo efeito". ● Em 2009, o termo NoSQL é reintroduzido por um funcionário do Rackspace, Eric Evans. ● Os bancos de dados NoSQL, vão ficando mais populares entre as grandes empresas. 4 O que são bancos NoSQL? 5 O que são bancos NoSQL? Figura 1: Banco de dados NoSQL 6 Características 7 Características ● Escalabilidade horizontal; ● Ausência de esquema ou esquema flexível; ● Suporte nativo a replicação; ● API simples para acesso aos dados; ● Consistência eventual. 8 Tipos de Banco de Dados NoSQL Chave-valor, Colunas, Documentos e grafos 9 Tipos de Banco de Dados NoSQL Chave -Valor Table storage DynamoDB Redis Figura 2: Exemplo de Banco de Dados orientado a chave-valor 10 Tabela 1: Chave-Valor Tipos de Banco de Dados NoSQL Colunas Cassandra Hypertable MonetDB Figura 3: Exemplo de Banco de Dados orientado a Colunas 11 Tabela 2: Colunas Tipos de Banco de Dados NoSQL Documentos MongoDB CouchDB DocumentDB Figura 4: Exemplo de Banco de Dados orientado a documentos 12 Tabela 3: Documentos Tipos de Banco de Dados NoSQL Grafos Neo4j Infinite graph ArangoDB Figura 5: Exemplo de Banco de Dados orientado a grafos 13 Tabela 4: Grafos SQL X NoSQL 14 SQL x NoSQL Tabela 5: Comparativo modelo relacional e NoSQL 15 Porque usar um Banco de Dados NoSQL? 16 Porque usar um Banco de Dados NoSQL? ● Ideais para aplicativos de big data, mobilidade e web; ● Maior escala e capacidade de resposta; ● Estruturas de dados mais simples; ● Escalabilidade horizontal; ● Maior velocidade de resposta; ● Escalados com maior facilidade. 17 Casos de Sucesso 18 Casos de Sucesso ● Twitter ○ Em 2010, 1.2 bilhões de tweets por mês. ● Facebook ○ Atualmente, 3.5 bilhões de conteúdos (links, posts, etc). ○ Desenvolveu o Cassandra. ● Google ○ Desenvolveu o BigTable ● Amazon ○ Desenvolveu o Dynamo. 19 MongoDB 20 Mongo DB ● Código aberto, gratuito, de alta performance, sem esquemas e orientado à documentos; ● Lançado em fevereiro de 2009 pela empresa 10gen; ● Seu desenvolvimento durou 2 anos. 21 Mongo DB ● Orientado à documentos; ○ Informações modeladas de forma muito mais natural; ○ Cada documento é autossuficiente; ○ Modelo Relacional: ■ Não repetição + chaves estrangeiras ○ Elimina a necessidade de JOINs ○ Foi criado com o BIG DATA em mente; ■ Suporta tanto escalonamento horizontal, quanto vertical; ○ Os documentos BSON (JSON binário) do Mongo são schemaless; 22 Mongo DB 23Gráfico 1: Bancos de Dados mais usados Mongo DB 24 Figura 6: Exemplo de documento gerado pelo MongoDB (JSON) Referências 25 Referências https://www.devmedia.com.br/introducao-aos-bancos-de-dados-nosql/26044 http://www.univale.com.br/unisite/mundo-j/artigos/51Nosql.pdf http://www.addlabs.uff.br/sbsc_site/SBSC2011_NoSQL.pdf 26 Obrigado! Dúvidas? André Luiz de Souza Franco andre.luiz.franco22@gmail.com Ligia Maria de Sousa Dantas Batista ligiamsdb@gmail.com 27
Compartilhar