DBMS Distribuído - Bancos de Dados Distribuídos

Este capítulo apresenta o conceito de DDBMS. Em um banco de dados distribuído, há vários bancos de dados que podem ser distribuídos geograficamente em todo o mundo. Um DBMS distribuído gerencia o banco de dados distribuído de forma que ele apareça como um único banco de dados para os usuários. Na última parte do capítulo, vamos estudar os fatores que levam a bancos de dados distribuídos, suas vantagens e desvantagens.

UMA distributed database é uma coleção de vários bancos de dados interconectados, que estão fisicamente espalhados por vários locais que se comunicam por meio de uma rede de computadores.

Características

  • Os bancos de dados da coleção estão logicamente inter-relacionados. Freqüentemente, eles representam um único banco de dados lógico.

  • Os dados são armazenados fisicamente em vários sites. Os dados em cada site podem ser gerenciados por um DBMS independente dos outros sites.

  • Os processadores nos sites são conectados por meio de uma rede. Eles não têm nenhuma configuração de multiprocessador.

  • Um banco de dados distribuído não é um sistema de arquivos fracamente conectado.

  • Um banco de dados distribuído incorpora processamento de transações, mas não é sinônimo de sistema de processamento de transações.

Sistema de gerenciamento de banco de dados distribuído

Um sistema de gerenciamento de banco de dados distribuído (DDBMS) é um sistema de software centralizado que gerencia um banco de dados distribuído de uma maneira como se todos estivessem armazenados em um único local.

Características

  • Ele é usado para criar, recuperar, atualizar e excluir bancos de dados distribuídos.

  • Ele sincroniza o banco de dados periodicamente e fornece mecanismos de acesso em virtude dos quais a distribuição se torna transparente para os usuários.

  • Ele garante que os dados modificados em qualquer site sejam atualizados universalmente.

  • É usado em áreas de aplicação onde grandes volumes de dados são processados ​​e acessados ​​por vários usuários simultaneamente.

  • Ele é projetado para plataformas de banco de dados heterogêneas.

  • Ele mantém a confidencialidade e integridade dos dados dos bancos de dados.

Fatores que encorajam DDBMS

Os seguintes fatores incentivam a mudança para DDBMS -

  • Distributed Nature of Organizational Units- A maioria das organizações nos tempos atuais está subdividida em várias unidades fisicamente distribuídas pelo globo. Cada unidade requer seu próprio conjunto de dados locais. Assim, o banco de dados geral da organização é distribuído.

  • Need for Sharing of Data- As várias unidades organizacionais frequentemente precisam se comunicar umas com as outras e compartilhar seus dados e recursos. Isso exige bancos de dados comuns ou bancos de dados replicados que devem ser usados ​​de maneira sincronizada.

  • Support for Both OLTP and OLAP- Processamento de transações online (OLTP) e processamento analítico online (OLAP) funcionam em sistemas diversificados que podem ter dados comuns. Os sistemas de banco de dados distribuídos auxiliam ambos no processamento, fornecendo dados sincronizados.

  • Database Recovery- Uma das técnicas comuns usadas no DDBMS é a replicação de dados em diferentes sites. A replicação de dados ajuda automaticamente na recuperação de dados se o banco de dados em qualquer site estiver danificado. Os usuários podem acessar dados de outros sites enquanto o site danificado está sendo reconstruído. Portanto, a falha do banco de dados pode se tornar quase imperceptível para os usuários.

  • Support for Multiple Application Software- A maioria das organizações usa uma variedade de softwares aplicativos, cada um com seu suporte de banco de dados específico. O DDBMS fornece uma funcionalidade uniforme para usar os mesmos dados entre plataformas diferentes.

Vantagens de bancos de dados distribuídos

A seguir estão as vantagens dos bancos de dados distribuídos em relação aos bancos de dados centralizados.

Modular Development- Se o sistema precisa ser expandido para novos locais ou novas unidades, em sistemas de banco de dados centralizados, a ação requer esforços substanciais e interrupção do funcionamento existente. No entanto, em bancos de dados distribuídos, o trabalho requer apenas adicionar novos computadores e dados locais ao novo site e, finalmente, conectá-los ao sistema distribuído, sem interrupção das funções atuais.

More Reliable- Em caso de falhas no banco de dados, todo o sistema de bancos de dados centralizados é interrompido. Porém, em sistemas distribuídos, quando um componente falha, o funcionamento do sistema continua podendo ter um desempenho reduzido. Portanto, o DDBMS é mais confiável.

Better Response- Se os dados são distribuídos de maneira eficiente, as solicitações do usuário podem ser atendidas a partir dos próprios dados locais, proporcionando uma resposta mais rápida. Por outro lado, em sistemas centralizados, todas as consultas devem passar pelo computador central para processamento, o que aumenta o tempo de resposta.

Lower Communication Cost- Em sistemas de banco de dados distribuídos, se os dados estiverem localizados localmente, onde são mais usados, os custos de comunicação para manipulação de dados podem ser minimizados. Isso não é viável em sistemas centralizados.

Adversidades de bancos de dados distribuídos

A seguir estão algumas das adversidades associadas aos bancos de dados distribuídos.

  • Need for complex and expensive software - O DDBMS exige um software complexo e frequentemente caro para fornecer transparência de dados e coordenação entre os vários sites.

  • Processing overhead - Mesmo operações simples podem exigir um grande número de comunicações e cálculos adicionais para fornecer uniformidade nos dados entre os sites.

  • Data integrity - A necessidade de atualização de dados em vários sites apresenta problemas de integridade de dados.

  • Overheads for improper data distribution- A capacidade de resposta das consultas depende muito da distribuição adequada dos dados. A distribuição inadequada de dados geralmente leva a uma resposta muito lenta às solicitações do usuário.