Banco de Dados Distribuídos Sílvia Cristina de Matos Soares

Slides:



Advertisements
Apresentações semelhantes
09/05/2011 Professor Leomir J. Borba- –
Advertisements

Sistemas Distribuídos
Sistemas distribuídos Metas de Projeto Prof. Diovani Milhorim
Sistemas Distribuídos
Curso: Banco de Dados I Análise de Sistemas PUC Campinas
Introdução aos Sistemas Distribuídos
Sistemas operacionais
Resumo 1.1) Introdução 1.2) Abordagem Convencional de Arquivos
BANCO DE DADOS Transparências baseadas no capítulo 1 do livro de KORTH e SILBERCHATZ e 1 e 2 do livro de ELMASRI e NAVATHE. Juliana Amaral e Rodrigo Baroni.
Sistemas Distribuídos:Definições e Caracteristicas
Introdução a Banco de Dados
Introdução a Banco de Dados Prof.: Bruno Rafael de Oliveira Rodrigues.
SISTEMAS DE INFORMAÇÃO
SISTEMAS DISTRIBUÍDOS
Professora: Aline Vasconcelos
Fundamentals of Database Processing
Sistemas Prof. Carlos Padovani.
Prof. Alexander Roberto Valdameri
Prof. Alexander Roberto Valdameri
Fundamentos de Banco de Dados Prof. Alexander Roberto Valdameri
ESTRUTURA DE COMUNICAÇÃO DE DADOS
Professor Victor Sotero
Sistemas Operacionais de Rede
Banco de dados distribuídos
Sistemas Operacionais I
Administração de Sistemas de Informação Banco de Dados
Sistemas Distribuídos
Middleware e Sistemas Distribuídos
Banco de Dados II Prof. Antônio Cordeiro.
Tópicos em redes e sistemas distribuídos
Sistemas Distribuídos
Web Services Uninorte Semana de Tecnologia da Informação
Gerenciamento de Dados
Banco de Dados e Usuários do Banco de Dados (capítulo 1)
Arquitetura Cliente /Servidor
Tecnologia da Informação
ARQUITETURA DE SOFTWARE
Projeto de Banco de Dados
Exercícios SGBD - CESPE
Sistemas Distribuídos Introdução. Conceito Coleção de múltiplos processos que executam sobre uma coleção de processadores autônomos interligados em uma.
Sistemas Distribuídos
BD Distribuído Conceitos Iniciais.
Contexto da disciplina
SGBD Distribuído Lílian Simão Oliveira.
Banco de Dados Aplicado ao Desenvolvimento de Software
Objetivos do Capítulo Explicar a importância da implementação de processos e tecnologias de gerenciamento de dados numa organização. Explicar as vantagens.
Campus de Caraguatatuba Aula 2: Introdução a Tecnologia de BD
Bancos de Dados Estrutura e Funcionamento de um SGBD
Dados e Informações são considerados os maiores ativos de uma organização. Muito importantes para o correto planejamento, desenvolvimento e operação de.
Teste.
Definição um sistema de BD distribuído consistem em uma rede de várias ocorrências de bases de dados interligadas. característica principal para o usuário,
Integração de Ferramentas CASE
Mestrado em Engenharia de Computação área de concentração Geomática
Arquitetura P2P (Integração de Dados) Luciana Pereira Oliveira Professora: Valéria Times Professora: Valéria Times.
Bancos de Dados Distribuídos
Banco de Dados Representa o arquivo físico de dados, armazenado em dispositivos periféricos, para consulta e atualização pelo usuário. Possui uma série.
Capítulo 1 Sistemas de Banco de Dados
Serviços de rede e internet Jackson Eduardo da Silva.
Tipos de Sistemas Operacionais
Projeto de Banco de Dados
Professor: Leandro Chernicharo.  Uma coleção de dados relacionados;  Dados  Fatos conhecidos que podem ser gravados e têm um significado implícito.
UCSal – Bacharelado em Informática
Arquitetura de computadores
Redes e Sistemas Distribuídos II – Cód Prof. MSc. Ronnison Reges Vidal.
Leandro Clementino Almeida.  Anos 50 - Sistemas Operacionais tipo Lote:  Aumentar a capacidade de processamento de programas  Usuário ia ao computador.
Modelos de dados.
Fundamentos de Banco de Dados Prof. André Cypriano M. Costa
Estruturas de Sistemas Operacionais. Componentes Comuns do Sistema Administração de Processos Administração da Memória Principal Administração do Armazenamento.
Bruna Cavallero Martins Universidade Católica de Pelotas.
Modelagem de Banco de Dados: Conceitos
Transcrição da apresentação:

Banco de Dados Distribuídos Sílvia Cristina de Matos Soares Fundamentos Sílvia Cristina de Matos Soares silvia@puc-campinas.edu.br

Ambiente de Banco de Dados Centralizado

Abstração de Dados Nível de Visão Visão 1 Visão 2 .......... Visão n Nível médio que descreve quais dados estão armazenados e quais os inter-relacionamentos Nível Lógico Nível baixo que descreve como os dados estão armazenados Nível Físico

