Bancos de Dados Distribuídos



Documentos relacionados
Bancos de Dados Distribuídos

Introdução a Banco de Dados

BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo

Projeto de Banco de Dados Distribuído Proj o e j to t o de d B a B nc n o o d e d Da D do d s o D i D str t ibu b í u do d s

Programação com acesso a BD. Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

Sistemas de Bancos de Dados Distribuídos

Sistemas de Bancos de Dados Distribuídos

Top. Esp em Banco de Dados

Bancos de Dados Distribuídos

Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados.

SISTEMA GERENCIADOR DE BANCO DE DADOS

PEER DATA MANAGEMENT SYSTEM

Arquitetura de SGBD. Prof. Antonio Almeida de Barros Junior

Prof. Marcelo Machado Cunha

Disciplina de Banco de Dados Introdução

Roteiro. BCC321 - Banco de Dados I. Conceitos Básicos. Conceitos Básicos. O que é um banco de dados (BD)?

Características Carlos Ferraz

Arquitetura dos Sistemas de Informação Distribuídos

Arquitetura de Sistemas Distribuídos. Introdução a Sistemas Distribuídos

MÓDULO 8 ARQUITETURA DOS SISTEMAS DE BANCO DE DADOS

INE 5336 Banco de Dados II

Sistemas Distribuídos. Ricardo Ribeiro dos Santos

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados:

Introdução Banco de Dados

INE 5432 Banco de Dados II

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc.

INTRODUÇÃO E CONCEITOS BÁSICOS. Prof. Ronaldo R. Goldschmidt

Arquitetura de Banco de Dados

Faculdade Lourenço Filho - ENADE

Banco de Dados Arquiteturas para SGBDs

INE 5616 Banco de Dados II

Banco de Dados. Introdução. João Eduardo Ferreira Osvaldo Kotaro Takai. DCC-IME-USP

Sistema de Bancos de Dados. Conceitos Gerais Sistema Gerenciador de Bancos de Dados

Bancos de Dados Paralelos. Alunos: ALLAN ROGER BELLO WILLIAN DIAS TAMAGI

GBC043 Sistemas de Banco de Dados. Introdução. Ilmério Reis da Silva UFU/FACOM

Banco de Dados Distribuídos

Introdução. Definição de um Sistema Distribuído (1) Definição de um Sistema Distribuído(2) Metas de Sistemas Distribuídos (2)

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.

Conceitos de Banco de Dados

Profs. Deja e Andrei

Éverton Alves de Oliveira. Banco de Dados Distribuído no Desenvolvimento de Aplicações Comerciais

Prof.: Clayton Maciel Costa

Introdução. Banco de dados. Por que usar BD? Por que estudar BD? Exemplo de um BD. Conceitos básicos

Evolução. Tópicos. Bancos de Dados - Introdução. Melissa Lemos. Evolução dos Sistemas de Informação Esquemas Modelos. Características de SGBDs

BANCO DE DADOS AULA 02 INTRODUÇÃO AOS BANCOS DE DADOS PROF. FELIPE TÚLIO DE CASTRO 2015

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS

Sistemas Distribuídos

Softwares Aplicativos Banco de Dados

Sistemas Gerenciadores de Bancos de Dados

Banco de Dados I. Apresentação (mini-currículo) Conceitos. Disciplina Banco de Dados. Cont... Cont... Edson Thizon

Banco de Dados I Introdução

Conceitos Básicos. Conceitos Básicos. Sistema de Arquivos. Prof. Edilberto Silva - edilms@yahoo.com. Sistemas de Informação Brasília/DF

Banco de Dados I. Introdução. Fabricio Breve

Banco de Dados, Integração e Qualidade de Dados. Ceça Moraes cecafac@gmail.com

Conhecendo os usuários de um Sistema de Banco de Dados

Sistemas Distribuídos

Fundamentos dos Sistemas de Informação Organização de Dados e Informações

Comparação SDs X Scs

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

17/10/2008. Curso Superior de Tecnologia: Banco de Dados Sistemas para Internet Redes de Computadores

SGBD. Funções Básicas de um SGBD

Sistemas Distribuídos. Introdução

Banco de Dados. Uma coleção de dados relacionados [ELMASRI/NAVATHE]

