Processamento e Otimização de Consultas
|
|
- Stella Caldas Ferrão
- 6 Há anos
- Visualizações:
Transcrição
1 Processamento e Otimização de Consultas Processo de Execução de uma Consulta 1
2 Otimização de Consultas SQL Em algumas linguagens de consulta, a estratégia de execução é definida pela maneira como o usuário (ou programador) expressa a consulta Em SQL, que é uma linguagem declarativa, apenas os resultados desejados são especificados Portanto, a otimização de consultas é necessária em SGBDs relacionais baseados em SQL Otimização de Consultas SQL Passos principais Tradução da consulta SQL para a álgebra relacional Otimização do resultado Estratégias de otimização Otimização baseada em heurísticas Otimização baseada na estimativa de custo da consulta Otimização semântica 2
3 Tradução de Consultas SQL para Expressões da AR Consultas SQL são decompostas em blocos Cada bloco é transformado em uma expressão da álgebra relacional Os blocos são otimizados internamente, levandose em consideração a ordem de execução entre eles Um bloco contém um único comando SELECT- FROM-WHERE, incluindo cláusulas GROUP BY e HAVING, se houver Exemplo de Tradução de uma Consulta SQL SELECT LNAME, FNAME FROM EMPLOYEE WHERE SALARY > ( SELECT MAX (SALARY) FROM EMPLOYEE WHERE DNO = 5); SELECT FROM WHERE LNAME, FNAME EMPLOYEE SALARY > C SELECT MAX (SALARY) FROM EMPLOYEE WHERE DNO = 5 π LNAME, FNAME (σ SALARY>C (EMPLOYEE)) F MAX SALARY (σ DNO=5 (EMPLOYEE)) 3
4 Otimização Baseada em Heurísticas Consultas são representadas internamente na forma de uma árvore ou grafo Árvores de consulta são preferidas para a otimização pois determinam a ordem de execução das operações Grafos de consulta indicam apenas as operações e os respectivos operandos envolvidos portanto, existe apenas um grafo correspondente a cada consulta Regras heurísticas são usadas para alterar a representação interna (árvore ou grafo) de uma consulta de modo a otimizar a sua execução Por exemplo: operações de projeção e seleção são aplicadas antes de uma junção O plano de execução gerado determina a ordem em que as operações serão executadas e os recursos a serem utilizados (por ex., índices) Exemplo Preliminar Consulta Q2 (Cap. 5 e 8): Para cada projeto localizado em Stafford, recupere o número do projeto, o número do departamento responsável e o último nome, o endereço e a data de nascimento do gerente do departamento. Consulta SQL: SELECT P.PNUMBER, P.DNUM, E.LNAME, E.ADDRESS, E.BDATE FROM PROJECT AS P, DEPARTMENT AS D, EMPLOYEE AS E WHERE P.DNUM=D.DNUMBER AND D.MGRSSN=E.SSN AND P.PLOCATION= STAFFORD ; Álgebra Relacional: π PNUMBER, DNUM, LNAME, ADDRESS, BDATE (((σ PLOCATION= STAFFORD (PROJECT)) DNUM=DNUMBER (DEPARTMENT)) MGRSSN=SSN (EMPLOYEE)) 4
5 Árvore de Consulta π PNUMBER, DNUM, LNAME, ADDRESS, BDATE (((σ PLOCATION= STAFFORD (PROJECT)) DNUM=DNUMBER (DEPARTMENT)) MGRSSN=SSN (EMPLOYEE)) Árvore Canônica SELECT P.PNUMBER, P.DNUM, E.LNAME, E.ADDRESS, E.BDATE FROM PROJECT AS P, DEPARTMENT AS D, EMPLOYEE AS E WHERE P.DNUM=D.DNUMBER AND D.MGRSSN=E.SSN AND P.PLOCATION= STAFFORD ; 5
6 Otimização Heurística Parte de uma árvore canônica, obviamente ineficiente, mas fácil de ser construída No exemplo anterior, considerando-se que P tem 100 tuplas de 100 bytes D tem 20 tuplas de 50 bytes E tem 5000 tuplas de 150 bytes os produtos cartesianos resultariam em 10 milhões de tuplas de 300 bytes cada Transformações a partir da árvore canônica usam regras de equivalência entre expressões da álgebra relacional para melhorar progressivamente o plano de execução da consulta Exemplo Consulta SQL: SELECT LNAME FROM EMPLOYEE, WORKS_ON, PROJECT WHERE PNAME = AQUARIUS AND PNUMBER=PNO AND ESSN=SSN AND BDATE > DEC ; Álgebra Relacional (Expressão Canônica): π LNAME (σ PNAME= AQUARIUS AND PNUMBER=PNO AND ESSN=SSN AND BDATE> DEC (EMPLOYEE WORKS_ON PROJECT)) 6
7 Exemplo: etapa 1 A árvore canônica é construída diretamente a partir da consulta SQL Exemplo: etapa 2 A condição de seleção é desmembrada e as duas operações de seleção (sobre BDATE e PNAME) são aplicadas antes dos produtos cartesianos, para reduzir o número de tuplas resultantes 7
8 Exemplo: etapa 3 As posições das relações EMPLOYEE e PROJECT são trocadas para que a condição de seleção mais restritiva (PNAME= Aquarius ) seja executada primeiro Exemplo: etapa 4 Produtos cartesianos seguidos de seleção são substituídos por junções 8
9 Exemplo: etapa 5 A cada passo, são mantidas apenas os atributos necessários (operações de projeção são deslocadas para baixo) Regras de Transformação R1. Cascata de seleções: σ <cond1 E cond2 E... E condn> (R) = σ <cond1> (σ <cond2> (... σ <condn> (R)) R2. Comutatividade de seleções: σ <cond1> (σ <cond2> (R)) = σ <cond2> (σ <cond1> (R)) R3. Cascata de projeções: π <lista1> (π <lista2> (R)) = π <lista1> (R) R4. Comutatividade da seleção e projeção π <lista> (σ <cond> (R)) = σ <cond> (π <lista> (R)) 9
10 Regras de Transformação (cont.) R5. Comutatividade da junção e do produto cartesiano R S = S R R S = S R R6. Comutatividade da seleção e junção ou produto cartesiano (θ = {, }) σ <cond> (R θ S) = (σ <cond> (R)) θ S R7. Comutatividade da projeção e junção ou produto cartesiano (θ = {, }) π <lista> (R θ S) = (π <listar> (R)) θ (π <listas> (S)) R8. Comutatividade da união e da interseção R S = S R R S = S R Regras de Transformação (cont.) R9. Associatividade da junção, produto cartesiano, união e interseção (θ = {,,, }) (R θ S) θ T = R θ (S θ T) R10. Comutatividade da seleção e das operações de conjunto (união, interseção e diferença) σ <cond> (R θ S) = σ <cond> (R) θ σ <cond> (S) R11. Comutatividade da projeção e união π <lista> (R S) = π <lista> (R) π <lista> (S) R12. Conversão da sequência seleção/produto cartesiano em junção σ c (R S) = R c A 10
11 Passos para Otimização de uma Árvore Canônica do Tipo SPJ 1. Usando a regra R1, desmembre a condição (conjuntiva) da operação de seleção. 2. Usando as regras R2 e R6, reposicione as condições de seleção e junção de forma que elas possam ser aplicadas o mais cedo possível. 3. Usando as regras R5 e R9, reposicione as relações de forma que condições de seleção mais restritivas possam ser aplicadas mais cedo. 4. Usando a regra R12, converta as sequências de operações de seleção e produto cartesiano em junções. 5. Usando as regras R3, R4 e R7, desmembre a lista de atributos da operação de projeção de forma que operações de projeção específicas possam ser executadas mais cedo. Exercício Seja o banco de dados de uma livraria representado pelo seguinte esquema relacional: Editora(CodEditora,NomeEditora) Livro(CodLivro,Titulo,Autor,Assunto,AnoPub,CodEditora) Instituicao(CodInst,NomeInst,Sigla,Local) Adotado-por(CodLivro,CodInst,AnoAdocao) Dada a consulta SQL SELECT NomeInst FROM Instituicao WHERE CodInst IN (SELECT CodInst FROM Adotado-por WHERE AnoAdocao = 2007 AND CodLivro IN (SELECT CodLivro FROM Livro WHERE Assunto = Portugues AND CodEditora IN (SELECT CodEditora FROM Editora WHERE NomeEditora = Editora Campus ))) reescreva-a de forma não-aninhada, gere a sua árvore canônica e, usando as regras de transformação, derive a árvore de consulta que corresponda à sequência de operações da álgebra relacional mais eficiente para a sua execução. 11
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 maisUTFPR - 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 maisIntroduçã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 maisTecnologias 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 maisProcessamento 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 maisL Q S m e g a u g n Li A
A Linguagem SQL Introdução Originalmente proposta para o System R desenvolvido nos laboratórios da IBM na década de 70 SEQUEL (Structured English QUEry Language) Objeto de um esforço de padronização coordenado
Leia maisGES013 - Sistema de Banco de Dados SQL/DML no PostgreSQL Parte 3 Tabelas de Junção e Funções de Agregação
GES013 - Sistema de Banco de Dados SQL/DML no PostgreSQL Parte 3 Tabelas de Junção e Funções de Agregação Ilmério Reis da Silva ilmerio arroba ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM/BCC UFU/FACOM
Leia maisGES013 - Sistema de Banco de Dados SQL/DML no PostgreSQL Parte 2 Consultas Aninhaas
GES013 - Sistema de Banco de Dados SQL/DML no PostgreSQL Parte 2 Consultas Aninhaas Ilmério Reis da Silva ilmerio arroba ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM/BCC SQL/DML Parte 2 Consultas Aninhadas
Leia maisBanco 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 maisDCC011 Introdução a Banco de Dados
DCC011 Introdução a Banco de Dados SQL select avançado Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Revisão: consultas básicas Formato
Leia maisGES013 - Sistema de Banco de Dados SQL/DML no PostgreSQL Parte 1 Introdução e Consultas Basicas
GES013 - Sistema de Banco de Dados SQL/DML no PostgreSQL Parte 1 Introdução e Consultas Basicas Ilmério Reis da Silva ilmerio arroba ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM/BCC UFU/FACOM Página
Leia maisÁlgebra Relacional. Programa. Modelos de Dados. LCs relacionais formais. Introdução
Programa DCC011 Introdução a Banco de Dados Álgebra Relacional Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Introdução Conceitos básicos,
Leia maisBancos de Dados. 15. Processamento e O3mização de Consultas
Bancos de Dados 15. Processamento e O3mização de Consultas Introdução Existe nos SGBDR um módulo conhecido como o3mizador de consultas A expressão o3mização de consultas, embora seja frequentemente u3lizada,
Leia maisModelo de Dados Relacional
Modelo de Dados Relacional Introdução O modelo relacional representa um banco de dados como um conjunto de relações Informalmente, uma relação é uma tabela de valores, onde cada linha representa uma coleção
Leia maisA Linguagem SQL. Introdução a Banco de Dados DCC 011
A Linguagem SQL Introdução Originalmente proposta para o System R desenvolvido nos laboratórios da IBM na década de 70 SEQUEL (Structured English QUEry Language) Objeto de um esforço de padronização coordenado
Leia maisGBC043 - Sistemas de Banco de Dados SQL/DML no PostgreSQL. Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM/BCC
GBC043 - Sistemas de Banco de Dados SQL/DML no PostgreSQL Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM/BCC Página 2 Prgrama Teórico/Prático - SQL Linguagem SQL Comandos
Leia maisSumá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 maisACH2025. 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 maisEncontro SQL BH. February Otimização de Consultas no SQL Server
Encontro SQL BH February 2016 Otimização de Consultas no SQL Server Apoio Global Portuguese Virtual PASS Local Chapters Upcoming SQL Saturdays Brazil Apr 9 Joinville #488 Jun 18 Rio de Janeiro #512 Visit
Leia maisBANCO DE DADOS II SQL Básico. COTEMIG Gerson Borges
BANCO DE DADOS II SQL Básico COTEMIG Gerson Borges gerson@cotemig.com.br Definição de Banco de Dados [Elmasri & Navathe, 2000] Um banco de dados é uma coleção de dados relacionados Representando algum
Leia maisDCC011 Introdução a Banco de Dados
Programa DCC011 Introdução a Banco de Dados SQL select Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Introdução Conceitos básicos, características
Leia maisOscar Luiz Monteiro de Farias 1. Bancos de Dados. Mestrado em Engenharia de Computação área de concentração Geomática
Oscar Luiz Monteiro de Farias 1 Bancos de Dados Mestrado em Engenharia de Computação área de concentração Geomática Oscar Luiz Monteiro de Farias 2 Structured Query Language (SQL)... Linguagem de Banco
Leia mais23/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 maisBases 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Á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 maisUnipar 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 maisCompilaçã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 maisBanco de Dados. Otimização de consultas. Prof. Joao Eduardo Ferreira Prof. Osvaldo Kotaro Takai. Última atualização: 15 de maio de 2006
Banco de Dados Otimização de consultas Última atualização: 15 de maio de 2006 Prof. Joao Eduardo Ferreira Prof. Osvaldo Kotaro Takai Introdução Consulta em linguagem de alto nível Análise e validação Forma
Leia maisOTIMIZAÇÃ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 maisProcessamento 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 maisDCC011 Introdução a Banco de Dados
Programa DCC011 Introdução a Banco de Dados SQL select Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Introdução Conceitosbásicos, característicasda
Leia maisGBC043 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 maisProcessamento e Otimização de Consultas
Introdução Processamento e Banco de Dados II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM 1 Processamento
Leia maisÁ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 maisSumário. Bancos de Dados Avançados Processamento de Consultas. Tradução SQL Álgebra Relacional
Introdução Como o SGBD INTERNAMENTO processa, otimiza e executa consultas de alto nível Bancos de Dados Avançados Processamento de Consultas DCC030 - TCC: Bancos de Dados Avançados (Ciência Computação)
Leia maisBANCO DE DADOS II Conceitos Básicos. COTEMIG Gerson Borges
BANCO DE DADOS II Conceitos Básicos COTEMIG Gerson Borges gerson@cotemig.com.br Revisão O que é um banco de dados? Definições Preliminares [Chu, 1985] Um banco de dados é um conjunto de arquivos relacionados
Leia maisPreparação. Linguagem de Manipulação de Dados (DML) Estudo Dirigido 10/12/2013
Linguagem de Manipulação de Dados (DML) Estudo Dirigido A Linguagem SQL Preparação Criar um banco de dados denominado Escola ; Criar a tabela, como especificado abaixo: # RA Numeric(8) Nome Serie Turma
Leia maisBanco de Dados Prof. Célio R. Castelano Página 1 de 9. Álgebra Relacional
Banco de Dados Prof. Célio R. Castelano Página 1 de 9 Álgebra Relacional A álgebra relacional é uma linguagem procedural, que possui uma coleção de operações que são utilizadas para manipular relações
Leia maisBases 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 maisBanco de Dados I Módulo III: Linguagens de Consulta. (Aula 1) Clodis Boscarioli
Banco de Dados I 2007 Módulo III: Linguagens de Consulta (Aula 1) Clodis Boscarioli Conteúdo do Módulo: Linguagens de Consulta Formais Álgebra Relacional; Cálculo Relacional de Tupla; Cálculo Relacional
Leia maisÁ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 maisSQL Linguagem de Manipulação de Dados SQL DML SQL DML. Exemplo Modelo Relacional. Exemplo ME-R SQL DML CONTINUAÇÃO...
Ciência da Computação GBC043 Sistemas de Banco de Dados SQL Linguagem de Manipulação de Dados Profa. Maria Camila Nardini Barioni camila.barioni@facom.ufu.br Bloco B - sala 1B137 SQL DML CONTINUAÇÃO...
Leia maisÁ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 maisBanco 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 maisPrincipais Desafios dos SGBDDs. Processamento Distribuído de Consultas. Processamento de Consultas. Componentes do Processamento de Consultas
Principais Desafios dos SGBDDs Processamento Distribuído de Consultas Fernanda Baião baiao@cos.ufrj.br Processamento Distribuído de Consultas conversão de transações do usuário em instruções de manipulação
Leia maisSQL-99: Esquema de BD EMPRESA
SQL-99: Esquema de BD EMPRESA SQL-99: Instâncias do esquema EMPRESA 1 Consultas externa, aninhada e correlacionada para cada tupla da consulta externa, a consulta aninhada devolve o atributo solicitado
Leia maisExercício Aula Passada. SQL Linguagem de Manipulação de Dados. Exercício Aula Passada. Exercício Aula Passada. Exercício Aula Passada
Ciência da Computação GBC043 Sistemas de Banco de Dados SQL Linguagem de Manipulação de Dados Profa. Maria Camila Nardini Barioni camila.barioni@ufu.br Bloco B - sala 1B137 1 semestre de 2018 2 Escreva
Leia mais23/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 maisRápida revisão do Modelo Relacional
Rápida revisão do Modelo Relacional Conceito de relação Tuplas e atributos Rápida revisão do Modelo Relacional Regras de integridade Entidade: Deve existir uma chave primária com valor único e não-nulo.
Leia mais- 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 maisUniversidade 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- 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 maisIntroduçã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 maisBanco 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 maisOperaçõ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 maisPROCESSAMENTO DE CONSULTAS EM BANCOS DE DADOS DE DIFERENTES TECNOLOGIAS
UNIVERSIDADE FEDERAL DE SANTA CATARINA PROGRAMA DE PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO ANA CRISTINA DE OLIVEIRA CIRINO COD ATO PROCESSAMENTO DE CONSULTAS EM BANCOS DE DADOS DE DIFERENTES TECNOLOGIAS
Leia maisProcessamento 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 maisBANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING
BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING http://www.uniriotec.br/~tanaka/tin0036 tanaka@uniriotec.br Bancos de Dados Distribuídos Processamento de Consultas Ambiente com SGBD Distribuído Processamento
Leia maisALGEBRA RELACIONAL. Álgebra Relacional Conjunto básico de operações para o Modelo Relacional O resultado é uma relação
1/5 Universidade Federal da Bahia Disciplina: Banco de Dados Prof a. Daniela Barreiro Claro ALGEBRA RELACIONAL Duas linguagens formais do Modelo Relacional o Álgebra Relacional e Cálculo Relacional Álgebra
Leia maisROTEIRO 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 maisO 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 maisTornou-se um padrão de fato para aplicações comerciais, devido a sua simplicidade e performance.
Histórico Foi introduzido por Codd (1970) Tornou-se um padrão de fato para aplicações comerciais, devido a sua simplicidade e performance. É um modelo formal, baseado na teoria matemática das relações
Leia maisANÁLISE E PROJETO DE BANCO DE DADOS
ANÁLISE E PROJETO DE BANCO DE DADOS SQL FELIPE G. TORRES SQL A linguagem SQL (Struct Query Language) é utilizada como padrão em bancos de dados relacionais. Seu desenvolvimento foi originalmente no início
Leia maisProcessamento 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 mais3 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 maisDCC011 Introdução a Banco de Dados SQL gerenciar tabelas e dados
DCC011 Introdução a Banco de Dados SQL gerenciar tabelas e dados Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br Programa Introdução Conceitos
Leia maisRoteiro. SQL Linguagem de Manipulação de Dados. Exercício Aula Passada. Exercício Aula Passada. Exercício Aula Passada. Exercício Aula Passada
1 Ciência da Computação GBC043 Sistemas de Banco de Dados SQL Linguagem de Manipulação de Dados Profa. Maria Camila Nardini Barioni camila.barioni@ufu.br Bloco B - sala 1B137 Roteiro s aulas passadas SQL
Leia maisSistemas 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 maisModelo de Dados Relacional
Modelo de Dados Relacional Sumário Conceitos Básicos Domínios, atributos, tuplas e relações Características das relações Notação Restrições de Integridade Domínio, chave, integridade entidade e integridade
Leia maisBanco de Dados I. Aula 16 - Prof. Bruno Moreno 04/11/2011
Banco de Dados I Aula 16 - Prof. Bruno Moreno 04/11/2011 Plano de Aula O comando DELETE Cláusula CHECK Comparações utilizando NULL Funções agregadas Junções de tabelas em SQL Visões Comando DELETE DELETE
Leia maisÁlgebra Relacional. Introdução. Introdução. Álgebra Relacional
Pós-graduação em Ciência da Computação CCM-205 Sistema de Bancos de Dados O que foi visto até agora... Álgebra Relacional Profa. Maria Camila Nardini Barioni camila.barioni@ufabc.edu.br Bloco B - sala
Leia maisEscrita ( 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 maisAula 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 maisGES013 Sistema de Banco de Dados. Modelo Relacional (R) Ilmério Reis da Silva ilmerio arroba ufu.br UFU/FACOM
GES013 Sistema de Banco de Dados Modelo Relacional (R) Ilmério Reis da Silva ilmerio arroba ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM UFU/FACOM Página 2 Modelo Relacional R : Definição Def. O MODELO
Leia maisDouglas 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Álgebra Relacional. Conjunto de operações que usa uma ou duas relações como entrada e gera uma relação de saída. Operações básicas:
Álgebra Relacional Conjunto de operações que usa uma ou duas relações como entrada e gera uma relação de saída operação (REL 1 ) REL 2 operação (REL 1,REL 2 ) REL 3 Operações básicas: seleção projeção
Leia maisSubconsulta na Cláusula FROM
Subconsulta na Cláusula FROM Gera uma tabela derivada a partir de uma ou mais tabelas, para uso na consulta externa otimização: filtra linhas e colunas de uma tabela que são desejadas pela consulta externa
Leia maisRoteiro. Álgebra Relacional e Cálculo Relacional. BCC321 - Banco de Dados I. Introdução. Ementa. Posicionamento. Introdução
Roteiro Álgebra Relacional e Cálculo Relacional Posicionamento Luiz Henrique de Campos Merschmann Departamento de Computação Universidade Federal de Ouro Preto luizhenrique@iceb.ufop.br www.decom.ufop.br/luiz
Leia maisIEC Banco de Dados I Aula 06 Álgebra Relacional
IEC Banco de Dados I Aula 06 Álgebra Relacional Turmas: Sistemas de Informação Professora: André Luiz da Costa Carvalho E- mail: andre@icomp.ufam.edu.br Ambiente virtual: hlp://bdufam.wordpress.com Sumário
Leia maisBanco 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 DML Data Manipulation Language Parte II Consultas Básicas
Leia maisSubconsultas ou Consultas Aninhadas
Subconsultas ou Consultas Aninhadas Forma alternativa de especificar consultas envolvendo relacionamentos entre tabelas Otimização filtragens prévias de dados na subconsulta apenas tuplas/atributos de
Leia maisBanco de Dados I Linguagem SQL Parte 2. Autor: Prof. Cláudio Baptista Adaptado por: Prof. Ricardo Antonello
Banco de Dados I Linguagem SQL Parte 2 Autor: Prof. Cláudio Baptista Adaptado por: Prof. Ricardo Antonello Introdução Como vimos, um SGBD possui duas linguagens: DDL: Linguagem de Definição de Dados. Usada
Leia maisPreparação criar tabela. Linguagem de Manipulação de Dados (DML) Estudo Dirigido 12/11/2018
Linguagem de Manipulação de Dados (DML) Estudo Dirigido A Linguagem SQL Preparação criar tabela Criar um novo arquivo de banco de dados chamado Escola Criar a tabela, como especificado abaixo: Create table
Leia maisUm modelo por si próprio não pode realizar qualquer unidade de trabalho útil. É apenas uma representação da realidade.
2. Modelo Relacional... 2.1. Estrutura de Dados Relacional... 2.2. Álgebra Relacional Um modelo por si próprio não pode realizar qualquer unidade de trabalho útil. É apenas uma representação da realidade.
Leia maisOperações fundamentais são suficientes para expressar qualquer consulta. Problema: consultas muito longas. Solução: definição de operações adicionais
Banco de Dados / 1 Bacharelado em Sistemas de Informação BANCOS DE DADOS Aula 15 Álgebra Relacional Operações Adicionais Banco de Dados / 2 Operações Adicionais Operações fundamentais são suficientes para
Leia maisSQL DML. Frederico D. Bortoloti freddb@ltc.ufes.br
Banco de Dados I SQL DML Frederico D. Bortoloti freddb@ltc.ufes.br SQL - DML Os exemplos da aula serão elaborados para o esquema de dados a seguir: Empregado(matricula, nome, endereco, salario, supervisor,
Leia maisExame de Recurso de Base de Dados Universidade do Algarve 03/Fev/2005, (duração: 2 horas)
Exame de Recurso de Base de Dados Universidade do Algarve 03/Fev/2005, (duração: 2 horas) Este exame consiste em 16 perguntas de escolha múltipla. Para todas as questões existe apenas 1 resposta correcta.
Leia maisAvisos. SQL: Visões. Roteiro SELECT. Suporte de SQL para OLAP SQL DML CONTINUAÇÃO CONSULTAS AVANÇADAS. Cronograma das próximas aulas
Ciência da Computação GBC043 Sistemas de Banco de Dados Avisos SQL: Visões Profa. Maria Camila Nardini Barioni camila.barioni@ufu.br Bloco B - sala 1B137 1 semestre de 2019 Cronograma das próximas aulas
Leia maisBanco de Dados II Aula 05. Prof. Érick de Souza Carvalho
Banco de Dados II Aula 05 Prof. Érick de Souza Carvalho 1 Banco de Dados II Prof. MSc. Érick de Souza Carvalho Respostas dos Exercícios da Aula Anterior (Continuação) 2 Exercícios (Parte 05) VI) Reescreva
Leia maisGBC043 Sistemas de Banco de Dados. Modelo Relacional (R) Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM
GBC043 Sistemas de Banco de Dados Modelo Relacional (R) Ilmério Reis da Silva ilmerio@facom.ufu.br www.facom.ufu.br/~ilmerio/sbd UFU/FACOM UFU/FACOM Página 2 Modelo Relacional R : Definição Def. O MODELO
Leia maisÁ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 maisANÁ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 maisBanco de Dados. Banco de Dados II. Característica fundamental de SGBDs. Abordagem SGBD x Processamento de Arquivos Tradicional
Banco de Dados Banco de Dados II Conceitos Básicos Coleção logicamente coerente de dados relacionados com algum significado inerente; Exemplos de bancos de dados: Agenda de endereços (papel ou computador)
Leia maisUma expressão básica em SQL consiste em três cláusulas: select, from e where.
Introdução a Banco de Dados O.K. Takai; I.C.Italiano; J.E. Ferreira. 67 8 A Linguagem SQL A linguagem SQL é um padrão de linguagem de consulta comercial que usa uma combinação de construtores em Álgebra
Leia maisSumá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 maisSubconsultas ou Consultas Aninhadas
Subconsultas ou Consultas Aninhadas Forma alternativa de especificar consultas envolvendo relacionamentos entre tabelas Otimização filtragens prévias de dados na subconsulta apenas tuplas/atributos de
Leia mais