Principais Desafios dos SGBDDs. Processamento Distribuído de Consultas. Processamento de Consultas. Componentes do Processamento de Consultas

Tamanho: px
Começar a partir da página:

Download "Principais Desafios dos SGBDDs. Processamento Distribuído de Consultas. Processamento de Consultas. Componentes do Processamento de Consultas"

Transcrição

1 Principais Desafios dos SGBDDs Processamento Distribuído de Consultas Fernanda Baião 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 Setembro de M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 2 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 Processamento de Consultas Consulta de alto nível Processador De Consultas Comandos de manipulação de dados de baixo nível 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 4 Componentes do Processamento de Consultas Linguagem de consultas SQL, OQL Metodologia de execução de consultas Os passos seguidos para a execução de consultas de alto nível (declarativas) dos usuários Otimização de consultas Como determinar o melhor plano de execução? Selecionando alternativas SELECT ENAME FROM EMP,ASG WHERE EMP.ENO = ASG.ENO AND DUR > 37 Estratégia 1 π ENAME (σ DUR>37 EMP.ENO=ASG.ENO (EMP ASG)) Estratégia 2 π ENAME (EMP ENO (σ DUR>37 (ASG))) Estratégia 2 evita o produto cartesiano, então é melhor 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 6 1

2 Qual é o problema? Estratégia 1 Estratégia 2 Suponha que existam 20 tuplas que satisfazem este predicado, uniformemente distribuídas pelos fragmentos 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 7 Custo das alternativas Suponha size(emp) = 400, size(asg) = 1000 Custo de acesso a tupla (CA)= 1 unidade; Custo de transferência de tupla (CT) = 10 unidades Estratégia 1 produzir ASG': (10+10)*CA 20 transferir ASG' para os nós de EMP: (10+10)*CT 200 produzir EMP': (10+10)*CA*2 40 transferir EMP' para o nó do resultado: (10+10)*CT 200 Custo total 460 Estratégia 2 transferir EMP para o nó 5: 400*CT 4,000 transferir ASG para o nó 5: 1000*CT 10,000 produzir ASG': 1000*CT 1,000 junção EMP and ASG': 400*20*CA 8,000 Custo total 23, M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 8 Objetivos da Otimização de consultas Custo total x custo de resposta Minimizar uma função de custo custo E/S + custo CPU + custo comunicação...que podem ter pesos diferentes em ambientes distribuídos distintos WAN custo de comunicação é dominante largura de banda baixa velocidade baixa alta sobrecarga do protocolo a maioria dos algoritmos desprezam os demais componentes do custo LAN custo de comunicação não é tão dominante função de custo total deve ser considerada 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 9 Complexidade de Operações da Álgebra Relacional Suponha Relações com cardinalidade n Varredura sequencial Operação Seleção Projeção (sem eliminação de duplicatas) Projeção (com eliminação de duplicatas) Grupo Junção Semijunção Divisão Operadores de conjuntos Produto cartesiano Complexidade O(n * log n) O(n * log n) O(n 2 ) 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 10 O(n) Consultas Tipos Busca Exaustiva Baseada em custo Encontra solução ótima Heurísticas Encontra solução boa, mas não necessariamente ótima Exemplos Re-agrupar sub-expressões em comum Realizar seleções e projeções primeiro Re-ordenar operações para minimizar tamanho das relações intermediárias Substituir junções por combinações de semi-junções Consultas Granularidade Uma consulta de cada vez Não usa resultados intermediários em comum Múltiplas consultas de uma vez Eficiente se existem muitas consultas similares Espaço de soluções muito maior 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 12 2

3 Consultas Sincronização Momento da otimização x Momento da execução Estática Em tempo de compilação, antes da execução Dificuldade em estimar tamanho dos resultados intermediários estatísticas do banco Propagação de erros Custo amortizado sobre várias execuções Dinâmica Em tempo de execução Informação exata sobre tamanhos dos resultados intermediários Custo repetido para cada execução Híbrida Compilação usa algoritmo estático Se erro nos tamanhos estimados > threshold, re-otimiza em tempo de execução Consultas Estatísticas Relações / Fragmentos cardinalidade Tamanho da tupla Fração das tuplas que participam em uma junção com outra relação Atributos Cardinalidade do domínio Número de valores distintos Premissas comuns Independência entre valores distintos de atributos Distribuição uniforme dos valores do atributo no seu domínio 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 14 Consultas Sites de decisão Centralizada Único nó determina a melhor estratégia simples Requer conhecimento de todo o banco de dados distribuído Distribuída Nós cooperam entre si para determinar a estratégia Requer apenas informações locais Custo da cooperação Híbrida Único nó determina estratégia global Cada nó otimiza subconsultas locais Consultas Topologia da Rede WAN Características (recordando) largura de banda baixa velocidade baixa alta sobrecarga do protocolo custo de comunicação é dominante a maioria dos algoritmos desprezam os demais componentes do custo Estratégia global minimiza custo de comunicação Estratégias locais de acordo com processamento centralizado de consultas LAN custo de comunicação não é tão dominante função de custo total deve ser considerada Aumento da execução paralela mesmo aumentando custo de comunicação Broadcasting para operações de junção 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 16 Metodologia para o Processamento Distribuído de Consultas Nó de controle Nós locais Consulta de cálculo sobre relações distribuídas Decomposição De Consultas Consulta algébrica sobre relações distribuídas Localização de Dados Consulta de fragmentos Otimização Global Consulta de fragmentos otimizada com operações de comunicação Otimização Local Esquema Global Esquema de Fragmentos Estatísticas sobre Fragmentos Esquema Local Consultas locais otimizadas 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 17 Fase 1 Decomposição de Consultas Normalização Transformação mais importante é a dos qualificadores da consulta (cláusula WHERE) e qualificadores (, ) Análise Detectar e rejeitar consultas incorretas Simplificação Eliminar predicados redundantes Reescrita e reestruturação Cálculo álgebra (representada pela árvore de operadores) Regras de transformação Mais de uma tradução possível 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 18 3