Sistemas de Bases de Dados

LINGUAGEM DE BANCO DE DADOS

Etapas da evolução rumo a tomada de decisão: Aplicações Isoladas: dados duplicados, dados inconsistentes, processos duplicados.

Introdução à Banco de Dados. Definição

1998 M. Tamer Özsu & Patrick Valduriez, com tradução livre de Marta Mattoso. Sistemas de Bancos de Dados Distribuídos. Top. Esp em Banco de Dados

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

Faculdades Santa Cruz - Inove. Plano de Aula Base: Livro - Distributed Systems Professor: Jean Louis de Oliveira.

Disciplina: Tecnologias de Banco de Dados para SI s

REDES DE COMPUTADORES

Docente: Éberton da Silva Marinho

Banco de Dados I. Quantidade de informação gerada em um dia. Aula milhões de clientes ativos; Mais de 42 terabytes de dados; Salários na área

Sistemas Gerenciadores de Bancos de Dados

Sistemas Distribuídos. Introdução. Edeyson Andrade Gomes.

Fundamentos de Banco de Dados

BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING

Informação é o seu bem mais precioso e você não pode correr riscos de perder dados importantes. Por isso, oferecemos um serviço de qualidade e

Roteiro 2 Conceitos Gerais

Banco de Dados. Aula 1 - Prof. Bruno Moreno 16/08/2011

Sistemas Operacionais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Bases de Dados Distribuídas

1) O QUE NÃO É BANCO DE DADOS?

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

FACULDADE INTEGRADAS DE PARANAÍBA ADMINISTRAÇÃO DE EMPRESAS. Bancos de Dados Conceitos Fundamentais

Sistema de Banco de Dados Distribuídos e DataGrid

Transcrição:

Bancos de Dados Distribuídos Visão geral de BDD Fernanda Baião baiao@cos.ufrj.br Departamento de Informática Aplicada UNIRIO 2006.2 Bibliografia Utilizada Conteúdo Özsu, M.T. Valduriez, P. "Principles of Distributed Database Systems", 2 a edição, Prentice Hall, 1999 (versão em português lançada em 2001) Abiteboul, A., Buneman, P., and Suciu, D., Data on the Web, Morgan-Kaufman, 1999 Elmasri, R. Navathe, S. "Fundamentals of Database Systems", 2 a edição, Benjamin/Cummings, 1994 Ceri, S. Pelagatti, G. "Distributed Database Systems - Principles and Systems, McGraw Hill, 1984 Kossmann, D., The State of the Art in Distributed Query Processing, ACM Computing Surveys 32(4), pp. 422-469, 2000 1- Introdução 2- Caracterização de SBDD 3- Vantagens de SBDD 4- Principais Desafios dos SGBDD 5- As Novas Tecnologias e os SBDDs 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 3 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 4 Histórico dos Sistemas de Bancos de Dados Introdução Antes: Processamento de arquivos tradicional Programa 1 Descrição de dados Programa 2 Descrição de dados Programa 3 Descrição de dados Arquivo 1 Arquivo 2 Arquivo 3 Dados Redundantes 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 6 1

Histórico dos Sistemas de Bancos de Dados Processamento de Banco de Dados independência de dados Programa 1 Programa 2 Programa 3 Descrição de dados Manipulação de dados... Banco de Dados MotivaçãoparaosSistemasde Bancos de Dados Distribuídos Importância da tecnologia de Bancos de Dados Distribuídos Produtos no mercado Vantagens sobre os centralizados Previsões de substituição completa dos SGBDs centralizados Questões em aberto 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 7 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 8 Surgimento dos Sistemas de Bancos de Dados Distribuídos Centralização Tecnologia de BD Integração Integração Redes de Computadores Sistemas de Bancos de Dados Distribuídos Centralização Distribuição Processamento Distribuído Conceito em busca de uma definição consensual, amplamente utilizado Computação distribuída Um grupo de elementos de processamento autônomos não necessariamente homogêneos interconectados por uma rede de computadores cooperam na realização de tarefas 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 9 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 10 O que está sendo distribuído... Lógica de processamento Funções Dados Caracterização de SBDD Controle Em um SBDD, todos são necessários e importantes... 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 11 2

