Bancos de Dados Distribuídos



Documentos relacionados
Bancos de Dados Distribuídos

Introdução a Banco de Dados

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

BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING

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

SISTEMA GERENCIADOR DE BANCO DE DADOS

BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING

Prof. Antonio Almeida de Barros Jr. Prof. Antonio Almeida de Barros Junior

Sistemas de Banco de Dados

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

INE 5613 Banco de Dados I

2. Conceitos e Arquitetura de Bancos de Dados

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

Aula 03-04: Modelos de Sistemas Distribuídos

Sistemas de Bancos de Dados Distribuídos

Sistemas de Bancos de Dados Distribuídos

Introdução a Banco de Dados Aula 03. Prof. Silvestri

Top. Esp em Banco de Dados

BANCO DE DADOS. Isac Aguiar isacaguiar.com.br

Bancos de Dados Distribuídos

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO

Sistemas Gerenciadores de Banco de Dados Distribuídos

Banco de Dados Conceito de Arquitetura

Projeto de Banco de Dados

GBD PROF. ANDREZA S. AREÃO

Sistemas Distribuídos (DCC/UFRJ)

Arquitetura de SGBD. Prof. Antonio Almeida de Barros Junior

Nível do Sistema Operacional

INF70 Gerenciamento de Banco de Dados 2 Plano de Curso e Introdução

Banco de Dados I Introdução

MÓDULO 8 ARQUITETURA DOS SISTEMAS DE BANCO DE DADOS

CAPÍTULO 2. BANCOS DE DADOS DISTRIBUÍDOS

Prof. Marcelo Machado Cunha

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia

Introdução a Banco de Dados. Aécio Costa

Banco de Dados Distribuídos

É importante que nos atenhamos a alguns aspectos importantes sobre banco de dados:

Banco de Dados I. Construindo modelos de dados confiáveis

Banco de Dados Orientado a Objetos

Bases de Dados Distribuídas

Requisitos de Sistemas

Banco de Dados Arquiteturas para SGBDs

Computador E/S, Memória, Barramento do sistema e CPU Onde a CPU Registradores, ULA, Interconexão interna da CPU e Unidade de controle.

Motivos para você ter um servidor

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

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

Modelos de Sistemas Distribuídos. . Requerimentos de Projeto para Arquiteturas Distribuídas

ARQUITETURAS DOS SISTEMAS DE EMPRESARIAIS (ERP) Arquitetura cliente-servidor Arquitetura aberta

Computador Digital Circuitos de um computador (Hardware)

Arquitetura dos Sistemas de Informação Distribuídos

Arquitetura de Banco de Dados

PEER DATA MANAGEMENT SYSTEM

Dados. Qualquer elemento (aspecto, fato, medida etc.) representativo, disponível e coletável na realidade. fatos no estado bruto, conforme Platão;

INE 5616 Banco de Dados II

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

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

Disciplina de Banco de Dados Introdução

Introdução. Uso do disco Vantagens Desvantagens Baixo custo, facilidade de manutenção do software e do hardware, simetria e flexibilidade

Classificação Quanto. Sistemas de Lotes (2) Sistemas de Lotes (3)

Conceitos de Banco de Dados

INE 5336 Banco de Dados II

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

BD Oracle. Licenciatura em Engenharia Informática e Computação. Bases de Dados 2003/04

Metadados. 1. Introdução. 2. O que são Metadados? 3. O Valor dos Metadados

INE 5432 Banco de Dados II

2 Gerenciamento de Log 2.1 Definições básicas

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

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

Sistemas Distribuídos. Fundamentos. Nazareno Andrade. Universidade Federal de Campina Grande 02/2008

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

Sistemas Gerenciadores de Bancos de Dados

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Disciplina: Tecnologias de Banco de Dados para SI s

SERVIDORES REDES E SR1

Sistemas Operacionais

Sumário. Administração de Banco de dados Módulo 12. Ilustração Backup-Recovery. Recuperação (Recovery) - Definição

CEFET.PHB - PI. Plano de Ensino. Banco de Dados. Plano de Ensino. Plano de Ensino. Plano de Ensino - Conteúdo. Plano de Ensino - Conteúdo

de dados para o pgcluster

MAPEAMENTO DE CONSULTAS SQL EM XML ENTRE SISTEMAS GERENCIADORES DE BANCO DE DADOS RELACIONAIS

Programação Distribuída

Introdução Banco de Dados

UNICE Ensino Superior Linguagem de Programação Ambiente Cliente Servidor.

Arquiteturas de Sistemas Distribuídos

Introdução e motivação SGBD XML Nativo Consultas em SGBDs XML Prática. Bancos de dados XML. Conceitos e linguagens de consulta

LINGUAGEM DE BANCO DE DADOS

Transcrição:

Bancos de Dados Distribuídos Fernanda Baião baiao@cos.ufrj.br Departamento de Informática Aplicada UNIRIO 2007.2 Bibliografia Utilizada Principal: Özsu, M.T. Valduriez, P. "Princípios de Sistemas de Banco de Dados Distribuídos", Editora Campus, 2001 Outras: Projeto Pargres: http://pargres.nacad.ufrj.br/ http://forge.objectweb.org/projects/pargres/ Abiteboul, A., Buneman, P., 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 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 2 Conteúdo 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 1

Introdução Histórico dos Sistemas de Bancos de Dados 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) 5 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 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 6 2