4 Normalização - Exemplo Encontrar os nomes dos funcionários que estão trabalhando no projeto P1 por 12 ou 24 meses SELECT ENAME FROM EMP, ASG WHERE EMP.ENO = ASG.ENO AND ASG.PNO = P1 AND DUR = 12 OR DUR = 24 Análise - Exemplo SELECT E1 FROM EMP WHERE ENAME > 200 Forma normal conjuntiva EMP.ENO = ASG.ENO ASG.PNO = P1 (DUR = 12 DUR = 24) Forma normal disjuntiva (EMP.ENO = ASG.ENO ASG.PNO = P1 DUR = 12) (EMP.ENO = ASG.ENO ASG.PNO = P1 DUR = 24) 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 20 Simplificação - Exemplo Restruturação - Exemplo 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 22 Restruturação - Exemplo Fase 2 Localização de Dados Entrada: consulta algébrica nas relações distribuídas Determina que fragmentos estão envolvidos Programa de Localização Substituir cada relação global pelo seu programa de localização Programa em álgebra relacional Operandos são os fragmentos Utilizar regras de reconstrução Otimizar Redução de consultas 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 24 4

5 Programa de Localização - Exemplo Localização provê paralelismo... Suponha EMP fragmentada EMP 1 = σ ENO E3 (EMP) EMP 2 = σ E3 < ENO E6 (EMP) EMP 3 = σ ENO > E6 (EMP) ASG fragmentada ASG 1 = σ ENO E3 (ASG) ASG 2 = σ ENO > E3 (ASG) Substitua em todas as consultas EMP por (EMP 1 EMP 2 EMP 3 ) ASG por (ASG 1 ASG 2 ) 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 26 Eliminação do trabalho desnecessário Redução para FHP Redução com seleção Relação R e F R ={R 1, R 2,, R w } onde R j =σ pj (R) σ pj (R j )= φ se x em R: (p i (x) p j (x)) Exemplo 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 28 Redução para FV Encontrar relações intermediárias (não vazias) inúteis Relação R com atributos A = {A1,..., An} fragmentada verticalmente como F R ={R 1, R 2,, R w } onde R j =π A (R), A A π D,K (R j ) é inútil se D A Exemplo: Suponha EMP1= π ENO,ENAME (EMP); EMP2= π ENO,TITLE (EMP) Redução para FHD Regra: Junções substituídas por uniões de junções parciais Aplicar a redução para fragmentação horizontal Exemplo: ASG 1 = ASG ENO EMP 1 ASG 2 = ASG ENO EMP 2 EMP 1 = σ TITLE = Programmer (EMP) EMP 2 = σ TITLE Programmer (EMP) SELECT * FROM EMP, ASG WHERE ASG.ENO = EMP.ENO AND EMP.TITLE = Mech. Eng M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 30 5