O que É um Sistema de Banco de Dados Distribuído Base de Dados Distribuída (BDD) É uma coleção de diversas bases de dados, interligadas logicamente através de uma rede de computadores Sistema de Gerência de Bases de dados Distribuídas (SGBDD) É o sistema de software que possibilita a gerência da BDD e lida com aspectos de transparência para o usuário Sistema de Banco de Dados Distribuído (SBDD) SBDD = BDD + SGBDD O que NÃO É um Sistema de Banco de Dados Distribuído... Sistemas de Tempo Compartilhado (Timesharing) Sistemas de Multiprocessamento Memória Compartilhada (shared-memory, shared everything) Disco Compartilhado (shared-disk) Nada Compartilhado (shared-nothing, message-passing) Memória Compartilhada Distribuída (distributed sharedmemory) Sistema de Banco de Dados que reside em 1 nó da rede = Sistema de Banco de Dados centralizado 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 13 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 14 SGBD centralizado em uma rede Um Ambiente de SGBDD Nó 1 Nó 1 Nó 5 Rede de Comunicação Nó 2 Nó 5 Rede de Comunicação Nó 2 Nó 4 Nó 3 Nó 4 Nó 3 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 15 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 16 Principais Características de um SBDD Dados armazenados em diversos locais (ou nós) cada nó é logicamente um processador distância geográfica Processadores interconectados através de rede 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 memória compartilhada (shared-memory ou shared-everything) disco compartilhado (shared-disk) nada compartilhado ou memória distribuída (shared-nothing) cliente-servidor clusters, GRIDs 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 17 Arquiteturas de Multiprocessadores Memória Compartilhada 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 18 3

Arquiteturas de Multiprocessadores Arquiteturas de Multiprocessadores Disco Compartilhado Memória Distribuída 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 19 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 20 Aplicações de SBDD Arquiteturas de SGBDD Intuitivas Companhias aéreas Redes de lojas Cadeias de hotéis Controle militar Sistemas de informações gerenciais corporativas Qualquer organização que possua uma estrutura descentralizada Nem tão intuitivas assim... Sistemas com grande volume de dados, mesmo que em organizações centralizadas, que demandam por aumento de desempenho 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 21 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 22 Arquiteturas de SGBDD Distribuição distribuição física dos componentes do sistema Heterogeneidade vários níveis: hardware, comunicação, sistema operacional para o SGBD: modelo de dados, linguagem de consulta, algoritmos de gerência de transações Autonomia Grau de autonomia com que cada SGBD individual trabalha existência de troca de informações entre os componentes Vários conceitos... de projeto: SGBD componente decide aspectos relacionados ao seu próprio projeto de comunicação: SGBD componente decide se comunica ou não (e como se comunica) com outros SGBD de execução: SGBD componente executa operações locais da forma que deseja Vantagens de SBDD 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 23 4

Vantagens de SBDDs 1. Transparência na Gerência dos Dados Distribuídos 2. Confiabilidade 3. Potencial Aumento de Desempenho 4. Expansão mais fácil e econômica 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 25 1. Transparência na Gerência dos Dados Distribuídos Transparência é a separação entre a semântica de alto nível de um sistema e seus detalhes de implementação A questão fundamental é prover Independência de dados no ambiente distribuído. Desta forma, os usuários do banco de dados enxergariam uma única imagem da base de dados logicamente integrada, embora ela estivesse fisicamente distribuída. 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 26 Níveis de Transparência Transparência - Exemplo Transparência da rede Transparência da replicação Transparência da fragmentação diversas técnicas: horizontal (seleções) vertical (projeções) combinações 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 27 Qual a remuneração de cada empregado, em função das responsabilidades atribuídas a ele por mais de 1 ano em algum projeto? 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 28 Acesso transparente Base de dados Distribuída Visão do Usuário 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 29 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 30 5

