TEMA 01 Flashcards
Como os bancos de dados NoSQL podem ser classificados? E quais são os seus 4 modelos principais?
Os bancos de dados NoSQL podem ser classificados de acordo
com a estrutura em que os dados são armazenados. Os quatro modelos principais são os modelos
orientado a chave-valor, orientado a documentos, orientado a colunas e orientado a grafos.
Como é o modelo de banco de dados orientado a chave-valor?
Conforme Marquesone (2017), o modelo de banco de dados NoSQL orientado a chave-
valor é o que possui a estrutura mais simples dentre os quatro modelos citados.
Esse tipo de banco
de dados NoSQL tem como estratégia o armazenamento de dados utilizando chaves como
identificadores das informações gravadas em um campo identificado como valor. Normalmente, a
chave é formada por um campo do tipo String e o campo valor pode armazenar diferentes tipos de
dados, sem a necessidade de um esquema predefinido como ocorre nos bandos de dados
relacionais.
Para que pode servir o modelo de banco de dados orientado a chave-valor?
O banco de dados orientado a chave-valor é uma categoria que veio para suprir necessidades
presentes, em sua maioria, nas principais aplicações da Web 2.0, principalmente ao que se refere a
cache/sessões de aplicações web. Conforme Marquesone (2017), o banco de dados orientado
a chave-valor pode ser utilizado tanto para persistir os dados em um banco quanto para mantê-los
em memória e assim agilizar o acesso às informações. No caso de manter os dados em memória, é
possível recuperar os dados em um banco de dados relacional e armazená-los em um cache, criando
uma chave para cada valor armazenado.
Para que serve o banco de dados orientado a chave-valor?
Bancos de dados orientados a chave-valor são adequados para aplicações que realizam leituras frequentes, como por exemplo, um sistema de vendas online. Esse modelo de banco de dados NoSQL, possui uma estrutura bem mais simples do que o relacional, não sendo necessária a criação de tabelas, colunas e chaves estrangeiras. Apenas é necessário que cada registro tenha uma chave única e que se armazene um conjunto de informações referentes aos valores dessa chave.
o modelo de armazenamento NoSQL orientado a chave-valor, é uma forma de
armazenar um valor associado a uma chave, similar a estruturas de linguagens de programação.
Quais vantagens o banco de dados orientado a chave-valor oferece?
Os bancos de dados orientados a chave-valor têm como foco oferecer flexibilidade, desempenho
e escalabilidade no gerenciamento de dados. Por esse motivo, conforme Marquesone (2017)
esse modelo de banco de dados tende a resolver questões de lentidão para leitura e escrita de dados
em grande variedade e volume, podendo otimizar o desempenho da consulta e realizar operações
com alta vazão.
Qual é o modelo de depósito de dados do banco de dados orientado a chave-valor?
O modelo de depósito dos dados do banco de dados orientado a chave-valor obedece ao
formato de uma tabela hash, chamada de tabela ou bucket, dependendo da terminologia do banco de
dados. Um bucket é um contêiner lógico para um conjunto de itens associados, podendo receber
itens como pares de chave-valor em que todo acesso é realizado por meio de uma chave.
O que é a chave? E o valor?
“A chave é um identificador único, associado a um item de dados e é usada para localizar esse item de dados rapidamente.” (Elmasri).
“O valor é o termo usado para se referir ao objeto de dado armazenado, o qual corresponde a uma estrutura de dados aleatória, o que possibilita armazenar desde cadeia de bytes a listas variadas de dados” (Elmasri).
Não há uma preocupação com os dados a serem armazenados, como ocorre com os
bancos de dados relacionais, em que são definidos os tipos de dados.
O valor pode receber dados
estruturados, semiestruturados ou ainda, não estruturados. Cabe ao aplicativo interpretar os dados
recebidos (Sadalage; Fowler).
Porém, essa despreocupação com os tipos de
dados do campo valor, também é uma limitação nesse tipo de banco de dados, não sendo possível
fazer uma indexação com esse campo e uma consulta mais complexa. Conforme Marquesone, a única forma de realizar consultas no banco de dados orientado a chave-valor é por meio da
chave.
De acordo com Elmasri (2018), em muitos desses bancos de dados orientados a
chave-valor, não há linguagem de consulta, mas sim um conjunto de operações que podem ser
usadas pelos programadores de aplicações.
Assim como ocorre com a realização de consultas nesse modelo chave-valor, os processos de
inserção e exclusão dos dados também ocorre por meio da chave (Strauch, 2011).
Alguns dos sistemas de bancos de dados NoSQL que usam o modelo chave-valor são:
DynamoDB, Couchbase, Riak, Redis, Memcached entre outros. Cada banco de dados apresenta
características específicas. Sendo assim, cabe realizar uma análise da aplicação modelada para
escolher o banco de dados mais apropriado. Para isso, vários fatores podem ser considerados, como:
A necessidade de crescimento, portabilidade dos dados para outros ambientes, e
inevitavelmente também deve ser avaliado os custos envolvidos (Redislabs, 2020).