Banco de dados NoSQL e Distribuídos
Departamento de Informática
Banco de dados distribuído e
NoSQL
Nomes:
Danilo Sette
Felipe Santana
Liliane Brito
Tiago Cazali
Curso:
3° ano - Sistemas de Informação
Bancos NoSQL (Não relacional)
Introdução
NoSQL são diferentes sistemas de armazenamento que vieram para suprir necessidades em demandas onde os bancos de dados tradicionais (relacionais) são ineficazes. Muitas dessas bases apresentam características muito interessantes como alta performance, escalabilidade, replicação, suporte à dados estruturados e sub colunas. O NoSQL surgiu da necessidade de uma performance superior e de uma alta escalabilidade. Os atuais bancos de dados relacionais são muito restritos a isso, sendo necessária a distribuição vertical de servidores, ou seja, quanto mais dados, mais memória e mais disco um servidor precisa. O NoSQL tem uma grande facilidade na distribuição horizontal, ou seja, mais dados, mais servidores, não necessariamente de alta performance. Um grande utilizador desse conceito é o Google, que usa computadores de pequeno e médio porte para a distribuição dos dados; essa forma de utilização é muito mais eficiente e econômica. Além disso, os bancos de dados NoSQL são muito tolerantes a erros.
No caso dos bancos NoSQL, toda a informação necessária estará agrupada no mesmo registro, ou seja, em vez de você ter o relacionamento entre várias tabelas para formar uma informação, ela estará em sua totalidade no mesmo registro.
Os bancos NoSQL são subdivididos pelo seu núcleo, ou seja, como ele trabalha com os dados. Esses núcleos são:
Wide Column Store/ Column Families;
Document Store;
Key Value/ Tuple Store;
Graph Databases;
Object Databases;
Grid Database Solutions;
XML Databases.
1) Wide Column Store/ Column Families
Fortemente inspirados pelo BigTable, do Google, eles suportam várias linhas e colunas, além de permitir subcolunas.
Um DBMS orientada a coluna é um