SGBD Distribuído - Realidade 2. Confiabilidade Componentes replicados Eliminação de pontos únicos de falha Provêem maior disponibilidade e confiabilidade 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 31 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 32 Confiabilidade Requer suporte para transações distribuídas protocolos distribuídos de controle de concorrência e gerência de deadlocks de confiabilidade de controle de réplicas Confiabilidade - Exemplo begin_transaction ATUALIZAR_SALARIO begin EXEQ SQL UPDATE PAY SET SAL = SAL*1.1 end. SELECT AVG(SAL) FROM EMP, PAY WHERE EMP.TITLE = PAY.TITLE Os aplicativos dos usuários não precisariam se preocupar com com a coordenação de seus acessos a bancos de dados locais individuais, nem teriam que se preocupar coma possibilidade de falhas em nós ou links de comunicação durante a transação 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 33 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 34 3. Potencial aumento de desempenho Localização dos Dados Compartilhamento de recursos não é tão crítico Reduz o tempo de acesso remoto aos dados Requer suporte para fragmentação e replicação Paralelismo no Processamento de Consultas Paralelismo entre consultas (Inter-query) Paralelismo dentro da consulta (Intra-query) Paralelismo dentro de operações Paralelismo no Processamento de Consultas Paralelismo entre consultas (Inter-query) Execução de diversas consultas em paralelo Paralelismo dentro da consulta (Intra-query) Execução de operações de uma mesma consulta em paralelo Paralelismo dentro de operações Execução da mesma operação para fragmentos distintos da relação em paralelo 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 35 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 36 6

Para tirar proveito do paralelismo Ter os dados distribuídos pelos processadores envolvidos no processamento paralelo Replicação total? E quanto às atualizações? maior número de réplicas implica em maior tempo de processamento de uma atualização controle de concorrência distribuído protocolos de finalização (commit) 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 37 Considerações sobre o aumento de desempenho em SBDD com paralelismo Ganhos comprovados experimentalmente Métricas aceleração linear, crescimento linear Balanceamento de carga distribuição estática x dinâmica Acelaração (Speed-up) chega a ser maior que o linear, em alguns casos conferências DEXA, VECPAR,... 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 38 4. Expansão Mais Fácil e Econômica Crescimento da base de dados é um problema atual de muitas aplicações Evolução da tecnologia microprocessadores, workstations, clusters, GRIDs,... modelo de computação cliente-servidor, múltiplas camadas, desenvolvimento baseado em componentes,... Principais Desafios dos SGBDDs 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 39 Principais Desafios dos SGBDDs Principais Desafios dos SGBDDs Projeto de Distribuição de Bases de Dados Processamento Distribuído de Consultas Controle de Concorrência Distribuído Confiabilidade Projeto de Distribuição de Bases de Dados Particionamento dos dados Fragmentação Horizontal, Vertical ou combinações válidas Informações não replicadas Controle de concorrência simplificado > desempenho de operações de atualização Replicação Total ou parcial Fragmentos replicados em nós + disponibilidade > desempenho de operações de leitura 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 41 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 42 7

