O que é um Banco de Dados distribuído?

Veja neste artigo informações relacionadas a bancos de dados distribuídos, independente da tecnologia.

Um sistema de banco de dados distribuído (BDD) consiste em um relação de nós, cada qual podendo participar na execução de transações que acessam dados em um ou mais nós. Em um sistema de banco de dados distribuído, o banco de dados é armazenadoem diversos computadores (nós). Os computadores, em um sistema distribuído, comunicam-se uns com os outros por intermédio de vários meios de comunicação, tais como: redes de alta velocidade, redes sem fio ou linhas telefônicas, eles não compartilham a memoria principal e o relógio.

A diferença principal entre sistemas de banco de dados centralizados e distribuídos é que no primeiro os dados estão localizados em um único lugar, enquanto que no outro os dados residem em diversos locais. Esta distribuição de dados é motivo de muitas preocupações e dificuldades.

Os processadores em um sistema distribuído podem variar em tamanho e função, podendo incluir microcomputadores, estações de trabalho, minicomputadores e sistemas de computadores de uso em geral. Estes processadores são geralmente chamados de nós, dependendo do contexto no qual eles estejam mencionados. Usa-se principalmente o termo nó (lugar, posição), a fim de enfatizar a distribuição física destes sistemas. Veja o exemplo na Figura 1:


Figura 1: Figura demonstrando o sistema de banco de dados distribuído.

Armazenamento Distribuído dos Dados

Uma relação r (ou tabela) possui diversos enfoques para o armazenamento em um banco de dados distribuído (BDD):


Replicação de dados

A replicação de dados significa que um determinado objeto de dados logico pode possuir diversos representantes armazenados, em nós. O grau de suporte para a replicação é um pre-requisito para atingir o verdadeiro potencial de um sistema distribuído.

Fragmentação de dados

Uma relação é dividida em fragmentos, onde cada fragmento contem informação suficiente para permitir a reconstrução da relação original.

Existem duas formas de fazer a fragmentação:


Fragmentação e Replicação de Dados

As técnicas de fragmentação e replicação podem ser aplicadas sucessivamente a uma mesma relação.Um fragmento pode ser replicado, e as réplicas podem ser fragmentadas novamente e assim por diante.

Processamento de consultas distribuídas

A transparência para leitura é mais fácil de se conseguir e manter do que a transparência para atualização. O maior problema para a atualização é garantir que todas as réplicas e fragmentos sejam atualizados, após uma atualização em uma das réplicas ou fragmentos. A atualização deve ser prolongada para todas as cópias (réplicas e fragmentos) existentes no sistema.

Um dos fatores mais importantes no desempenho de uma consulta, em uma base centralizada, é a quantidade de acesso a disco necessária para atingir o resultado. Em um banco distribuído os problemas aumentam, pois existe também a preocupação com a transmissão de dados na rede. Um fator interessante para a consulta realizada em uma base distribuída é que para os diversos sites podem processar partes da consulta em paralelo.

Na realização de uma consulta simples (trivial), como consultar todas as tuplas da relação CONTA, pode caracterizar um processamento não tão trivial, pois CONTA pode estar fragmentada, replicada ou ambas.

Transações

O acesso a diversos itens de dados em um sistema distribuído é normalmente acompanhado de transações que têm de preservar as propriedades ACID:


Caracteristicas da ACID



Tipos de transação



Funções adicionais



Vantagens



Falhas

Em um sistema de banco de dados distribuído pode sofrer os mesmos tipos de falhas que ocorrem em um sistema centralizado, porem existem falhas adicionais que podem ocorrer em um (BDD), tais como: falha de comunicação entre eles, perda de mensagens e o particionamento da rede, cada um desses problemas devem ser considerados no projeto de recuperação de um BDD. Para um sistema ser robusto, ele precisa detectar qualquer uma dessas falhas, reconfigurar-se enquanto a falha é recuperada.

Com isso finalizo este artigo, espero que o mesmo ajude mesmo que de forma básica com essas informações sobre este tipo de banco de dados.

Artigos relacionados