Banco de Dados Centralizado Esquema Externo Esquema Externo Nível Visão Visão p/ cada grupo usuário Facilitar desenvolvimento de aplicações Restringir acesso a dados Nível Lógico Independe da forma de armazenamento Conjunto de estruturas descrevendo a organização dos dados e as restrições de integridade Modelo de dados Esquema Conceitual Nível Físico Como os dados estão armazenados Métodos de acesso Estruturas de arquivos Sistema de gerência do BD Esquema Interno

Ambiente de Banco de Dados Distribuído (BDD)

O Que é um Sistema de Banco de Dados Distribuído (SBDD) Base de Dados Distribuída (BDD) Coleção de diversas bases de dados, interligadas logicamente por meio de uma rede de computadores Sistema de Gerência de Bases de Dados Distribuídas (SGBDD) Sistema de software que possibilita a gerência da BDD e trata da distribuição transparente para o usuário Sistema de Banco de Dados Distribuído (SBDD) SBDD = BDD + SGBDD

O Que é um Sistema de Banco de Dados Distribuído (SBDD) Grupo de elementos autônomos de processamento (não necessariamente homogêneos) Interconectados por uma rede de computadores Cooperam na realização de tarefas

O Que Está Distribuído? Lógica do processamento Funções Dados Controle

Principais Características de um SBDD Dados armazenados em diversos locais (nós) Processadores dos nós interconectados por meio de rde de computadores A base de dados distribuída não é uma coleção de arquivos O SGBDD possui toda a funcionalidade de um SGBD Tecnologia atual: multiprocessadores e cliente/servidor

O Que NÃO é um Sistema de Banco de Dados Distribuído (SBDD) Sistema de Timesharing (Tempo compartilhado) Sistema de Multiprocessamento Memória compartilhada Disco compartilhado Sistema de banco de dados que reside em um nó da rede Sistema de banco de dados centralizado

Ambiente de Banco de Dados Distribuído (BDD)

Banco de Dados Distribuídos Esquema Externo Global Esquema Externo Global Esquema Conceitual Global Esquema Conceitual Local Esquema Conceitual Local A distribuição do BDD deve ser transparente para o usuário. A nível lógico, um BDD deve ser visto como um BD centralizado. Os dois primeiros níveis são idênticos para BD centralizado e distribuído. Deve existir um esquema conceitual local para cada nó onde uma parte do banco está armazenada, que descreverá o banco de dados local. O mapeamento do esquema conceitual global para os esquemas conceituais locais define o critério de distribuição utilizado. O mapeamento dos esquemas conceituais locais para os esquemas internos locais define a estratégia de armazenamento de cada BD local. Cada nó possui uma descrição completa do BD a nível físico e lógico. Esquema Interno Local Esquema Interno Local

Banco de Dados Local Esquema Externo Local Esquema Externo Global Esquema Conceitual Local Sistemas locais devem manter sua autonomia, portanto, cada nó deve descrever a visão de dados local para cada grupo de usuários locais. Esquema Interno Local

Projeto de Banco de Dados Distribuídos Esquema Interno Local Esquema Conceitual Global Esquema Externo Projeto semelhante ao BD Centralizado Projeto dos esquemas conceituais locais O BD distribuído deverá se comportar como centralizado perante os usuários globais. Projeto semelhante ao BD Centralizado Considerar a carga imposta por acessos remotos aos dados locais

Projeto de Banco de Dados Distribuídos Projeto dos esquemas conceituais locais Reflete Estratégia de distribuição do banco Particionamento Replicação

Estratégia de distribuição do banco Seja D uma estrutura (lógica) de dados do esquema conceitual global Esquema conceitual global FORNECEDORES (NUMERO, NOME, SEDE) PECAS (CODIGO, NOME, COR, PESO) FORNECIMENTO (NUMERO, CODIGO, QUANTIDADE) Esquema externo global A Esquema de relação: FORN_PECA (NUMERO, CODIGO, NOME) Definição: FORN_PECA = (FORNECIMENTO * PECAS) (NUMERO, CODIGO, NOME) Esquema externo global B Esquema de relação: FORN_PECA (NUMERO, CODIGO) Definição: FORN_PECA = FORNECIMENTO (NUMERO, CODIGO)

Estratégia de distribuição do banco Esquemas conceituais locais Primeiro nó: FORNECEDORES1 (NUMERO, NOME, SEDE) PECAS1 (CODIGO, NOME) FORNECIMENTO1 (NUMERO, CODIGO, QUANTIDADE) Segundo nó: FORNECEDORES2 (NUMERO, NOME, SEDE) PECAS2 (CODIGO, COR, PESO) FORNECIMENTO2 (NUMERO, CODIGO, QUANTIDADE) Mapeamentos definindo o critério de distribuição Primeiro nó: FORNECEDORES1 = FORNECEDORES (SEDE = ‘PASSA TRES’) PECAS1 = PECAS (CODIGO, NOME) FORNECIMENTO1 = FORNECIMENTO * (FORNECEDORES1 (NUMERO)) Segundo nó: FORNECEDORES2 = FORNECEDORES (SEDE ≠ ‘PASSA TRES’) PECAS2 = PECAS (CODIGO, COR, PESO) FORNECIMENTO2 = FORNECIMENTO * (FORNECEDORES2 (NUMERO))