Exemplo de Fragmentação Base de Dados Centralizada Passageiros Reservas Nome Telefone Nome Vôo Jose Campos 322-9999 Maria Silva 222-3333 Gabriel Silva 222-3333 Cláudio Silva 222-3333 Varig 224 Vôos Varig 224 Vôo Tarifa Ass Cia 1000,00 250 Air France Air France 455 750,00 500 Air France Varig 224 500,00 150 Varig Cia_Aéreas Nome Faturam. Presid. Sede Varig 20000K Pampa Porto Alegre Air France 10000K Etoile Paris Passageiro José Campos Maria Silva Gabriel Silva Gabriel Silva Cláudio Silva Exemplo de Fragmentação Fragmentação Horizontal - base AF Passageiros Nome Jose Campos Maria Silva Gabriel Silva Cláudio Silva Vôos Vôo Air France 455 Cia_Aéreas Nome Air France Telefone 322-9999 222-3333 222-3333 222-3333 Tarifa 1000,00 750,00 10000K Ass 250 500 Faturam. Cia Air France Air France Presid. Etoile Paris Reservas Nome Vôo Sede Passageiro José Campos Maria Silva Gabriel Silva 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 46 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 47 Exemplo de Fragmentação Fragmentação Horizontal - base RG Passageiros Nome Jose Campos Maria Silva Gabriel Silva Cláudio Silva Vôos Vôo Varig 224 Cia_Aéreas Varig Nome Telefone 322-9999 222-3333 222-3333 222-3333 Tarifa 500,00 Ass 150 Faturam. 20000K Cia Varig Presid. Pampa Reservas Nome Vôo Varig 224 Varig 224 Sede Porto Alegre Passageiro Gabriel Silva Cláudio Silva 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 48 Exemplo de Fragmentação Fragmentação Vertical base Voo-1 Passageiros Reservas Nome Telefone Nome Vôo Passageiro Jose Campos 322-9999 José Campos Maria Silva 222-3333 Maria Silva Gabriel Silva 222-3333 Gabriel Silva Cláudio Silva 222-3333 Vôos Varig 224 Gabriel Silva Vôo Tarifa Varig 224 Cláudio Silva 1000,00 Air France 455 750,00 Varig 224 500,00 Cia_Aéreas Nome Faturam. Varig 20000K Air France 10000K 2006 M. Tamer Özsu Patrick Valduriez (tradução Mattoso e Fernanda e livre e adaptações Marta Baião) 49 Exemplo de Fragmentação Fragmentação Vertical base Voo-2 Reservas Passageiros Nome Vôo Passageiro Nome Telefone José Campos Jose Campos 322-9999 Maria Silva Maria Silva 222-3333 Gabriel Silva Gabriel Silva 222-3333 Varig 224 Gabriel Silva Cláudio Silva 222-3333 Vôos Varig 224 Cláudio Silva Vôo Ass Cia 250 Air France Air France 455 500 Air France Varig 224 150 Varig Cia_Aéreas Nome Presid. Sede Varig Pampa Porto Alegre Air France Etoile Paris adaptações Marta Mattoso Baião) 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e e Fernanda 50 Exemplo de Fragmentação Fragmentação Horizontal Derivada Cia Aérea - FH Primária Nome Air France Faturam. 10000K Vôos - FH Derivada Vôo Air France 455 Tarifa 1000,00 750,00 Presid. Etoile Sede Paris Air France 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 51 Ass 250 500 Cia Air France 8

Requisitos de Informação para o PDBD Info da base de Dados Relacionamentos, Cardinalidade Vôos Cia_Aérea Nome Faturam. Presid. Sede L1 Passageiros Principais Desafios dos SGBDDs Processamento Distribuído de Consultas conversão de transações do usuário em instruções de manipulação de dados Problema de otimização min{custo = transmissão dados + process. local} formulação geral do problema é NP-difícil Vôo Tarifa Ass Cia Nome Telefone Passagens Vôo L2 L3 Passageiro 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 53 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 54 Processamento Distribuído de Consultas Tradução automática das consultas em linguagem de alto nível base distribuída é vista como única pelo usuário A tradução deve ser correta. O plano gerado deve ser ótimo. O processamento trabalha em quatro fases: a decomposição da consulta a localização dos dados a otimização global a otimização local Processamento Distribuído de Consultas Localização dos Dados Transforma consulta algébrica em consulta equivalente sobre uma base fragmentada. Analisa predicado da consulta e função de fragmentação Avalia geração de fragmentos vazios A consulta pode ser reduzida 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 55 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 56 Processamento Distribuído de Consultas Fragmentação Horizontal na tabela Vôos Localização dos Dados select Vôo, tarifa from vôos where Cia = Air France Nó 5 Nó 1 Rede de Comunicação Nó 2 Voo-AF Vôo Tarifa Ass Cia 1000,00 250 Air France Air France 455 750,00 500 Air France Transformação select Vôo, tarifa from vôo-a where Cia = Air France UNION select Vôo, tarifa from vôo-v where Cia = Air France Análise do predicado da consulta e da função de fragmentação Vôo Tarifa Ass Cia Varig 224 500,00 150 Varig Avaliação da geração de fragmentos vazios Nó 4 Nó 3 Voo-RG Redução da consulta select Vôo, tarifa from vôo-a where Cia = Air France 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 57 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 58 9