6 Redução para FHD - Exemplo Redução para FHD - Exemplo Consulta Genérica Junções por uniões de junções parciais Seleções Primeiro Eliminação de relações intermediárias vazias 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 32 Fase 3 Otimização Global Processo de Otimização de Consultas Input: Consulta de fragmentos Encontre a melhor (não necessariamente ótima) estratégia global (plano de execução de consultas Minimizar uma função de custo Processamento distribuído de junções Árvores de junção lineares x Bushy Que relação (operando) enviar para onde? Envio total x envio sob demanda Decidir sobre o uso de semijunções Economiza comunicação, aumenta processamento local Métodos de junção Loops aninhados x junções ordenadas ( merge join ou hash join ) 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 33 Consulta de entrada Geração do espaço de busca Planos de execução de consultas equivalentes Estratégia de busca Melhor Plano de execução de consultas Regras de Transformação Modelo De Custo 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 34 Espaço de Busca Espaço de Busca Caracterizado por planos de execução de consulta equivalentes Foco é nas árvores de junção Para N relações, existem O(N!) árvores de junção equivalentes que podem ser obtidas aplicandose regras de comutatividade e associatividade Restringir através de heurísticas Operações unárias antes das binárias,... Restringir a forma da árvore de junção Considere apenas árvores lineares, ignore as bushy? SELECT FROM WHERE AND ENAME,RESP EMP, ASG, PROJ EMP.ENO=ASG.ENO ASG.PNO=PROJ.PNO 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 36 6

7 Tempo Total x Tempo de Resposta Fase 4 Otimização Local Nó 1 x unidades Nó 2 y unidades Nó 3 Suponha que apenas o custo de comunicação é considerado Tempo Total = 2 * tempo mensagem de inicialização + tempo de transmissão unitário * (x+y) Tempo de Resposta = max {tempo para enviar x de 1 a 3, tempo para enviar y de 2 a 3} tempo para enviar x de 1 a 3 = tempo mensagem de inicialização + tempo de transmissão unitário * x tempo para enviar y de 2 a 3 = tempo mensagem de inicialização + tempo de transmissão unitário * y 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 37 Input: Melhor plano de execução global Selecionar o melhor caminho de acesso Usar técnicas de otimização centralizadas 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 38 Problemas no Processamento Distribuído de Consultas Modelo de Custo Otimizações de consultas múltiplas Heurísticas para reduzir alternativas Conjunto maior de consultas Otimização apenas nas consultas SPJ Necessidade de tratar consultas mais complexas (uniões, disjunções, agregações, ordenações) Avaliação custo otimização X custo execução Intervalo entre a otimização e re-otimização 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 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 40 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 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 42 7

8 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 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 44 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 1998 M. Tamer Özsu e Patrick Valduriez (tradução livre e adaptações Fernanda Baião) 45 8

23/05/12. Consulta distribuída. Consulta distribuída. Objetivos do processamento de consultas distribuídas

23/05/12. Consulta distribuída. Consulta distribuída. Objetivos do processamento de consultas distribuídas Processamento de Consultas em Bancos de Dados Distribuídos Visão geral do processamento de consultas IN1128/IF694 Bancos de Dados Distribuídos e Móveis Ana Carolina Salgado acs@cin.ufpe.br Bernadette Farias

Leia mais

23/05/12. Agenda. Introdução. Introdução. Introdução. Álgebra. Relacional. Cálculo. Relacional

23/05/12. Agenda. Introdução. Introdução. Introdução. Álgebra. Relacional. Cálculo. Relacional Processamento de Consultas em BD Distribuídos Decomposição de consultas e Localização de dados IN1128/IF694 Bancos de Dados Distribuídos e Móveis Ana Carolina Salgado acs@cin.ufpe.br Bernadette Farias

Leia mais

Top. Esp em Banco de Dados

Top. Esp em Banco de Dados Top. Esp em Banco de Dados Profa. Marta Mattoso marta@cos.ufrj.br http://www.cos.ufrj.br/~marta COPPE- Sistemas / UFRJ Introdução a Bancos de Dados Distribuídos Roteiro Introdução Caracterização de BDD

Leia mais

Sistemas de Bancos de Dados Distribuídos

Sistemas de Bancos de Dados Distribuídos Top. Esp em Banco de Dados Profa. Marta Mattoso marta@cos.ufrj.br http://www.cos.ufrj.br/~marta COPPE- Sistemas / UFRJ Introdução a Bancos de Dados Distribuídos Roteiro Introdução Caracterização de BDD

Leia mais

Sistemas de Bancos de Dados Distribuídos

Sistemas de Bancos de Dados Distribuídos Sistema de Arquivos Top. Esp em Banco de Dados Profa. Marta Mattoso marta@cos.ufrj.br http://www.cos.ufrj.br/~marta COPPE- Sistemas / UFRJ Introdução a Bancos de Dados Distribuídos 4 Roteiro Sistema de

Leia mais

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

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas Processamento e Otimização de Consultas Banco de Dados Motivação Consulta pode ter sua resposta computada por uma variedade de métodos (geralmente) Usuário (programador) sugere uma estratégia para achar

Leia mais

Processamento de Consultas. Processamento de Consultas. Processamento de Consultas Distribuídas. Otimização de Consultas

Processamento de Consultas. Processamento de Consultas. Processamento de Consultas Distribuídas. Otimização de Consultas Processamento de Processamento de Consultas Processamento de Consultas Passos na execução de consultas Consulta ao B.D. Análise e Tradução Expressão Algébrica Avaliação Plano de Execução Otimização Resultado

Leia mais

MATA60 BANCO DE DADOS Aula: Otimização. Prof. Daniela Barreiro Claro

MATA60 BANCO DE DADOS Aula: Otimização. Prof. Daniela Barreiro Claro MATA60 BANCO DE DADOS Aula: Otimização Prof. Daniela Barreiro Claro Introdução a Otimização SQL, SQL3 e OQL são linguagens declarativas O SGBD deve processar e otimizar estas consultas antes delas serem

Leia mais

UTFPR - Universidade Tecnológica Federal do Paraná. Processamento e otimização de consultas

UTFPR - Universidade Tecnológica Federal do Paraná. Processamento e otimização de consultas UTFPR - Universidade Tecnológica Federal do Paraná Processamento e otimização de consultas Leyza Baldo Dorini 04/Nov/2009 Programação da aula Introdução: processamento e otimização de consultas Etapas:

Leia mais

Projeto de Bancos de Dados Distribuídos

Projeto de Bancos de Dados Distribuídos Problema de Projeto Projeto de Bancos de Dados Distribuídos Fernanda Baião baiao@cos.ufrj.br Definição geral Tomar decisões sobre localização de dados e programas nos nós de uma rede de computadores, assim

Leia mais

Otimização e Execução de Consultas Caso Centralizado Parse Query

Otimização e Execução de Consultas Caso Centralizado Parse Query Bancos de Dados III Processamento de Consultas em Bancos de Dados Distribuídos Rogério Costa rogcosta@inf.puc-rio.br 1 Otimização e Execução de Consultas Caso Centralizado Parse Query Check de Semântica

Leia mais

Bases de Dados Distribuídas

Bases de Dados Distribuídas Bases de Dados Distribuídas Pablo Vieira Florentino 27/10/2006 Agenda Contexto Arquitetura de SGBDs Distribuído Projeto de Bases de dados Distribuídas Processamento Distribuído de consultas Questões atuais

Leia mais

Universidade Federal do Maranhão

Universidade Federal do Maranhão Universidade Federal do Maranhão Banco de Dados II Banco de Dados Distribuídos Carlos Eduardo Portela Serra de Castro * Sumário Introdução Vantagens Projeto de Bases de Dados Distribuídas Classificação

Leia mais

ACH2025. Laboratório de Bases de Dados Aula 15. Processamento de Consultas Parte 2 Otimização. Professora: Fátima L. S. Nunes SISTEMAS DE INFORMAÇÃO

ACH2025. Laboratório de Bases de Dados Aula 15. Processamento de Consultas Parte 2 Otimização. Professora: Fátima L. S. Nunes SISTEMAS DE INFORMAÇÃO ACH2025 Laboratório de Bases de Dados Aula 15 Processamento de Consultas Parte 2 Otimização Professora: Fátima L. S. Nunes Contexto Dada uma expressão em álgebra relacional, o otimizador deve propor um

Leia mais

Processamento e Otimização de Consultas. Msc. Simone Dominico Orientador: Dr. Eduardo Cunha de Almeida PPGINF - UFPR

Processamento e Otimização de Consultas. Msc. Simone Dominico Orientador: Dr. Eduardo Cunha de Almeida PPGINF - UFPR Processamento e Otimização de Consultas Msc. Simone Dominico Orientador: Dr. Eduardo Cunha de Almeida PPGINF - UFPR Conteúdo Processamento de consultas; Introdução Etapas no Processamento de Consultas

Leia mais

Projeto de Bancos de Dados Distribuídos (Parte 01)

Projeto de Bancos de Dados Distribuídos (Parte 01) Projeto de Bancos de Dados Distribuídos (Parte 01) IF694 BD Distribuídos e Móveis Bernadette Farias Lóscio bfl@cin.ufpe.br Tipos de fragmentação n n Fragmentação vertical 1 Grau de fragmentação n É preciso

Leia mais

14/03/12. Tipos de fragmentação. Projeto de Bancos de Dados Distribuídos (Parte 01) Correção das regras de fragmentação. Grau de fragmentação

14/03/12. Tipos de fragmentação. Projeto de Bancos de Dados Distribuídos (Parte 01) Correção das regras de fragmentação. Grau de fragmentação Tipos de fragmentação Projeto de Bancos de Dados Distribuídos (Parte 01) n n Fragmentação vertical IN1128/IF694 Bancos de Dados Distribuídos e Móveis Ana Carolina Salgado acs@cin.ufpe.br Bernadette Farias

Leia mais

Exercícios do Curso COS833 Distribuição e Paralelismo em Bancos de Dados Prof ª Marta Mattoso / Prof. Alexandre Assis

Exercícios do Curso COS833 Distribuição e Paralelismo em Bancos de Dados Prof ª Marta Mattoso / Prof. Alexandre Assis Exercícios do Curso COS833 Distribuição e Paralelismo em Bancos de Dados Prof ª Marta Mattoso / Prof. Alexandre Assis 1 a. Questão Quais são as principais etapas de um projeto de distribuição de dados?

Leia mais

Alcides Pamplona

Alcides Pamplona Alcides Pamplona alcides.pamplona@gmail.com Objetivos Gerais Capacitar o aluno a compreender os paradigmas dos Bancos de Dados Distribuídos, visando sua aplicação na análise e projeto de bancos de dados

Leia mais

Processamento e Otimização de Consultas

Processamento e Otimização de Consultas Processamento e Otimização de Consultas Processo de Execução de uma Consulta 1 Otimização de Consultas SQL Em algumas linguagens de consulta, a estratégia de execução é definida pela maneira como o usuário

Leia mais

3 Plano de Execução de Consultas

3 Plano de Execução de Consultas Sumário 1 Introdução ao Processamento de Consultas 2 Otimização de Consultas 3 Plano de Execução de Consultas 4 Introdução a Transações 5 Recuperação de Falhas 6 Controle de Concorrência 7 Fundamentos

Leia mais

Sumário. Etapas do Processamento de Consultas

Sumário. Etapas do Processamento de Consultas Sumário 1 Introdução ao Processamento de Consultas 2 Otimização de Consultas 3 Plano de Execução de Consultas 4 Introdução a Transações 5 Recuperação de Falhas 6 Controle de Concorrência 7 Fundamentos

Leia mais

Introdução a. π LNAME, FNAME (σ SALARY>C (EMPLOYEE))

Introdução a. π LNAME, FNAME (σ SALARY>C (EMPLOYEE)) Introdução Como o SGBD INTERNAMENTO processa, otimiza e executa consultas de alto nível Introdução a Processamento de Consultas MIRELLA M. MORO mirella@dcc.ufmg.br http://www.dcc.ufmg.br/ br/~mirella 2

Leia mais

Formação de DBAs SQL Server 2008

Formação de DBAs SQL Server 2008 Formação de DBAs SQL Server 2008 Parte 8: Banco de Dados Distribuído Computação Distribuída Um grupo de elementos autônomos de processamento (não necessariamente homogêneos) que estão interconectados por

Leia mais

Tecnologias de Bancos de Dados

Tecnologias de Bancos de Dados Tecnologias de Bancos de Dados Processamento e Otimização de consultas Professor: Tadeu dos Reis Faria Set/2008 Referências Bibliográficas NAVATHE, Shamkant B., ELSMARI, Ramez. Sistemas de Banco de Dados.

Leia mais

Escrita ( W ) do Resultado

Escrita ( W ) do Resultado Escrita ( W ) do esultado Qualquer alternativa de processamento deve considerar este custo b res = número de blocos de resultado a ser W Exemplo: estimativa de W do resultado de um produto b res = tamanhoproduto

Leia mais

OTIMIZAÇÃO DE CONSULTAS RELACIONAIS TRABALHO DE PÓS-GRADUAÇÃO

OTIMIZAÇÃO DE CONSULTAS RELACIONAIS TRABALHO DE PÓS-GRADUAÇÃO UNIVERSIDADE ESTADUAL DE CAMPINAS PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO INSTITUTO DE COMPUTAÇÃO OTIMIZAÇÃO DE CONSULTAS RELACIONAIS TRABALHO DE PÓS-GRADUAÇÃO Alunos: João Paulo Silva Cintra Renato Capello

Leia mais

Projeto de Bases de Dados Distribuídas

Projeto de Bases de Dados Distribuídas Projeto de Bases de Dados Distribuídas Pablo Vieira Florentino 27/10/2006 Agenda Estratégias Questões Técnicas de Fragmentação Horizontal Primária (3) Derivada Corretude da Fragmentação H Fragmentação

Leia mais

Sumário. Definição do Plano de Execução

Sumário. Definição do Plano de Execução Sumário 1 Introdução ao Processamento de Consultas 2 Otimização de Consultas 3 Plano de Execução de Consultas Introdução a Transações 5 Recuperação de Falhas 6 Controle de Concorrência 7 Fundamentos de

Leia mais

Bases de Dados BDDAD. Linguagem SQL. Comando SELECT Divisão Algébrica. Nelson Freire (ISEP LEI-BDDAD 2015/16) 1/9

Bases de Dados BDDAD. Linguagem SQL. Comando SELECT Divisão Algébrica. Nelson Freire (ISEP LEI-BDDAD 2015/16) 1/9 BDDAD Bases de Dados Linguagem SQL Comando SELECT Nelson Freire (ISEP LEI-BDDAD 2015/16) 1/9 Operador Sumário Introdução Expressão Equivalente em SQL Soluções Tradução Directa de Expressão Algébrica Quantificação

Leia mais

Douglas Matheus de Souza Prof. Marcel Hugo, Mestre - Orientador

Douglas Matheus de Souza Prof. Marcel Hugo, Mestre - Orientador Douglas Matheus de Souza Prof. Marcel Hugo, Mestre - Orientador Introdução Objetivos Fundamentação teórica Desenvolvimento da ferramenta Operacionalidade Resultados e discussão Conclusões Versões futuras

Leia mais

Modelo Relacional - Manipulação

Modelo Relacional - Manipulação Modelo Relacional - Manipulação Duas categorias de linguagens formais álgebra relacional e cálculo relacional comerciais (baseadas nas linguagens formais) SQL Linguagens formais - Características orientadas

Leia mais

ÁLGEBRA E CÁLCULO RELACIONAL

ÁLGEBRA E CÁLCULO RELACIONAL UNINGÁ UNIDADE DE ENSINO SUPERIOR INGÁ FACULDADE INGÁ DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO ERINALDO SANCHES NASCIMENTO ÁLGEBRA E CÁLCULO RELACIONAL MARINGÁ 2014 SUMÁRIO SUMÁRIO...1 1 INTRODUÇÃO...2 1.1

Leia mais

O Modelo e a Álgebra Relacional

O Modelo e a Álgebra Relacional O Modelo e a Álgebra Relacional O Modelo Relacional Modelo de dados, que se baseia no princípio em que todos os dados estão guardados em tabelas Baseado em lógica de predicados e na teoria de conjuntos.

Leia mais

Arquiteturas para SGBD. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Arquiteturas para SGBD. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Arquiteturas para SGBD Laboratório de Bases de Dados Arquitetura Centralizada Terminal responsável pela exibição dos resultados sem capacidade de processamento Computador central (mainframe) responsável

Leia mais

Bancos de Dados Distribuídos. Gabriel Resende Gonçalves 4 de fevereiro de 2014

Bancos de Dados Distribuídos. Gabriel Resende Gonçalves 4 de fevereiro de 2014 Bancos de Dados Distribuídos Gabriel Resende Gonçalves 4 de fevereiro de 2014 Sumário Introdução; Vantagens e Desvantagens; Regras Básicas; Tipos de BDDs; Processamento de Transações; Recuperação de Falhas;

Leia mais

14/03/12. Fragmentação Vertical. Projeto de Bancos de Dados Distribuídos (Parte 02) Complexidade. Objetivo. Complexidade. Abordagens Heurísticas

14/03/12. Fragmentação Vertical. Projeto de Bancos de Dados Distribuídos (Parte 02) Complexidade. Objetivo. Complexidade. Abordagens Heurísticas Fragmentação Vertical Projeto de Bancos de Dados Distribuídos (Parte 02) IN1128/IF694 Bancos de Dados Distribuídos e Móveis Ana Carolina Salgado acs@cin.ufpe.br Bernadette Farias Lóscio bfl@cin.ufpe.br

Leia mais

GBC043 Sistemas de Banco de Dados Álgebra e Cálculo Relacional. Ilmério Reis da Silva UFU/FACOM

GBC043 Sistemas de Banco de Dados Álgebra e Cálculo Relacional. Ilmério Reis da Silva  UFU/FACOM GBC043 Sistemas de Banco de Dados Álgebra e Cálculo Relacional Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM Álgebra e Cálculo Relacional e o Modelo R São as linguagens

Leia mais

Bancos de Dados Distribuídos. Lucas Henrique Samuel Queiroz

Bancos de Dados Distribuídos. Lucas Henrique Samuel Queiroz Bancos de Dados Distribuídos Lucas Henrique Samuel Queiroz O que é Uma coleção de nós interconectados via rede. Cada nó da rede possui um banco de dados local. Em conjunto atuam como um único sistema de

Leia mais

Álgebra Relacional e SQL

Álgebra Relacional e SQL Álgebra Relacional e SQL Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Álgebra Relacional Maneira teórica de se manipular o banco de dados relacional Linguagem de consulta procedural usuários

Leia mais

Álgebra e cálculo relacional. Andre Noel

Álgebra e cálculo relacional. Andre Noel Álgebra e cálculo relacional Andre Noel Introdução Introdução A SQL é baseada na álgebra e no cálculo relacional Introdução A SQL é baseada na álgebra e no cálculo relacional O modelo de dados precisa

Leia mais

Processamento de Consultas. Simone Dominico Orientador: Dr. Eduardo Cunha de Almeida PPGINF - UFPR

Processamento de Consultas. Simone Dominico Orientador: Dr. Eduardo Cunha de Almeida PPGINF - UFPR Processamento de Consultas Simone Dominico Orientador: Dr. Eduardo Cunha de Almeida PPGINF - UFPR Sumário Plano de Consulta; Modelos de processamento de Consultas; Metódos de Acesso; Algoritmos de seleção;

Leia mais

Compilação, Otimização e Execução de Consultas. Profa. Dra. Cristina Dutra de Aguiar Ciferri

Compilação, Otimização e Execução de Consultas. Profa. Dra. Cristina Dutra de Aguiar Ciferri Compilação, Otimização e Execução de Consultas Cristina Dutra de Aguiar Ciferri Decomposição de Consultas Bloco de consulta é uma unidade básica que pode ser traduzida em operadores algébricos e otimizada

Leia mais

Processamento da Consulta. Processamento da Consulta

Processamento da Consulta. Processamento da Consulta Processamento da Consulta Equipe 05 Adriano Vasconcelos Denise Glaucia Jose Maria Marcigleicy Processamento da Consulta Refere-se ao conjunto de atividades envolvidas na extra de dados de um banco de dados.

Leia mais

Sumário. Recuperação de Falhas

Sumário. Recuperação de Falhas Sumário 1 Introdução ao Processamento de Consultas 2 Otimização de Consultas 3 Plano de Execução de Consultas 4 Introdução a Transações 5 Recuperação de Falhas 6 Controle de Concorrência 7 Fundamentos

Leia mais

Gerência de Transações Distribuídas

Gerência de Transações Distribuídas Transação Gerência de Transações Distribuídas Uma é uma unidade de computação consistente e confiável Transparência de concorrência Transparência de falhas Fernanda Baião baiao@cos.ufrj.br Banco de dados

Leia mais

INSTRUÇÕES GERAIS AOS CANDIDATOS

INSTRUÇÕES GERAIS AOS CANDIDATOS INSTRUÇÕES GERAIS AOS CANDIDATOS O tempo total para realização das provas é de 2 horas e 00 minutos. Ao término da prova, o candidato deverá devolver o cartão resposta. É imprescindível verificar no cartão

Leia mais

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

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas Processamento e Otimização de Consultas Banco de Dados Motivação Consulta pode ter sua resposta computada por uma variedade de métodos (geralmente) Usuário (programador) sugere uma estratégia para achar

Leia mais

de Bases de Dados Exame 1

de Bases de Dados Exame 1 Ano lectivo 2011/2012 2 o semestre Administração e Optimização de Bases de Dados Exame 1 Regras O exame tem a duração de 2 horas. O exame é individual e com consulta. Poderá consultar o livro, slides da

Leia mais

Banco de Dados Distribuído

Banco de Dados Distribuído Bancos de Dados III Bancos de Dados Distribuídos Introdução Rogério Costa rogcosta@inf.puc-rio.br 1 Banco de Dados Distribuído Vários bancos de dados fisicamente separados, mas logicamente relacionados

Leia mais

Bases de Dados. Optimização de planos de execução. Plano de execução

Bases de Dados. Optimização de planos de execução. Plano de execução Bases de Dados Optimização de planos de execução Plano de execução O plano de execução define a sequência de operações e o algoritmo para cada operação 2 1 Plano de execução Mas atenção: escolher o algoritmo

Leia mais

Álgebra Relacional e SQL operações de interesse

Álgebra Relacional e SQL operações de interesse Álgebra Relacional e SQL operações de interesse Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Álgebra Relacional Maneira teórica de se manipular o banco de dados relacional Linguagem de consulta

Leia mais

ROTEIRO Introdução Álgebra e Cálculo Relacional Operações da Álgebra Relacional Classificação de Operadores da Álgebra Relacional Mapeamento AR -> SQL

ROTEIRO Introdução Álgebra e Cálculo Relacional Operações da Álgebra Relacional Classificação de Operadores da Álgebra Relacional Mapeamento AR -> SQL BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br ROTEIRO Introdução

Leia mais

Sumário. BD Distribuído (BDD)

Sumário. BD Distribuído (BDD) Sumário Introdução ao Processamento de Consultas Otimização de Consultas 3 Plano de Execução de Consultas 4 Introdução a Transações 5 Recuperação de Falhas 6 Controle de Concorrência 7 Fundamentos de BDs

Leia mais

Bancos de Dados Distribuídos

Bancos de Dados Distribuídos Bancos de Dados Distribuídos O que é Sistema Gerenciador de Banco de Dados? Um sistema gerenciador de banco de dados (SGBD) é usado como sendo um sistema que permite o gerenciamento dos sistemas de bancos

Leia mais

Bancos de Dados Distribuídos. Bancos de Dados Distribuídos. Conteúdo. Motivação. Motivação. Introdução aos BDs Distribuídos.

Bancos de Dados Distribuídos. Bancos de Dados Distribuídos. Conteúdo. Motivação. Motivação. Introdução aos BDs Distribuídos. Bancos de Dados Distribuídos Prof. Frank Siqueira Departamento de Informática e Estatística Universidade Federal de Santa Catarina Conteúdo Introdução aos BDs Distribuídos Processamento de Consultas Distribuídas

Leia mais

Unipar Universidade Paranaense Disciplina: Banco de Dados II 3ª Série Profª: Késsia Marchi Profa. Késsia Marchi

Unipar Universidade Paranaense Disciplina: Banco de Dados II 3ª Série Profª: Késsia Marchi Profa. Késsia Marchi Banco de Dados II Unipar Universidade Paranaense Disciplina: Banco de Dados II 3ª Série Profª: Késsia Marchi Álgebra Relacional Linguagem de consulta procedural; Consiste em um conjunto básico de operações,

Leia mais

Criando Transações. Prof. Fernanda Baião. TbEstoqueLivros. TbEstoqueLivros. ID IDLoja IDLivro Estoque

Criando Transações. Prof. Fernanda Baião. TbEstoqueLivros. TbEstoqueLivros. ID IDLoja IDLivro Estoque Criando Transações Prof. Fernanda Baião fernanda.baiao@uniriotec.com.br SQL Tabelas Exemplo TbAutor TbAutor TbEditora CNPJ TbEditora CNPJ TbLivro ISBN Autor Editora TbLivro ISBN Autor Editora TbLoja CNPJ

Leia mais

Técnicas de Recuperação em Banco de Dados

Técnicas de Recuperação em Banco de Dados Técnicas de Recuperação em Banco de Dados Daniela Barreiro Claro MAT A60 Aula 14 Recuperação em Banco de Dados 2 Falhas podem ocorrer em qualquer Sistema Catastroficas e não-catastroficas SGBD deve garantir

Leia mais

Bases de Dados Uma Recordação da Algebra Relacional

Bases de Dados Uma Recordação da Algebra Relacional Bases de Dados Uma Recordação da Algebra Relacional Caetano Traina Jr. Grupo de Bases de Dados e Imagens Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo - São Carlos caetano@icmc.usp.br

Leia mais

Processamento de Produtos ( X )

Processamento de Produtos ( X ) Processamento de Produtos ( X ) Alternativas e suas estimativas de custo A: laço aninhado ( nested-loop ) A: laço aninhado com índice ( indexed nestedloop ) A: merge-junção ( balanced-line ou sortmerge

Leia mais

Sistemas de Gerência de Bancos de Dados

Sistemas de Gerência de Bancos de Dados Sistemas de Gerência de Bancos de Dados 4 - Consultas e Transações 4.3 - Otimização de consultas distribuídas Introdução BD Distribuído: banco de dados armazenado em vários servidores, conectados por uma

Leia mais

- SQL Linguagem de Manipulação de Dados

- SQL Linguagem de Manipulação de Dados - SQL Linguagem de Manipulação de Dados Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri SELECT SELECT FROM [ WHERE predicado

Leia mais

Sistemas de Gestão de Bases de Dados e-fólio A. Resolução e Critérios de Correção

Sistemas de Gestão de Bases de Dados e-fólio A. Resolução e Critérios de Correção 21103 - Sistemas de Gestão de Bases de Dados 2013-2014 e-fólio A Resolução e Critérios de Correção PARA A RESOLUÇÃO DO E-FÓLIO, ACONSELHA-SE QUE LEIA ATENTAMENTE O SEGUINTE: 1) O e-fólio é constituído

Leia mais

Aula 03. Evandro Deliberal

Aula 03. Evandro Deliberal Aula 03 Evandro Deliberal evandro@deljoe.com.br https://www.linkedin.com/in/evandrodeliberal Concorrência Método Sincronização Problemas: Perda de consistência Acesso a dados inconsistentes Perda de atualizações

Leia mais

Aula 04. Evandro Deliberal

Aula 04. Evandro Deliberal Aula 04 Evandro Deliberal evandro@deljoe.com.br https://www.linkedin.com/in/evandrodeliberal O que é Replicação repetir ou repetir-se por produção ou multiplicação = reproduzir Definição Mecanismo que

Leia mais

Controle de Transação

Controle de Transação Curso: Ciência da Computação Disciplina: Banco de Dados Campus Lages Controle de Transação Prof. Edjandir C. Costa edjandir.costa@ifsc.edu.br Agenda Conceitos de transação e sistema Propriedades desejáveis

Leia mais

Banco de Dados I. Prof. Diego Buchinger. Profa. Rebeca Schroeder Freitas Prof. Fabiano Baldo.

Banco de Dados I. Prof. Diego Buchinger. Profa. Rebeca Schroeder Freitas Prof. Fabiano Baldo. Banco de Dados I Prof. Diego Buchinger diego.buchinger@outlook.com diego.buchinger@udesc.br Profa. Rebeca Schroeder Freitas Prof. Fabiano Baldo Álgebra Relacional Modelo Relacional - Manipulação Categorias

Leia mais

Introdução a Bancos de Dados

Introdução a Bancos de Dados Introdução a Bancos de Dados - Conceitos - Modelos lógicos e relacional - Álgebra relacional - SQL - Projeto Lógico INPE - Divisão de Processamento de Imagens INPE 1 Sistemas de Banco de Dados Definição:

Leia mais

7 Fundamentos de BDs Distribuídos

7 Fundamentos de BDs Distribuídos Sumário 1 Introdução ao Processamento de Consultas 2 Otimização de Consultas 3 Plano de Execução de Consultas 4 Introdução a Transações 5 Recuperação de Falhas 6 Controle de Concorrência 7 Fundamentos

Leia mais

Sistemas de Gerência de Bancos de Dados

Sistemas de Gerência de Bancos de Dados Sistemas de Gerência de Bancos de Dados 4 - Consultas e Transacões 4.2 - Otimização de Consultas Tópicos Otimização Irrestrita Heurística por reordenação de subexpressões Heurística por desmembramento

Leia mais

Agrupamento de Escolas de Forte da Casa

Agrupamento de Escolas de Forte da Casa Agrupamento de Escolas de Forte da Casa Planificação Anual 2017/2018 Grupo Disciplinar Informática CURSO PROFISSIONAL DE TÉCNICO DE MULTIMÉDIA Sistemas de Informação (10º ano) Horas: 132 Módulos: 1, 2,

Leia mais

Banco de Dados. Aula 8 - Prof. Bruno Moreno 16/09/2011

Banco de Dados. Aula 8 - Prof. Bruno Moreno 16/09/2011 Banco de Dados Aula 8 - Prof. Bruno Moreno 16/09/2011 Plano de Aula Operações Unárias Seleção Projeção Operações de seleção e projeção seqüenciadas Operação Rebatizar Operações Binárias União Interseção

Leia mais

GBC053 Gerenciamento de Banco de Dados. Plano de Curso e Introdução. Ilmério Reis da Silva UFU/FACOM/BCC

GBC053 Gerenciamento de Banco de Dados. Plano de Curso e Introdução. Ilmério Reis da Silva  UFU/FACOM/BCC GBC053 Gerenciamento de Banco de Dados Plano de Curso e Introdução Ilmério Reis da Silva ilmerio@ufu.br www.facom.ufu.br/~ilmerio/gbd UFU/FACOM/BCC Plano de Curso Ementa Arquitetura de um Sistema de Gerenciamento

Leia mais

Arquitecturas Paralelas I Computação Paralela em Larga Escala LESI - 4º Ano. Desenvolvimento de Aplicações Paralelas

Arquitecturas Paralelas I Computação Paralela em Larga Escala LESI - 4º Ano. Desenvolvimento de Aplicações Paralelas Arquitecturas Paralelas I Computação Paralela em Larga Escala LESI - 4º Ano Desenvolvimento de Aplicações Paralelas (gec.di.uminho.pt/lesi/ap10203/aula06aplicaçõespar.pdf) João Luís Ferreira Sobral Departamento

Leia mais

23/05/12. Conteúdo. Introdução ao gerenciamento de transações. Motivação. Motivação. Motivação. Motivação

23/05/12. Conteúdo. Introdução ao gerenciamento de transações. Motivação. Motivação. Motivação. Motivação Conteúdo Introdução ao gerenciamento de transações Aluno: Danusa Ribeiro drbc@cin.ufpe.br Professoras: Ana Carolina Salgado acs@cin.ufpe.br Bernadette Farias Lóscio - bfl@cin.ufpe.br Centro de Informática

Leia mais

BCD29008 Banco de dados

BCD29008 Banco de dados BCD29008 Banco de dados Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/bcd 21 de fevereiro de 2018 1/24 Apresentação

Leia mais

Bancos de Dados IV. Tuning de Bancos de Dados. Rogério Costa

Bancos de Dados IV. Tuning de Bancos de Dados. Rogério Costa Bancos de Dados IV Tuning de Bancos de Dados Rogério Costa rogcosta@inf.puc-rio.br 1 Sintonia (Tuning) de Bancos de Dados O que é? Realizar ajustes de forma a obter um melhor tempo de resposta para determinada

Leia mais

Bancos de Dados III. Projeto de Base de Dados Distribuída

Bancos de Dados III. Projeto de Base de Dados Distribuída Bancos de Dados III Fragmentação de Tabelas Rogério Costa rogcosta@inf.puc-rio.br 1 Projeto de Base de Dados Distribuída Top-down Projeto de um novo sistema / ambiente Sistemas homogêneos Bottom-up O banco

Leia mais

Bancos de Dados Distribuídos

Bancos de Dados Distribuídos 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

Leia mais

- Um "query block" permite a implementação das operações de selecção, projecção e junção da álgebra relacional.

- Um query block permite a implementação das operações de selecção, projecção e junção da álgebra relacional. 2.3 Linguagens relacionais (continuação) SQL Structured Query Language 1) "Query block" Select From Where - Um "query block" permite a implementação

Leia mais

MÓDULO 8 INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA POR OBJETOS O QUE É A PROGRAMAÇÃO ORIENTADA POR OBJETOS 10

MÓDULO 8 INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA POR OBJETOS O QUE É A PROGRAMAÇÃO ORIENTADA POR OBJETOS 10 ÍNDICE MÓDULO 8 INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA POR OBJETOS 9 8.1 O QUE É A PROGRAMAÇÃO ORIENTADA POR OBJETOS 10 Como surgiu a programação orientada por objetos (POO) 10 Conceitos centrais da POO 11

Leia mais

BCD29008 Banco de dados

BCD29008 Banco de dados BCD29008 Banco de dados Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/bcd 31 de julho de 2017 1/24 Apresentação

Leia mais

Linguagem de pesquisa declarativa para banco de dados relacional; 1ª Versão - Desenvolvida pela IBM no laboratório de pesquisa de San José;

Linguagem de pesquisa declarativa para banco de dados relacional; 1ª Versão - Desenvolvida pela IBM no laboratório de pesquisa de San José; MySQL SQL (Structured Query Languagem ) Linguagem de pesquisa declarativa para banco de dados relacional; 1ª Versão - Desenvolvida pela IBM no laboratório de pesquisa de San José; Inicialmente - Sequel

Leia mais

Administração de. José Antônio da Cunha CEFET-RN

Administração de. José Antônio da Cunha CEFET-RN Administração de Banco de Dados José Antônio da Cunha CEFET-RN O Otimizador de um Sistema de Gerenciamento de Banco de Dados Relacionais (SGBDR) é responsável por analisar uma consulta SQL e escolher qual

Leia mais

Há vários algoritmos para processar junções nested-loop join block nested-loop join indexed nested-loop join merge-join hash-join

Há vários algoritmos para processar junções nested-loop join block nested-loop join indexed nested-loop join merge-join hash-join Bases de Dados Algoritmos para junção Algoritmos para junções Há vários algoritmos para processar junções nested-loop join block nested-loop join indexed nested-loop join merge-join hash-join A escolha

Leia mais

Modelo Entidade-Relacionamento (E-R)

Modelo Entidade-Relacionamento (E-R) Modelo Entidade-Relacionamento (E-R) composto n lote n n n contrato_compra_venda n possui proprietário possui n associado cadastro n banco faz fronteira pertence n ruas n quadras n financiado empréstimo

Leia mais

Operações da Álgebra Relacional Operadores Especiais da Álgebra Relacional Renomeação

Operações da Álgebra Relacional Operadores Especiais da Álgebra Relacional Renomeação BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br ROTEIRO Operações

Leia mais

Universidade Veiga de Almeida

Universidade Veiga de Almeida Banco de Dados II Universidade Veiga de Almeida Banco de Dados II Prof. Luiz Antônio Vivacqua C. Meyer (luiz.vcm@gmail.com) Linguagens de Consulta Linguagens nas quais os usuários fazem requisições de

Leia mais

Álgebra Relacional e Cálculo Relacional

Álgebra Relacional e Cálculo Relacional SISTEMAS DE INFORMAÇÃO Álgebra Relacional e Cálculo Relacional Prof. Edson Thizon Linguagens de consultas formais (1) Uma linguagem de consulta (Query Language) é uma linguagem com a qual o usuário pode

Leia mais

LISTA DE EXERCÍCIOS TEORIA DE BANCO DE DADOS

LISTA DE EXERCÍCIOS TEORIA DE BANCO DE DADOS LISTA DE EXERCÍCIOS TEORIA DE BANCO DE DADOS 1. Analise as afirmativas abaixo. I. Atributo = dado que é associado a cada ocorrência de uma entidade ou de um relacionamento. II. Relacionamento = conjunto

Leia mais

Compiladores. Otimização de código

Compiladores. Otimização de código Compiladores Otimização de código Otimização de código Recebe uma representação intermediária e produz como saída código de máquina eficiente Parser Checagem Estática Geração de código intermediário Otimização

Leia mais

Otimização de Consultas Baseada em Custo. Cristina Dutra de Aguiar Ciferri

Otimização de Consultas Baseada em Custo. Cristina Dutra de Aguiar Ciferri Otimização de Consultas Baseada em Custo Cristina Dutra de Aguiar Ciferri Estatísticas Informações aproximadas sobre base de dados cada tabela cada atributo de cada tabela cada índice Coletadas durante

Leia mais

Aula 8 BD1 Álgebra Relacional. Profa. Elaine Faria UFU

Aula 8 BD1 Álgebra Relacional. Profa. Elaine Faria UFU Aula 8 BD1 Álgebra Relacional Profa. Elaine Faria UFU - 2018 Introdução Linguagens de consulta formais associadas ao modelo relacional Álgebra Usa uma coleção de operadores e cada consulta descreve um

Leia mais

Introdução. Introdução. Álgebra Relacional. Linguagens formais de Consulta Modelo Relacional. O que foi visto até agora...

Introdução. Introdução. Álgebra Relacional. Linguagens formais de Consulta Modelo Relacional. O que foi visto até agora... Ciência da Computação GBC043 Sistemas de Banco de Dados Linguagens formais de Consulta Modelo Relacional Profa. Maria Camila Nardini Barioni camila.barioni@ufu.br Bloco B - sala 1B137 1 semestre de 2019

Leia mais

Processamento de Transações. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Processamento de Transações. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri Processamento de Transações Banco de Dados Introdução Ambiente multiusuário vários usuários utilizam o mesmo sistema ao mesmo tempo múltiplos programas (transações) compartilham a mesma CPU Forma de execução

Leia mais

ANÁLISE E PROJETO DE BANCO DE DADOS

ANÁLISE E PROJETO DE BANCO DE DADOS ANÁLISE E PROJETO DE BANCO DE DADOS ÁLGEBRA E CÁLCULO RELACIONAL FELIPE G. TORRES APRESENTAÇÃO Avaliações AV1 AV2 TRAB1 TRAB2 REFERÊNCIAS GRAVES, M. Projeto de Banco de Dados com XML. São Paulo: Makron

Leia mais

Lógica Computacional. Normalização e Formas Normais. Literais, Cláusulas e Monómios; Formas Normais NNF, CNF e DNF. Algoritmos de Conversão

Lógica Computacional. Normalização e Formas Normais. Literais, Cláusulas e Monómios; Formas Normais NNF, CNF e DNF. Algoritmos de Conversão Lógica Computacional Normalização e Formas Normais Literais, Cláusulas e Monómios; Formas Normais NNF, CNF e DNF Algoritmos de Conversão 30 Setembro 2013 Lógica Computacional 1 Forma Normal Negativa -

Leia mais