Você está na página 1de 3

Banco de dados distribuído

Origem: Wikipédia, a enciclopédia livre.


Banco de dados distribuído (BDD) é uma coleção de várias bases de dados logicamente
inter-relacionadas, distribuídas por uma rede de computadores. Existem dois tipos de
banco de dados distribuídos, os homogêneos e os heterogêneos. Os homogêneos são
compostos pelos mesmos bancos de dados, já os Heterogêneos são aqueles que são
compostos por mais de um tipo de banco de dados.
Num banco de dados distribuídos os arquivos podem estar replicados ou fragmentados,
esses dois tipos podem ser encontrados ao longo dos nós do sistema de BDD's. Quando
os dados se encontram replicados, existe uma cópia de cada um dos dados em cada nó,
tornando as bases iguais (ex: tabela de produtos de uma grande loja). Já na fragmentação,
os dados se encontram divididos ao longo do sistema, ou seja a cada nó existe uma base
de dados diferente se olharmos de uma forma local, mas se analisarmos de uma forma
global os dados são vistos de uma forma única, pois cada nó possui um catálogo que
contém cada informação dos dados dos bancos adjacentes.
A replicação dos dados pode se dar de maneira síncrona ou assíncrona. No caso de
replicação síncrona, cada transação é dada como concluída quando todos os nós
confirmam que a transação local foi bem sucedida. Na replicação assíncrona, o nó
principal executa a transação enviando confirmação ao solicitante e então encaminha a
transação aos demais nós.

Índice
[esconder]

 1Arquitetura básica
 2Importantes considerações
 3Vantagens de bancos de dados distribuídos
 4Desvantagens de banco de dados distribuídos
 5Referências
 6Ver também

Arquitetura básica[editar | editar código-fonte]


Aplicações Locais
aplicações que não requerem dados de outros lugares.
Aplicações Globais
aplicações que requerem dados de outros lugares.

Importantes considerações[editar | editar código-fonte]


Cuidados com banco de dados distribuídos devem ser tomados para assegurar o
seguinte:

 A distribuição é transparente — usuários devem poder interagir com o


sistema como se ele fosse um único sistema lógico. Isso se aplica ao
desempenho do sistema, métodos de acesso, entre outras coisas.
 Transações são transparentes — cada transação deve manter a integridade
do banco de dados dentre os múltiplos bancos de dados. Transações devem
também ser divididas em subtransações, cada subtransação afetando um
sistema de banco de dados…

Vantagens de bancos de dados distribuídos[editar | editar


código-fonte]
 Reflete a estrutura organizacional — fragmentos do banco de dados estão
localizados nos departamentos que se relacionam com os dados que estes
persistem.
 Autonomia Local — um departamento pode controlar seus dados (já que é o
mais familiarizado com estes).
 Maior disponibilidade — uma falha em um banco de dados afetará somente
um fragmento, ao invés do banco de dados inteiro.
 Melhor performance — os dados estão localizados próximo do local de maior
demanda e os sistemas de banco de dados por si só são paralelizáveis,
permitindo carregar no banco de dados para o balanceamento entre
servidores (a elevada carga em um módulo do banco de dados não irá afetar
os outros módulos de banco de dados em um banco de dados distribuído).
 Econômico — custa menos criar uma rede de pequenos computadores com
o mesmo poder que um único computador maior.
 Modularidade — sistemas podem ser modificados, adicionados ou removidos
do banco de dados distribuído sem afetar os outros módulos (sistemas).

Desvantagens de banco de dados


distribuídos[editar | editar código-fonte]
 Complexidade — trabalho extra deve ser feito pelos DBAs para garantir que
a natureza da distribuição do sistema seja transparente. Trabalho extra deve
ser feito para manter sistemas múltiplos diferentes, ao invés de um único
grande. Design de banco de dados extra deve também ser feito para levar em
conta a natureza desconectada do banco de dados - por exemplo, joins
tornam-se proibitivamente caros quando são rodados entre múltiplas
plataformas.
 Implantação mais cara — o aumento da complexidade e uma infraestrutura
mais extensa significa custo extra de trabalho
 Segurança — fragmentos de banco de dados remotos devem ser seguros e,
como eles não são centralizados então os lugares remotos também devem ser
seguros. A infraestrutura também deve ser segura (por exemplo, pela
encriptação dos links de rede entre os lugares remotos).
 Difícil de manter a integridade — em sistemas distribuídos, reforçar a
integridade ao longo de uma rede pode exigir demais dos recursos da rede
para ser viável.
 Inexperiência — Dificuldades no gerenciamento. Pode ser difícil trabalhar
com banco de dados distribuídos e como é uma área relativamente nova
ainda não há tantos casos (ou experiências) práticos de seu uso disponíveis
como exemplo.[carece de fontes]
 Falta de padrões – ainda não há metodologias e ferramentas para ajudar
usuários a converter um SGBD centralizado para um SGBD distribuído.
 Design do banco de dados mais complexo – além das dificuldades
normais, o design de um banco de dados distribuídos tem que considerar a
fragmentação dos dados, alocação dos fragmentos em lugares específicos e a
replicação de dados.

Referências[editar | editar código-fonte]


 [Hussain AL-Mout]
 M. T. Ozsu and P. Valduriez, Principles of Distributed Databases (2nd edition),
Prentice-Hall, ISBN 0-13-659707-6
 Elmasri and Navathe, Fundamentals of database systems (3rd edition),
Addison-Wesley Longman, ISBN 0-201-54263-3
Ver também[editar | editar código-fonte]
 Arquitetura de dados
 Administração de dados
 Modelagem de dados
 Banco de Dados

Você também pode gostar