Localização dos Dados Otimização Global select Vôo, tarifa from vôos where tarifa <= 1000.00 Transformação select Vôo, tarifa from vôo-a where tarifa <= 1000.00 UNION select Vôo, tarifa from vôo-v where tarifa <= 1000.00 Análise do predicado da consulta e da função de fragmentação Avaliação da geração de fragmentos vazios Redução da consulta Neste caso não há redução ão, mas pode haver paralelismo 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 59 Gera o plano de execução ótimo a partir da consulta fragmentada técnicas de otimização heurísticas e sistemáticas. cálculo do custo Custo de E/S (operações de acesso ao disco) Custo de CPU (operações de processamento) Custo de comunicação (movimentação dos dados entre os nós) 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 60 Processamento Distribuído de Consultas Fragmentação Vertical em Vôos Localização dos Dados Nó 5 Nó 4 Nó 1 Rede de Comunicação Nó 2 Nó 3 Voo-2 Vôo Ass Cia 250 Air France Air France 455 500 Air France Varig 224 150 Varig Vôo Tarifa 1000,00 Air France 455 750,00 Varig 224 500,00 Voo-1 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 61 select Vôo, tarifa from vôos where tarifa <= 1000.00 Transformação select Vôo, tarifa from vôo-1 where tarifa <= 1000.00 JOIN select Vôo, tarifa from vôo-2 where tarifa <= 1000.00 Análise do predicado da consulta e da função de fragmentação Avaliação da geração de fragmentos vazios Redução da consulta select Vôo, tarifa from vôo-1 where tarifa <= 1000.00 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 62 Questões no Processamento de Consultas Distribuído Espaço de soluções pode ser muito grande Avaliação custo otimização X custo execução Intervalo entre a otimização e re-otimização Mudanças na distribuição dos dados desbalanceamento de carga distribuição dinâmica Principais Desafios dos SGBDDs Controle de Concorrência Distribuído sincronização de acessos concorrentes consistência versus concorrência Problemas Gerência de cópias múltiplas Falhas locais em nós Falha nas ligações de comunicação Finalização (commit) distribuída Bloqueio perpétuo (deadlock) distribuído Problemas muito complexos e ainda em aberto... 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 63 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 64 10

Controle de Concorrência Distribuído Principais Desafios dos SGBDDs Alternativas de Implementação tempos separados para leitura e modificação 2 cópias da base da dados distribuída 1 para consultas, 1 para atualização atualizações periódicas na base de consultas Confiabilidade Como tornar o sistema tolerante a falhas SGBDs componentes, rede de comunicação Durabilidade e Atomicidade 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 65 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 66 Relações entre os Desafios Questões Relacionadas aos SBDD Suporte do Sistema Operacional SGBDs não são uma aplicação como outra qualquer... suporte apropriado a operações de bancos de dados Situação ainda mais crítica no caso dos SBDDs Ex: suporte a transações distribuídas com controle de concorrência e reconstrução requisitos de processamento propósito geral + SBBDs 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 67 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 68 Questões Relacionadas aos SBDD Processamento de Transações Distribuído Manter um estado consistente da base de dados com replicação protocolos sofisticados de controle de réplicas. O método mais imediato é o ROWA (read one write many), muito caro. Avaliar três tipos de replicação replicação dos dados replicação do processamento replicação da comunicação O que está disponível hoje no mercado? Trabalho: Pesquisar produtos abaixo e elaborar um relatório técnico descrevendo as funcionalidades de distribuição Oracle 10g SQL Server IBM Informix PostgreSQL 8.1 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 69 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 70 11

As Novas Tecnologias e os SBDDs As Novas Tecnologias e os SBDDs Novas aplicações Inerentemente distribuídas Requisitos cada vez maiores por mais desempenho Trabalho cooperativo, mineração de dados,... Desenvolvimento baseado em componentes Utilização combinada com recursos de paralelismo disponíveis nos produtos existentes Oracle Real Application Cluster Compaq NonStop SQL 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 72 As Novas Tecnologias e os SBDDs Gerência de dados na Web Necessidade de convergência entre 2 culturas distintas Web crescimento explosivo de dados semi/não estruturados, troca de informações (HTML, XML, WSDL) SGBDs serviços de gerência de dados tradicionais (armazenamento, consulta, modelos de dados, integridade e consistência) Sistemas XML-nativos, conversores XML-bases relacionais, linguagens de consulta a dados XML (XQuery, XPath), máquinas de busca Interoperabilidade Mudanças de tecnologia Arquiteturas multi-camadas, serviços web clusters e GRIDs 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 73 12