22 de março de 2023 • 2 min de leitura
Os bancos de dados NoSQL estão divididos em 4 famílias:
Os baseados em documentos, são perfeitos para trabalhar com dados não estruturados, além disso, um documento pode conter vários outros documentos. São utilizados para armazenar dados de forma flexível, sem a necessidade de um esquema pré-definido.
Exemplos: MongoDB; CouchDB; ArangoDB; RethinkDB; OrientDB; RavenDB.
Casos de uso (MongoDB):
O modelo chave-valor é conhecido por sua facilidade de gerenciamento, com o funcionamento igual ao de um dicionário, o dado armazenado é registrado em uma chave, e para a recuperar o valor é necessário informar apenas a chave.
Exemplos: Redis; Memcached; DynamoDB; Riak; Tokyo Cabinet; Scalaris.
Casos de uso (Redis):
Curiosidade: o Redis Search trabalha de forma muito semelhante ao Elastic Search.
O modelo colunar de armazenamento mantém cada coluna do banco de dados separadamente, guardando contiguamente os valores de atributos pertencendo à mesma coluna, de forma densa e comprimida. Essa forma de armazenamento pode beneficiar a leitura dos dados, porém, comprometendo a escrita do disco. São utilizados para consulta de grandes volumes de dados.
Exemplos: Cassandra; Hadoop; HBase; Google BigTable, Google BigQuery; Hypertable; Amazon Redshift.
Casos de uso (Cassandra):
Utiliza o modelo de grafos, foca bastante nas relações entre os dados, tornando essa relação inclusive mais importante que os dados em si. Ele faz uso de algoritmos tradicionais como Dijkstra para proporcionar uma alta velocidade de resposta para consultas complexas.
É formado por 3 componentes básicos:
Exemplos: Neo4j; OrientDB; FlockDB; Titan; InfoGrid; Infinite Graph; HyperGraphDB.
Casos de uso (Neo4j):
Fontes:
Se você quiser fazer um curso de pós-graduação, MBA ou certificação de curta duração na PUCRS, só falar comigo que eu tenho cupom de desconto de 12% 😉