Bancos de Dados: O que é NoSQL

O que são Bancos de Dados NoSQL

Bancos de Dados - O que é NoSQL

Os bancos de dados relacionais tem sido usados por décadas para armazenar dados, de forma estruturada. Nesse tipo de banco, os dados são organizados em tabelas, as quais armazenam os dados de acordo com tipos, tamanhos e outras restrições. Essas tabelas possuem colunas, que definem as unidades de dados, e linhas, que agrupam unidades de dados relacionadas. As tabelas se relacionam entre si por meio de determinadas colunas, e por isso esse tipo de banco de dados é chamado de Relacional – as tabelas são relações que possuem relacionamentos entre si.

Esse tipo de banco de dados pode apresentar problemas de escalabilidade, o que em termos de aplicações Web pode se tornar crítico nos dias atuais (e no futuro!).

Para resolver esse problema, uma das saídas criadas foi o desenvolvimento de uma nova classe de bancos de dados, não-relacionais,os quais são geralmente chamados de Bancos de Dados NoSQL.

NoSQL

A sigla NoSQL é geralmente interpretada como “Not Only SQL” (Não Apenas SQL), tendo significado em seus primórdios algo como “Não SQL”, e o NoSQL é uma classe de bancos de dados que diverge do modelo de sistema de gerenciamento de bancos de dados relacionais – não fazendo uso primário de tabelas e não usando, no geral, declarações SQL para efetuar a manipulação de dados.

Essa classe de bancos de dados é usada, hoje em dia, para manipular as vastas quantidades de dados que sistemas como os do Google, Facebook, Twitter e outros demandam, com muita rapidez e alta escalabilidade.

No geral, chamamos de NoSQL qualquer armazém de dados que não siga o modelo SGBDR tradicional, ou seja, onde os dados são não-relacionais e não é utilizada a linguagem SQL como linguagem de consulta (no geral).

SGBDR = Sistema Gerenciador de Bancos de Dados Relacionais

O NoSQL não é um banco de dados em si – é um termo utilizado para categorizar diversos tipos de bancos de dados não relacionais, como veremos mais adiante.

Outras vantagens do NoSQL

  • Velocidade de acesso muito elevada
  • Tempo de desenvolvimento reduzido
  • Representação de dados sem o uso de esquemas (schema)
  • Escalabilidade

Principais bancos de dados NoSQL

A seguir apresentamos alguns dos principais bancos de dados NoSQL existentes no mercado, classificados por modelo de dados utilizado:

Modelo de Dados Bancos de Dados
Chave/valor Membase; MemcacheDB; Redis; Riak; Berkeley DB; Oracle NoSQL;  Aerospike; DynamoDB
Coluna (Tabular) Cassandra; HBase
Documento Apache CouchDB; MongoDB; RavenDB; Elasticsearch; Cosmos DB
Grafo FlockDB; Neo4J; Apache Giraph

Há muitos outros bancos de dados além dos mostrados nesta lista, que é apenas representativa.

Tipos de Armazenamento (Modelos)

Os bancos de dados NoSQL são classificados de acordo com a forma com que os dados são armazenados. São otimizados para operações de inserção e busca em larga escala, com serviços de replicação e clustering embutidos.

Existem quatro modelos de armazenamento gerais para bancos de dados NoSQL:

  • Orientado a coluna (tabular)
  • Armazém de Documentos
  • Chave/Valor
  • Grafo

No próximo artigo (parte 02) vamos resumir cada um destes modelos.

Sobre Fábio dos Reis (1273 Artigos)
Fábio dos Reis trabalha com tecnologias variadas há mais de 25 anos, tendo atuado nos campos de Eletrônica, Telecomunicações, Programação de Computadores e Redes de Dados. É um entusiasta de Unix, Linux e Open Source em geral, adora Eletrônica e Música, e estuda idiomas, além de ministrar cursos e palestras sobre diversas tecnologias em São Paulo e outras cidades do Brasil.
Contato: Website

Escreva um comentário

Seu e-mail não será divulgado


*