Motivação para os Sistemas de 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 Surgimento dos Sistemas de Bancos de Dados Distribuídos Centralização Tecnologia de BD Redes de Computadores Distribuição Sistemas de Bancos de Dados Distribuídos Integração Integração Centralização 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 8 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 3

O que está sendo distribuído... Lógica de processamento Funções Dados 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) 10 Caracterização de SBDD 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 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 12 4

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 SGBD centralizado em uma rede Nó 1 Nó 5 Rede de Comunicação Nó 2 Nó 4 Nó 3 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 14 Um Ambiente de SGBDD Nó 1 Nó 5 Rede de Comunicação Nó 2 Nó 4 Nó 3 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 15 5

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) 16 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) 17 Arquiteturas de Multiprocessadores Disco Compartilhado 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 18 6

Arquiteturas de Multiprocessadores Memória Distribuída 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 19 Aplicações de SBDD 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) 20 Arquiteturas de SGBDD 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 21 7

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 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 22 Vantagens de SBDD 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) 24 8

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) 25 Níveis de Transparência 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) 26 Transparência - Exemplo 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) 27 9

Acesso transparente 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 28 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 SGBD Distribuído - Realidade 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 30 10

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 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 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) 32 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 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 33 11

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 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 34 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 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) 36 12

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) 37 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,... 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 38 Principais Desafios dos SGBDDs 13

Principais Desafios dos SGBDDs Projeto de Distribuição de Bases de Dados Processamento Distribuído de Consultas Controle de Concorrência Distribuído Confiabilidade 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 40 Principais Desafios dos SGBDDs 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 Exemplo de Fragmentação Base de Dados Centralizada Passageiros Reservas Nome Telefone Nome Vôo Jose Campos 322-9999 Air France 147 Maria Silva 222-3333 Air France 147 Gabriel Silva 222-3333 Air France 147 Cláudio Silva 222-3333 Varig 224 Vôos Varig 224 Vôo Tarifa Ass Cia Air France 147 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 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 45 14

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 147 Air France 455 Telefone 322-9999 222-3333 222-3333 222-3333 Tarifa 1000,00 750,00 Ass 250 500 Cia Air France Air France Reservas Nome Vôo Air France 147 Air France 147 Air France 147 Passageiro José Campos Maria Silva Gabriel Silva Cia_Aéreas Nome Air France Faturam. 10000K Presid. Etoile Paris Sede 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 46 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 Telefone 322-9999 222-3333 222-3333 222-3333 Tarifa 500,00 Ass 150 Cia Varig Reservas Nome Vôo Varig 224 Varig 224 Passageiro Gabriel Silva Cláudio Silva Cia_Aéreas Varig Nome Faturam. 20000K Presid. Pampa Sede Porto Alegre 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 Vertical base Voo-1 Passageiros Reservas Nome Telefone Nome Vôo Passageiro Jose Campos 322-9999 Air France 147 José Campos Maria Silva 222-3333 Air France 147 Maria Silva Gabriel Silva 222-3333 Air France 147 Gabriel Silva Cláudio Silva 222-3333 Vôos Varig 224 Gabriel Silva Vôo Tarifa Varig 224 Cláudio Silva Air France 147 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) 48 15

Exemplo de Fragmentação Fragmentação Vertical base Voo-2 Reservas Passageiros Nome Vôo Passageiro Nome Telefone Air France 147 José Campos Jose Campos 322-9999 Air France 147 Maria Silva Maria Silva 222-3333 Air France 147 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 Air France 147 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 49 Exemplo de Fragmentação Fragmentação Horizontal Derivada Cia Aérea - FH Primária Nome Faturam. Presid. Air France 10000K Etoile Sede Paris Vôos - FH Derivada Vôo Tarifa Air France 147 1000,00 Air France 455 750,00 Ass 250 500 Cia Air France Air France 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 50 Requisitos de Informação para o PDBD Info da base de Dados Relacionamentos, Cardinalidade Cia_Aérea Nome Faturam. Presid. Sede Vôos L1 Passageiros 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) 52 16

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 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 53 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 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 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 17

Processamento Distribuído de Consultas Fragmentação Horizontal na tabela Vôos Nó 5 Nó 1 Rede de Comunicação Nó 2 Voo-AF Vôo Tarifa Ass Cia Air France 147 1000,00 250 Air France Air France 455 750,00 500 Air France Vôo Tarifa Ass Cia Varig 224 500,00 150 Varig Nó 4 Nó 3 Voo-RG 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 56 Localização dos Dados select Vôo, tarifa from vôos where Cia = 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 Avaliação da geração de fragmentos vazios 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 Localização dos Dados 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) 58 18

Otimização Global 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) 59 Processamento Distribuído de Consultas Fragmentação Vertical em Vôos Nó 5 Nó 4 Nó 1 Rede de Comunicação Nó 2 Nó 3 Voo-2 Vôo Ass Cia Air France 147 250 Air France Air France 455 500 Air France Varig 224 150 Varig Vôo Tarifa Air France 147 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) 60 Localização dos Dados 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) 61 19

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 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 62 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 Controle de Concorrência Distribuído 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 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 64 20

Principais Desafios dos SGBDDs 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 Relações entre os Desafios 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 66 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 21

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 2006 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Marta Mattoso e Fernanda Baião) 68 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 As Novas Tecnologias e os SBDDs 22

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) 71 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) 72 23