Estratégia de distribuição do banco Particionamento Seja D uma estrutura (lógica) de dados do esquema conceitual global Particionamento Vertical D é mapeada em duas ou mais estruturas (lógicas) de dados que não são idênticas a D e que pertencem a diferentes esquemas conceituais locais PECAS foi particionada em PECAS1 e PECAS2

Estratégia de distribuição do banco Particionamento Seja D uma estrutura (lógica) de dados do esquema conceitual global Particionamento Horizontal (ou por ocorrência) D é mapeada em estruturas idênticas a D e que pertencem a dois ou mais esquemas conceituais locais de tal forma que o mapeamento define um particionamento do conjunto de dados associados a D FORNECEDORES foi particionada em FORNECEDORES1 e FORNECEDORES2

Estratégia de distribuição do banco Replicação D é replicada quando D é mapeada em duas ou mais estruturas (lógicas) de dados idênticas a D e que pertencem a diferentes esquemas conceituais locais de tal forma que o mapeamento de D em cada uma destas estruturas é sempre a identidade. Existirão cópias idênticas do conjunto de dados associado a D armazenadas em dois ou mais nós.

Estratégia de distribuição do banco Replicação Total Cada banco de dados local contém uma cópia completa do banco Replicação Parcial Cada banco de dados local contém uma cópia de parte do banco

Estratégia de distribuição do banco Resumo % de Exceções Tamanho do Arquivo Método de distribuição ---- Pequeno Replicação Pequena Grande Particionamento Alta Centralizado

12 Regras para SGBDD 1. Autonomia local: Cada nó participante de um sistema distribuído deve ser independente dos outros nós. Cada nó deve prover mecanismos de segurança, bloqueio, acesso, integridade e recuperação após falha. 2. Não dependência de um nó central: Um sistema de banco de dados distribuído não deve depender de um nó central, pois isso acarretaria um único ponto de falha, afetando todos os outros nós. Um nó central também poderia ficar sobrecarregado resultando em perda de desempenho do sistema 3. Operação contínua: Um sistema de banco de dados distribuído nunca deve precisar ser desativado. As operações de backup e recuperação devem ser suportadas on-line. Essas operações devem ainda ser rápidas o bastante para não afetarem o funcionamento do sistema

12 Regras para SGBDD 4. Transparência/independência de localização: Os usuários do sistema não devem precisar saber o local onde estão localizados os dados; devem se comportar como se os dados estivessem armazenados localmente. 5. Independência de fragmentação: As tabelas que fazem parte de um sistema de banco de dados distribuído podem estar divididas em fragmentos, localizados fisicamente em diferentes nós, de forma transparente para o usuário. 6. Independência de replicação: Dados podem estar replicados em vários nós da rede, de forma transparente. As réplicas de dados devem ser mantidas sincronizadas automaticamente pelo SGBDD • A transparência de localização pode ser alcançada pela utilização de sinônimos estendidos e pelo extenso uso do dicionário de dados. • A transparência de localização permite que aplicações sejam portadas de um nó da rede para outro sem a necessidade de modificações.

12 Regras para SGBDD 7. Processamento de consultas distribuído: O desempenho de uma consulta deve ser independente do local onde a mesma é submetida. Um SGBDD deve possuir um otimizador capaz de selecionar não apenas o melhor caminho para o acesso a um determinado nó da rede, mas também otimizar o desempenho de uma consulta distribuída, levando em conta a localização dos dados, utilização de CPU, I/O e o tráfego na rede. 8. Gerenciamento de transações distribuídas: Um SGBDD deve suportar transações atômicas. As propriedades ACID (Atomicidade, Consistência, Independência e Durabilidade) das transações e a serialização devem ser suportadas não apenas para transações locais, mas para transações distribuídas também. 9. Independência de hardware: Um SGBDD deve poder operar e acessar dados em uma variedade de plataformas de hardware.

12 Regras para SGBDD 10.Independência de sistema operacional: Um SGBDD deve poder executar em sistemas operacionais diferentes. Assim como na regra anterior, um SGBDD não deve depender de um sistema operacional em especial. 11.Independência de rede: Um SGBDD deve ser projetado para executar independentemente do protocolo de comunicação e da topologia de rede usada para interligar os vários nós que fazem parte da rede. 12.Independência de SGBD: Um SGBDD ideal deve possuir capacidades para se comunicar com outros sistemas de gerenciamento de banco de dados executando em nós diferentes, mesmo se estes sistemas de bancos de dados são diferentes (heterogêneos). Todos estes sistemas devem usar APIs