bdDistPar
14 pág.

bdDistPar


DisciplinaAdministração de Banco de Dados606 materiais3.248 seguidores
Pré-visualização1 página
Banco de Dados Distribuído
Rede
SGBD SGBD
SGBD
Site1
Site2
Site3
Banco de Dados Distribuído
\ufffdÉ um sistema onde o banco de dados fica 
armazenado em diversos computadores que se 
comunicam entre si pela rede
\ufffdNão existe compartilhamento de memória 
principal ou disco
\ufffdNormalmente separados geograficamente
\ufffdVantagens:
\ufffdcompartilhamento de dados (usuários de um 
site podem acessar dados de outro site)
\ufffdAutonomia e disponibilidade
Projeto de Distribuição
Objetivo
\ufffdAssociar a cada nó de um sistema de banco de dados 
distribuído ou paralelo uma partição da base de dados.
\ufffdFormas de distribuição
\u2022 Agrupada (agregada)
\u2022 Desagregada
\ufffdFormas de Alocação
\u2022 Sem Replicação
\u2022 Com Replicação
\u2022 Atualizável
\u2022 Não atualizável
Projeto de Distribuição
\ufffdDistribuição Agrupada
\ufffdReplicação total de tabelas
\u2022 Melhoria de desempenho nas consultas
\u2022 Potenciais problemas de desempenho/consistência nas 
atualizações dependendo da forma de sincronização utilizada
\ufffdEm ambientes heterogêneos
\u2022 Acesso aos dados via \u201cGateways\u201d entre os SGBDs
\u2022 Facilita integração de sistemas de dados legados e a 
interoperabilidade (comunicação) entre sistemas
Projeto de Distribuição
\ufffdDistribuição Desagregada
\ufffdFragmentação Horizontal
\ufffdtécnica mais usada
\ufffdFragmentação Vertical
\ufffdFragmentação Híbrida
Projeto de Distribuição
\u2022Fragmentação Horizontal
\ufffdMétodo Faixa de Valores \u2013 Consiste na geração de fragmentos em função
Dos valores das colunas de uma tabela.
Exemplo: Tabela Funcionario
Rj40Luiz750
Sp10Ana320
Sp20Maria270
Rj30Pedro140
Rj10Jose101
CidadeCargoNomeMatricula
Projeto de Distribuição
Rj40Luiz750
Rj30Pedro140
Rj10Jose101
CidadeCargoNomeMatricula
Fragmento1 : Select * from Funcionario where cidade = \u2018Rj\u2019
Fragmento2 : Select * from Funcionario where cidade = \u2018Sp\u2019
Sp10Ana320
Sp20Maria270
CidadeCargoNomeMatricula
Alias: funcionario_sp
Funcionario@site2
Alias: funcionario_rj
Funcionario@site1
Projeto de Distribuição
\ufffdAlocação
\ufffdCom Replicação
\ufffdSíncrona 
\u2022 Problema no tempo de resposta
\ufffdAssíncrona
\u2022 Problema de Conflito nas atualizações
\ufffdSem Replicação
Banco de dados Replicado
Um banco de dados replicado é um banco de dados que mantém
cópias de seus dados distribuídas por diversos servidores. Estas
cópias podem ser totais ou parciais.
Tipo de réplicas:
a) Não atualizável \u2013 neste caso, as réplicas não podem sofrer modificação 
(insert, delete, update). Seus dados são atualizados através do envio por 
parte do servidor mestre das atualizações sofridas.
Funcionário
Banco mestre
Insert
Delete 
Update
modificações
Funcionário
Funcionário
Select
Select
Réplica1
Réplica2
b) Atualizável \u2013 neste caso, tanto a tabela mestre como suas réplicas podem 
sofrer modificação (insert, delete, update). As modificações ocorridas nos dados
de um banco podem ser transmitidas para os outros bancos de forma síncrona ou
assíncrona.
Banco de dados Replicado
Problema: Se o mesmo dado pode ser modificado em mais de um Banco, 
como garantir a consistência?
Forma síncrona:
Vantagem: os bancos apresentam sempre o mesmo valor para os dados.
Desvantagem: demora para atualizar todas as réplicas (rede) 
Forma assíncrona:
Vantagem: transmissões podem ser feitas em horários de menor tráfego.
Caso haja algum problema na rede ou em algum servidor, o banco que está sendo
modificado continua operando sem nenhum problema.
Desvantagem: inconsistência temporária e potencias problemas de conflitos.
Banco de Dados Paralelo
Dados
Dados
Dados
Nó 1
Nó 2
Nó nSGBD
Dados
Nó 3
Banco de Dados Paralelo
MOTIVAÇÃOMOTIVAÇÃO
\ufffd Velocidade
\ufffd Manipulação de grandes volumes de dados.
\ufffd natureza distribuída dos dados no mundo real.
\ufffd Experiência com BD distribuídos.
\ufffd A realidade das máquinas paralelas.
\u2022 Métricas
\u2013 Aceleração Linear \u2013 se o HW dobrar, a tarefa deve executar na 
metade do tempo
\u2013 Crescimento Linear \u2013 se o HW dobrar, o sistema executará um 
problema duas vezes maior no mesmo espaço de tempo 
Ganho
Processador
Aceleração
Linear
Tempo
Processador
Tamanho do problema
Crescimento Linear
Banco de Dados Paralelo
Banco de Dados Paralelo
Arquiteturas de bancos de dados paralelas