• Like
  • Save
12 objetivos de banco de dados distribuídos
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

12 objetivos de banco de dados distribuídos

  • 10,225 views
Published

Este material foi elaborado a partir dos 12 objetivos mostrados por C.J Date em seu livro Introdução a Sistemas de Banco de Dados (An Introduction to Database Systens).

Este material foi elaborado a partir dos 12 objetivos mostrados por C.J Date em seu livro Introdução a Sistemas de Banco de Dados (An Introduction to Database Systens).

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
10,225
On SlideShare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
0
Comments
0
Likes
4

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Os 12 objetivos de Banco de Dados Distribuídos Por: Bruno Felipe brunofelipefr@gmail.com
  • 2. Este material foi elaborado a partir dos 12 objetivos mostrados por C.J Date em seu livro Introdução a Sistemas de Banco de Dados (An Introduction to Database Systens). O propósito deste material é voltado principalmente as questões sobre banco de dados distribuídos existentes nos concursos para administrador de banco de dados realizados no Brasil.
  • 3. Introdução Normalmente as empresas hoje estão distribuídas em setores e fisicamente, precisamos de uma maneira de consolidar os dados existentes nestas empresas e seus determinados setores. Como temos as redes de comunicações para interligar computadores entre si em distancias geográficas, podemos tirar proveito das mesmas para interconectar nossos banco de dados e assim fazer fluir mais facilmente nossos dados. Para atingir essa eficiência é preciso muita disciplina na construção desses bancos de dados distribuídos, até mesmo as vezes não podemos colocar em prática todos os 12 objetivos dito por Date pois, depende muito do tipo de usuário e suas necessidades. Contudo esses conhecimentos são importantes para uma compreensão da tecnologia distribuída.
  • 4. Os 12 objetivos 1. Autonomia local: Os bancos de dados em um sistema devem ser autônomos. Essa autonomia local significa que nenhum BD conectado a outro precisa do mesmo para funcionar ou executar qualquer tarefa ou seja um BD X não precisa de um BD Y para realizar qualquer função. De outra maneira se o BD Y estiver inoperante consequentemente o BD Y não irá realizar suas tarefas bem sucedidas.
  • 5. Os 12 objetivos 2. Não dependência de um BD central: Como dito anteriormente nenhum BD precisa de outro BD para realizar suas funções. Em várias redes de comunicação existe uma máquina especial para servir outras máquinas com n recursos, essas máquinas são chamadas servidores. No que diz respeito a BD distribuídos não desejaríamos essa arquitetura(uma figura central) pois todos os outros Bds iriam necessitar deste e se o mesmo vier a falhar os outros não irão funcionar corretamente. Então se o primeiro objetivo é realizado este segundo vem sem esforços.
  • 6. Os 12 objetivos 3. Operação contínua: As principais vantagens de um sistema distribuído é que devem oferecer confiabilidade e disponibilidade: Confiabilidade → É a probabilidade de confiança transmitida por um sistema de ficar operante sem queda a qualquer momento dado. A confiabilidade é maior principalmente em sistemas distribuídos pois, eles não operam da maneira tudo ou nada eles podem continuar a funcionar(em menor desemprenho) mesmo diante da falha de um componente individual. Disponibilidade → É a probabilidade de um sistema estar pronto e funcionando continuamente sem quedas durante um período especificado. Assim como a confiabilidade, a disponibilidade é melhor atendida e sistemas distribuídos principalmente pela replicação de dados.
  • 7. Os 12 objetivos 4. Independência de localização: A ideia básica da independência de localização(ou transparência) é, os usuários não devem ser obrigados a saber onde estão fisicamente armazenados os dados isto deve ser transparente para ele. Os usuários devem se comportar como se todos os dados estivessem no BD que ele esta acessando, pelo menos de um ponto de vista lógico. Este recurso é bem vindo porque simplifica os programas de aplicação e as atividades de usuários finais ou seja permite que dados sejam migrados de um BD para outro sem invalidar qualquer um desses programas ou atividades.
  • 8. Os 12 objetivos 5. Independência de fragmentação: Uma fragmentação é uma determinada relação(tabela) pode ser dividida em pequenos fragmentos para fins de armazenamento físico e os fragmentos distintos podem ser armazenados em BDs diferentes . Podemos necessitar da fragmentação principalmente por questões de desempenho: os dados podem ser divididos e guardados em BDs que são mais utilizados para melhorar o desempenho da rede de comunicação.
  • 9. 5. Independência de fragmentação: Então como na independência de localização a independência de fragmentação deve proporcionar para o usuário uma divisão de dados de forma transparente sem o usuário estar ciente que os dados estão sendo fragmentados. Isto é desejável porque simplifica programas do usuário e atividades de terminal, permite que dados sejam refragmentados a qualquer momento em repostas a qualquer mudança nas exigências de desempenho.
  • 10. Os 12 objetivos 6. Independência de replicação: Um sistema admiti replicação, se uma determinada relação ou parte dela pode ser representada por muitas cópias ou réplicas distintas armazenadas em diferentes lugares.
  • 11. 6. Independência de replicação: Existem dois motivos principais para a replicação: desempenho, pois os sistemas podem operar em réplicas locais ao invés de ir buscar dados em máquinas remotas e disponibilidade, sempre que houver um mínimo disponível de réplica esse sistema estará sempre disponível para eventuais consultas. Mais uma vez para realizar a independência de replicação deve-se proporcionar para o usuário de forma transparente uma replicação de dados sem o usuário estar ciente que os dados estão sendo replicados. Isto é desejável porque simplifica os programas de aplicações e as atividades do usuário final, permitindo assim a criação e destruição de réplicas em qualquer momento em repostas a mudanças de requisitos, sem invalidar nenhum desses programas ou atividades.
  • 12. Os 12 objetivos 7. Processamento de consultas distribuído: Este objetivo diz que a otimização é crucial em sistemas distribuídos onde o menor tempo para uma tarefa ser executada com sucesso atinge um bom processamento de consultas distribuídas. Se um sistema for completamente relacional as requisições podem ser otimizadas enquanto que em um modelo não relacional isto não é possível.
  • 13. Os 12 objetivos 8. Gerenciamento de transações distribuídas: Existem dois aspectos que precisam ser bem tratados em um sistema distribuído em relação a transações: concorrência e recuperação. Para explicar esse tratamento irá ser introduzido um termo chamado agente. Em um sistema distribuído, uma única transação pode envolver código de diversos BDs em particular pode envolver atualizações em diversos BDs. Dizemos então que cada atualização consistem em vários agentes, onde um agente é um processo executado em favor a uma determinada transação em um BD específico. E o sistema deve saber quando dois agente fazem partes de uma mesma transação para evitar impasse(deadlock) entre eles. Na parte de recuperação, em um ambiente distribuído para garantir que uma transação é atômica(tudo ou nada), o sistema deve assegurar um commit em uníssono ou o rollback em uníssono. Então todas as atualizações devem ser feitas no exato momento ou desfeitas no mesmo. Sobre o controle da concorrência a maioria dos sistemas distribuídos o implementa através de bloqueios, exatamente como em um sistema não distribuído.
  • 14. Os 12 objetivos 9. Independência de Hardware: Atualmente existe diversas arquiteturas de hardware de computadores, máquinas IBM, HP, PC, Mac... e existe uma necessidade de integrar esses dados em diferentes tipos de máquinas e mostrar ao usuário uma visão de um único sistema. É desejável poder executar o mesmo SGBD em diferentes plataformas de hardware e ter todas as máquinas diferentes atuando como parceiras em um sistema distribuído.
  • 15. Os 12 objetivos 10. Independência de sistema operacional: Assim como o objetivo anterior, temos que manter os mesmos SGBDs trabalhando bem nos SO diversos: Unix, Windows, OS/390. E fazer esses diferente SGBDs trabalharem em parceria em um sistema distribuído com diferentes tipos de sistemas operacionais.
  • 16. Os 12 objetivos 11. Independência da rede: Se um sistema deve admitir diferentes tipos de hardware e sistemas operacionais é indispensável admitir diferentes tipos de redes de comunicações. Ex: token ring. Ethernet, peer-to-peer...
  • 17. Os 12 objetivos 12. Independência de SGBD: É desejável que diferentes sistemas atinjam um bom nível de heterogeneidade admitindo assim diferentes SGBD ou instancias. Posso ter uma determinada máquina com Oracle outra com MySQL outra com Ingres e assim por diante. Trabalhando como parceiras em um sistema distribuído até mesmo usando middlewares para quebrar as diferenças do SQL impostas pelos diferentes SGBDs.
  • 18. Bibliografia: C.J. Date – Introdução a Sistemas de Banco de Dados(An Introduction to Database Systens) cap 21.