TEMA 02 Flashcards

1
Q

Quais são as características relacionadas aos bancos de dados distribuídos e sistemas distribuídos?

A

Alta disponibilidade necessária para viabilizar o compartilhamento dos dados e também a escalabilidade, em virtude do contínuo aumento do volume dessas bases e alto desempenho.

A escalabilidade de bancos de dados distribuídos pode ser horizontal e vertical.

Já nos bancos de dados NoSQL, em linhas gerais, se usa escalabilidade horizontal, “na qual o sistema distribuído é expandido, adicionando mais nodos para armazenamento e processamento de dados à medida que o volume de dados aumenta

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Os bancos de dados NoSQL têm a necessidade de permanecerem disponíveis, ainda que ocorram falhas em nodos ou até mesmo se algum hardware ou software ficar indisponível. Para isso…

A

Os dados são replicados em dois ou mais nodos de maneira transparente, de modo que, se um nodo falhar, os dados ainda estarão disponíveis em outros nodos

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Em relação a modelos de replicação, afirma que os bancos de dados NoSQL usam dois modelos, quais são eles?

A

Chamados de replicação mestre-escravo e ponto a ponto .

A replicação mestre-escravo exige que uma cópia seja a principal; todas as operações de gravação devem ser aplicadas à cópia principal e, em seguida, propagadas para as cópias escravas

Já a replicação ponto a ponto consiste em balancear a carga de acesso simultâneo aos registros de um arquivo, não armazenando o arquivo inteiro em apenas um nodo, mas distribuindo para vários nodos, e com isso aumentando a disponibilidade dos dados.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

No que diz respeito ao acesso a dados de alto desempenho, por conta do problema de encontrar registros ou itens de dados em um emaranhado de registros e itens de dados, os Banco de dados NoSQL usam geralmente quais técnicas?

A

Os bancos de dados NoSQL geralmente usam técnicas de hashing , ou particionamento

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

As transações de um banco de dados relacional mantêm a integridade dos dados por possuírem
propriedades denominadas ACID (atomicidade, consistência, isolamento e durabilidade).

Já os bancos de Dados NoSQL, visto que realizam armazenamento de dados distribuído
possuem propriedades de ambiente distribuído, sendo elas:

A

Consistência, disponibilidade e tolerância
a partições, denominadas CAP.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Consistência (Teorema de CAP)

A

obter um estado consistente após a execução de uma operação. Ao ocorrer uma
operação entre uma das cópias compartilhadas do sistema distribuído, sendo cada cópia um
nodo, cada modificação de um nodo deve ter seus dados replicados entre as demais cópias, ou
seja, a atualização do nodo deve simultaneamente atualizar suas cópias, possibilitando ter
dados atualizados em todos os nodos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Disponibilidade(Teorema de CAP)

A

Manter o sistema em operação, ainda que ocorram falhas entre os nodos ou
até mesmo indisponibilidade de hardware e software.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Tolerância a partições(Teorema de CAP)

A

Manter o sistema em funcionamento mesmo que ocorram partições
entre nodos devido a falhas ou a adição/remoção de nodos.

O fato é que se falamos de bancos
de dados com sistemas distribuídos, falamos de partição de cluster.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

O teorema CAP foi introduzido por Brewer e, embora ele compreenda três propriedades
que influenciam na arquitetura e funcionamento do armazenamento dos dados, somente se pode ter
a garantia de apenas duas delas.

Assim, é preciso optar por quais propriedades se deseja garantir, e
isso pode influenciar diretamente na escolha do banco de dados NoSQL a ser utilizado em
determinadas aplicações.

Dessa forma, considerando a escolha de duas propriedades, se obtém a
combinação de três alternativas. Essas combinações se referem às:

A

Interseções entre consistência e
disponibilidade (CA), consistência e tolerância a partições (CP) e disponibilidade e tolerância a
partições (AP)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

A interseção CA se refere à:

A

A interseção CA se refere à junção das propriedades: consistência e disponibilidade.
As
aplicações que optam por essa combinação de propriedades necessitam de forte consistência de
leitura e escrita de dados e altíssima disponibilidade das aplicações, bastante clássico de aplicações
com bancos de dados relacionais. “Nesse modelo qualquer falha que
ocorra em um dos nós, o sistema todo fica indisponível até que o nó que falhou volte ao normal”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

A interseção CP se refere à:

A

A interseção CP se refere à junção das propriedades: consistência e tolerância a partições.
Essa
combinação de propriedades permite que as aplicações tenham consistência forte dos dados e
tolerância a particionamento, permitindo resposta rápida às falhas.
“Nesse modelo pode ocorrer que
uma operação de escrita gere conflito entre os nós do particionamento de rede, sendo a
disponibilidade comprometida até que ocorra um consenso entre os nós”), ou seja, o
SGBD tem autonomia para aceitar uma escrita ou não.

Exemplos de bancos de dados com essas
propriedades são: BigTable, Hbase ou MongoDB, Hadoop.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

A interseção AP se refere à:

A

A interseção AP se refere à junção das propriedades: disponibilidade e tolerância a partições.
Essas propriedades são essenciais para aplicações que precisam estar disponíveis todos os dias e
em todos os horários, ou seja, jamais podem ficar offline.
Assim, o sistema sempre aceita operações
de escrita e a consistência de dados é tratada posteriormente, por meio da sincronização. Tendo em
vista esses dois aspectos, o período em que ocorre a persistência de um dado em um determinado
nodo e o sincronismo desse nodo com os demais nodos do cluster, salienta-se que “existe uma
janela de inconsistência, onde uma operação de leitura em um nodo que ainda não foi atualizado
pode retornar dados desatualizados”.

Exemplos de bancos de dados com essas
propriedades são: Amazon DynamoDB, MongoDB, Cassandra, Riak, Voldemort.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly