NoSql
Docente: Michel Lobo
Discentes: Vitor Gabriel
Laiana Souza
Felipe Gomes
Daniel Almeida
Jessica Sinalli
História
• 1998
• Carlos Strozzi: “Completamente distinto de um banco de dados relacional de código aberto”
• 2009
Definição
• Surgiu da necessidade de uma performance superior e de um alta performance.
Base de dados distribuídos em longa escala que são constituídas para permitir a inserção de dados sem um esquema predefinido.
• Não é baseado em tabelas e linguagem SQL.
São rápidos e eficazes e rápidos na organização e análise de grande quantidade de dados.
Subdivisões
• Key/Value Store: É o tipo mais simples.
• Wide Colums Store: Fortemente inspirados pelo
BIG TABLE, do Google. Exemplos: Hbase,
Cassandra, Hipertable.
Subdivisões
• Document Store: Baseiam-se em documentos XML ou JSON, podem ser localizados por id ou qualquer outro registro.
• Column Oriented Store: São bancos de dados relacionais, porém apresentam características do
NoSQL. Os dados são armazenados em colunas.
Vantagens
• Os dados estarão sempre disponíveis
• Base da dados orientada a objetos flexível.
• Gere bem o armazenamento de grande volume de dados.
• Reparação e distribuição automática, na maioria das vezes.
• Custo mais reduzido
Desvantagens
•
•
•
•
•
Não há indexação.
Desempenho ruim de relatórios.
Modelos complexos de consistência (PAC)
Ausência de padronização
Migração mais dispendiosa
Big Table
• É uma tecnologia de computação distribuída para facilitar tanto armazenamento quanto distribuição de tabelas estruturadas.
• Big Table monta “tabelão” do tipo chave/relacionamento com indexação.
• Potencial consumo de memória (foco no scale-out)
• Falta de linguagem de manipulação de dados (SQL)
SQL X NoSql
SQL
NoSQL
Definição: Baseia-se em que todos os dados são armazenados em tabelas, pelo conceito entidade/relacionamento. Os dados são separados de forma única, buscando reduzir a redundância. Definição: É uma solução para os bancos relacionais.