SEPI - Sistema de Ensino Presencial Integrado

Propaganda
MÓDULO 12 – ARQUITETURA DOS SISTEMAS DE BANCO DE DADOS
Quando falamos em arquitetura, normalmente utilizamos esse termo para referenciar
a forma como os aplicativos computacionais são estruturados e os hardwares estão
dispostos e são utilizados. Utilizaremos o termo arquitetura no nosso capítulo para
descrever a forma que os hardwares que são utilizados pelos sistemas de banco de
dados estão dispostos e a forma como os SGBD`s serão utilizados.
A indústria da computação está atravessando uma grande evolução atualmente o
que proporcionou o barateamento dos equipamentos de hardware, possibilitando
que os enormes e caros mainframes fossem substituídos por pequenos, mas
potentes computadores. Os sistemas computacionais também acompanharam essa
evolução, sendo desenvolvidos sobre arquiteturas flexíveis, eficientes e abertas.
A escolha da arquitetura ideal é cercada de perguntas e dúvidas. A pergunta mais
comum é: O que é uma arquitetura desse tipo? O que é necessário para promover a
sua implementação? Quais são as principais vantagens e desvantagens em utilizar
esse tipo de arquitetura? Vamos tirar todas essas dúvidas falando um pouco sobre
cada uma das arquiteturas existentes.
12.1 Arquitetura de banco de dados centralizada
O modelo computacional que é utilizado durante anos é o chamado sistema
centralizado composto por um “host” e vários “terminais” onde os terminais possuem
pouco poder de processamento e são compostos apenas pelo monitor e o teclado
que ficam conectados a um grande computador “mainframe” que possui a
capacidade de processar e armazenar os dados. Esse tipo de arquitetura tem como
característica a necessidade de grandes investimentos tanto na aquisição de
equipamentos como na manutenção dos mesmos.
Considerando a utilização de um sistema de gerenciamento de banco de dados, ele
e todos os seus aplicativos são hospedados no host e são acessados pelos
terminais “burros” que estão conectados ao host. Dessa forma, todo o
processamento dos dados é realizado no computador central.
Principais Vantagens:



Um único host fornece alto grau de segurança, concorrência e controle de
cópias de segurança e recuperação.
Não há necessidade de um diretório distribuído, já que todos os dados estão
localizados em um único host.
Não existe a necessidade de junções distribuídas, já que todos os dados
estão em um único host.
Principais desvantagens:



Todos os acessos aos dados realizados por outro que não seja o host onde o
banco de dados está, gera alto custo de comunicação.
O host em que o banco de dados está localizado pode criar um “gargalo”,
dependendo da quantidade de acessos simultâneos.
Podem acontecer problemas de disponibilidade dos dados, se o host onde os
dados estão armazenados sair do ar.
12.2 Arquitetura de banco de dados descentralizada
Na arquitetura de banco de dados descentralizada os dados são armazenados em
pelo menos dois hosts, sendo que a totalidade dos dados são armazenados em um
único servidor e em outros servidores são mantidos parte do banco de dados. Todo
tipo de transação que é realizada, é feita primeiro no servidor local antes de ser
atualizado o servidor central.
Principais vantagens:



Autonomia local.
Custo de comunicação reduzido, pois cada tabela pode ficar localizada no
host que mais a usa.
Aumento da disponibilidade dos dados.
Principais desvantagens:

Os diversos locais tem que se preocupar com a segurança, concorrência e
cópias de segurança dos dados.
12.3 Arquitetura de banco de dados distribuída
A arquitetura de banco de dados distribuída tem como característica a subdivisão
dos dados e o seu compartilhamento entre vários computadores e a sua atualização
é feita através de um sincronismo entre os computadores pertencentes ao circuito de
distribuição. A arquitetura distribuída utiliza vários SGBD`s que são espalhados
pelos hosts e contendo dados replicados em vários lugares em que bancos de
dados diferentes são consultados ao mesmo tempo por um mesmo usuário. Os
dados são distribuídos pela rede e quando é feita uma consulta pelo usuário essa
distribuição é transparente, fazendo com que o usuário pense que ele está
consultando os dados de apenas um computador e não vários computadores.
Principais vantagens:



Utilização de diferentes SGBD`s;
Utilização de diferentes tipos de computadores;
Possibilidade de acessar os dados de vários computadores como se fosse de
apenas um só.
Principais desvantagem:

Esforço computacional para que seja mantida a consistência dos dados e a
sua segurança.
12.4 Arquitetura de banco de dados replicada
Na arquitetura de replicação, os dados são armazenados em hosts replicados
permitindo que a falha de um determinado host possa ser contornada pelo host que
irá substituí-lo. O banco de dados primário é igual ao banco de dados secundário. As
transações atualizam primeiro o banco de dados primário para depois ser atualizado
o banco de dados secundário.
Principais Vantagens:

Custo de comunicação reduzido para o acesso aos dados apenas para
leitura, pois as cópias das tabelas podem estar localizadas nos hosts que
mais utilizam.

Melhor disponibilidade pois se um host com um banco X sair do ar, o outro
host que possui a replicação do mesmo banco entra em ação.
Principais desvantagens:

O controle de concorrência em diversos bancos quando os dados das tabelas
replicadas são atualizados.
12.5 Arquitetura de banco de dados paralela
Na arquitetura de banco de dados paralela é utilizado o paralelismo de vários
servidores que trabalham simultaneamente sobre os seus respectivos bancos de
dados para a obtenção de um rápido resultado. No paralelismo os servidores são
alinhados e cada um é responsável pelas sub-tarefas de um banco de dados.
Toda unificação e distribuição é realizada por um hardware que tem o papel de
roteamento, fazendo com que o particionamento seja de dois tipos:

HASH: No particionamento HASH as tabelas são particionadas igualmente
segundo uma chave de hashing. A sua utilização é ideal para aplicativos que
enfatizam o acesso associado.

RANGER: No particionamento RANGER as tabelas são divididas por vários
valores de chaves. A sua utilização é ideal para aplicações que enfatizam a
busca pela chave de particionamento.

ESQUEMA: As tabelas são distribuídas entre vários servidores e a sua
utilização é ideal quando se possui grandes quantidades de tabelas
pequenas.
Download