Introdução a. π LNAME, FNAME (σ SALARY>C (EMPLOYEE))
|
|
- Inês Jardim Domingues
- 5 Há anos
- Visualizações:
Transcrição
1 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 br/~mirella 2 Introdução Sumário Árvore de consulta Consulta costuma ter N estratégias de execução possíveis: Otimização de consulta = escolher estratégia adequada Estratégia de execução Plano de consulta Código pode ser: (1) Executado diretamente (modo interpretado) (2) Armazenado e executado + tarde (modo compilado) Processamento de Consultas 1. Tradução SQL Álgebra Relacional 2. Algoritmos para operações Ordenação externa SELEÇÃO, JUNÇÃO, PROJEÇÃO, AGREGAÇÃO, JUNÇÃO EXTERNA 3. Otimização de consultas Com heurísticas Com estimativas de custo (seletividade) Figura Passos típicos durante a execução DCC 011 de -uma profa consulta Mirella M. de Moro alto nível. 3 MATERIAL BASEADO EM : Elmasri/Navathe 4 a ed cap 15 / 6 a ed cap 19 4 Tradução SQL Álgebra Relacional Tradução SQL Álgebra Relacional Bloco de consulta: unidade básica que pode ser traduzida para operadores da álgebra e otimizada Um bloco de consulta contém uma única expressão SELECT FROM WHERE, bem como GROUP BY e HAVING se for o caso Consultas asaninhadas adas= bloco bocode consulta separado ado Álgebra extendida: com MAX, MIN, SUM e COUNT SELECT LNAME, FNAME FROM EMPLOYEE WHERE SALARY > ( SELECT MAX (SALARY) FROM EMPLOYEE WHERE DNO = 5); SELECT LNAME, FNAME SELECT MAX (SALARY) FROM EMPLOYEE FROM EMPLOYEE WHERE SALARY > C WHERE DNO = 5 π LNAME, FNAME (σ SALARY>C (EMPLOYEE)) MAX SALARY (σ DNO=5 (EMPLOYEE)) 6 5
2 Árvores/Grafos de Consulta Árvore de consulta: uma estrutura de dados em árvore corresponde à expressão da álgebra relacional RELAÇÕES DE ENTRADA da consulta como nodos folha da árvore OPERAÇÕES DE ÁLGEBRA como nodos internos Execução de árvore de consulta Executar operação de nodos internos sem seus operandos disponíveis Substitui operação no nodo pelo resultado da mesma Grafo de consulta: uma maestrutura t ra de dadosem grafo corresponde à expressão do cálculo relacional Não indica a ordem na qual operações são realizadas Existe apenas um grafo correspondente a cada consulta Árvores/Grafos de Consulta Exemplo Para cada projeto localizado em Stafford, retorne o número do projeto, o número do departamento que o controla e o último nome, endereço e data de aniversário do seu gerente 7 8 (a) Árvores/Grafos de Consulta Para cada projeto localizado em Stafford, retorne o número do projeto, o número do departamento que o controla e o último nome, endereço e data de aniversário do seu gerente Álgebra relacional π PNUMERO, DNUM, UNOME, ENDEREÇO, DATANASC (((σ PLOCALIZACAO= STAFFORD (PROJETO)) DNUM=DNUMERO (DEPARTMENTO)) GERSSN=SSN (EMPREGADO)) Consulta em SQL (Q2): SELECT P.PNUMERO, P.DNUM, E.UNOME, E.ENDEREÇO, E.DATANASC FROM PROJETO AS P, DEPARTMENTO AS D, EMPREGADO AS E WHERE P.DNUM=D.DNUMERO AND D.GERSSN=E.SSN AND P.PLOCALIZACAO= STAFFORD ; Q2: π PNUMERO, DNUM, UNOME, ENDEREÇO, DATANASC (((σ PLOCALIZACAO= STAFFORD (PROJETO)) DNUM=DNUMERO (DEPARTMENTO)) GERSSN=SSN (EMPREGADO)) 9 Figura Duas árvores de consulta para Q2. (a) Árvore de consulta para expressão da álgebra relacional (b) Árvore de consulta inicial (canônica) para DCC a consulta profa SQL. Mirella (c) M. Gráfico Moro de consulta para Q2. 10 Algoritmos para operações AGORA: apenas resumo INFO COMPLETA: banco de dados avançados Ordenação externa: fundamental paraorder BY; componente de junção, união, intersecção + eliminação de duplicatas em projeção, DISTINCT Pode ser evitada com indexação apropriada Algoritmos para operações SELEÇÃO: pesquisa para localizar os registros em um arquivo de disco que satisfazem certa condição (caminho de acesso apropriado para a condição) Pesquisa linear; pesquisa binária; usando: índice primário, chave hash, índice primário para recuperar vários registros, índice de agrupamento para recuperar vários registros, índice secundário Seleção conjuntivausandoíndice usando individual, seleçãoconjuntiva usando índice composto, seleção conjuntiva por intersecção de ponteiros de registros. Seletividade de uma condição (introdução) Condições de seleção disjuntivas 11 12
3 Algoritmos para operações Algoritmos para operações JUNÇÃO: é uma das operações mais demoradas no processamento da consulta Mi Maioria: i variedades idd de EQUIJUNÇÃO e JUNÇÃO NATURAL Junção de loop aninhado, junção de único loop, junção ordenaçãointercalação (merge join), junção de partição hash Como o espaço do buffer e a escolha do arquivo de loop externo afetam o desempenho da junção de loop aninhado Como o fator de seleção de junção afeta o desempenho Caso geral para a junção de partição hash Junção hash híbrida híbrida PROJEÇÃO: como eliminar duplicatas AGREGAÇÃO: MIN,MAX,COUNT,AVG, SUM quando aplicados à tabela tbl inteira i podem ser calculados l por uma varredura de tabela ou usando índice apropriado JUNÇÃO EXTERNA (outer join): modifica se um dos algoritmos de junção PIPELINE: operações podem ser combinadasem pipeline Heurísticas Regras de Transformação RELEMBRANDO Consulta SQL parser = parse tree plano de consulta lógico + leis algébricas = plano de consulta lógico melhorado plano de consulta físico Plano de consulta físico Operações a serem realizadas Ordem das operações Algoritmo para processar cada passo Modos de recuperar dados armazenados Modo de passar dados de uma operação para outra Plano lógico físico: avaliar o custo de cada opção 16 Duas maneiras principais de otimizar consultas: Com heurísticas Com estimativas de custo (seletividade) Otimização com Heurísticas Processo para otimização com heurísticas 1. O parser de uma consulta de alto nível gera uma representação interna inicial i i 2. Aplica se regras heurísticas para otimizar representação interna 3. Um plano de execução de consultas é gerado Executa grupos de operações baseado nos caminhos de acesso disponíveis nos arquivos envolvidos na consulta A heurística principal é aplicar primeiro as operações que reduzem o tamanho dos resultados intermediários Exemplo: aplicar operações SELEÇÃO e PROJEÇÃO antes da JUNÇÃO ou demais operações binárias i 17 18
4 RESUMO: Leis Algébricas Li Leis algébricas: lébi melhorar o plano de consulta lógico As mais comuns utilizadas por otimizadores SELEÇÃO o mais cedo possível (mais baixo na árvore) Composta (AND): dividir e processar cada condição separadamente na árvore PROJEÇÃO o mais cedo possível Novas podem ser adicionadas ELIMINAR DUPLICATAS: remover algumas vezes ou mover para outra posição na árvore SELEÇÃO + PROD.CARTESIANO = EQUIJOIN algumas vezes será mais eficiente 19 Otimização com Heurísticas A mesma consulta diferentes expressões álgebra relacional diferentes árvores de consulta Otimizador: i encontrar a árvore final que execute c/ eficiência iê i Exemplo WHERE PNOME= AQUARIUS AND PNUMERO=NRP AND ESSN=SSN AND DATANASC > ; Figura 15.5 Etapas na conversão de uma árvore de consulta durante a otimização heurística: SELEÇÃO DCC profa + baixa Mirella M. Moro 21 Figura 15.5 Etapas na conversão de uma árvore de consulta durante a otimização heurística: SELEÇÃO + RESTRITIVA primeiro Figura 15.5 Etapas na conversão de uma árvore de consulta durante a otimização heurística: PRODUTO CARTESIANO + SELEÇÃO JUNÇÃO 23 Figura 15.5 Etapas na conversão de uma árvore de consulta durante a otimização heurística: PROJEÇÃO para mais baixo na árvore (projeta DCC apenas profa o que Mirella precisa M. Moro para a próxima operação) 24
5 1. Cascata de σ: Uma condição de seleção conjuntiva pode ser quebrada em uma cascata (sequência) de operações individuais c1 AND c2 AND... AND cn (R) c1 ( c2 (...( ( cn (R))...)) ) 2. Comutatividade de : A operação é comutativa: c1 ( c2 (R)) c2 ( c1 (R)) 3. Cascata de : Em uma cascata (sequência) de operações, todas, exceto a última, podem ser ignoradas List1 ( List2 (...( Listn (R))...) ) = List1 (R) 4. Comutatividade de e : Se a condição de seleção c envolver apenas aqueles atributos t A1,..., An da lista de projeção, as duas operações podem ser comutadas A1, A2,..., An ( c (R)) = c ( A1, A2,..., An (R)) 5. Comutatividade de (e ): A operação é comutativa, assim como : R C S = S C R; R S = S R 6. Comutatividade de com (e ): Se todos os atributos da condição de seleção c envolverem apenas os atributos de uma das relações participantes da junção digamos R, as duas operações podem ser comutadas como segue c ( R S ) ( c (R)) S De maneira alternativa, se a condição de seleção c puder ser escrita como (cl AND c2), na qual a condição cl envolver apenas os atributos de R e a condição c2 envolver apenas os atributos de S, as operações comutam da seguinte forma: c ( R S ) ( c1 (R)) ( c2 (S)) Comutatividade de com (ou ): Suponha que a lista de projeção seja L = {A1,..., An, Bj,..., Bm}, onde A1...An são atributos t de R e B1...BmB são atributos t de S. Se a condição de junção c envolver apenas atributos que estão em L, as duas operações podem ser comutadas como segue L (R CS) ( A1,..., An (R)) C ( B1,..., Bm (S)) Se a condição de junção c possuir atributos adicionais que não estão em L, estes devem ser acrescidos à lista de projeção, e uma operação π final é necessária. 8. Comutatividade de operações de conjunto: As operações de conjunto e são comutativas, porém não é. 9. Associatividade de,, U e : Associatividade de,, e : Essas quatro operações são associativas individualmente, ou seja, se θ significar qualquer uma dessas quatro operações (na expressão inteira), temos ( R S ) T R ( S T ) 10. Comutatividade de σ e das operações de conjunto: A operação σ comuta com as operações, e. Se θ significar qualquer uma dessas três operações (na expressão inteira), temos c (R S) ( c (R)) ( c (S)) A operação comuta com U. L ( R U S ) ( L (R)) U ( L (S)) 12. Convertendo a sequência ( ) em : Se a condição c de uma σ que siga uma corresponder a uma condição de junção, converta a sequência (σ, ) em uma conforme mostrado a seguir: ( C (R S)) = (R C S) 13. Other transformations 29 Using Heuristics in Query Optimization Outline of a Heuristic Algebraic Optimization Algorithm: 1. A regra 1 quebra quaisquer operações SELECT com condições conjuntivas em uma cascata de operações SELECT, permitindo um maior grau de liberdade para transferir operações SELECT para ramos diferentes e abaixo na árvore. 2. Usando as regras 2, 4, 6 e 10 relativas lti à comutatividade ttiidd do SELECT com outras operações, move cada operação SELECT o mais longe para baixo na árvore que for permitido pelos atributos envolvidos na condição de seleção 3. Usando as regras 5 e 9 com relação à associatividade das operações binárias, rearranje os nodos folha tal que a relação das folhas com operações mais restritivas são executadas primeiro na árvorerepresentation. 30
6 Using Heuristics in Query Optimization 4. Usando a regra 12, combina uma operação PRODUTO CARTESIANO com uma operação SELECT subsequente na árvore, gerando umaoperaçãojoinse a condição representa uma condição de junção. 5. Usando as regras 3,4, 34 7 e 11, relativas à cascata de PROJECT e à comutação de PROJECT com outras operações, quebra e transfere as listas de atributos de projeção para baixo na árvore, o mais longe possível, por meio da criação de novas operações PROJECT conforme necessário. 6. Identifica subárvores que representam grupos de operações que podem ser executadas por um único algoritmo. RESUMO: Leis Algébricas Li Leis algébricas: lébi melhorar o plano de consulta lógico As mais comuns utilizadas por otimizadores SELEÇÃO o mais cedo possível (mais baixo na árvore) Composta (AND): dividir e processar cada condição separadamente na árvore PROJEÇÃO o mais cedo possível Novas podem ser adicionadas ELIMINAR DUPLICATAS: remover algumas vezes ou moverparaoutraposição outra posição naárvore SELEÇÃO + PROD.CARTESIANO= EQUIJOIN algumas vezes será mais eficiente RELEMBRANDO Consulta SQL parser = parse tree plano de consulta lógico + leis algébricas = plano de consulta lógico melhorado plano de consulta físico Plano de consulta físico Operações a serem realizadas BANCO DE Ordem das operações DADOS Algoritmo para processar cada passo AVANÇADOS Modos de recuperar dados armazenados Modo de passar dados de uma operação para outra Plano lógico físico: DCC 011 avaliar - profa Mirella o M. custo Moro de cada opção 33 Como tudo isso se releciona ao TP2? 34 Processamento de Consultas no TP2 Em álgebra relacional Empregado Departamento Departamento Empregado por quê?! Bancos de Dados Avançados Em SQL FROM Empregado, Departamento WHERE dno=dnum FROM Empregado JOIN Departamento ON dno=dnum FROM Empregado WHERE dno IN (SELECT dnum FROM Departamento) etc Processamento de Consultas no TP2 Para avaliar o desempenho das consultas O banco de dados deverá ser carregado com um volume de dados que permita comparar o desempenho das diversas opções para as consultas SQL Para isso poderão ser usados dados reais obtidos de aplicações similares ou geradores de dados sintéticos Spawner Datanamic for mysql GenerateData O volume de dados carregado no banco de dados seja suficiente para que o tempo de execução de cada consulta possa ser devidamente computado cold start : cada consulta deverá ser executada pelo menos cinco vezes, reportando se o tempo médio das cinco execuções 35 36
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 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 maisMATA60 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 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 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 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 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 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 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 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 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 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 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 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 maisAdministraçã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 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 maisOtimizaçã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 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 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 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 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 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 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 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 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 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 maisHá 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 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 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 maisBanco de Dados Notas de Aula Consultas em SQL Prof. Dr. Daniel A. Furtado
Banco de Dados Notas de Aula Consultas em SQL Prof. Dr. Daniel A. Furtado Forma geral: SELECT FROM [WHERE ] [GROUP BY ]
Leia maisBases de Dados. Algoritmos. Custo de operação. Algoritmos de selecção. Algoritmo de ordenação. Algoritmos de junção.
Bases de Dados Algoritmos Custo de operação Algoritmos de selecção Algoritmo de ordenação Algoritmos de junção Outras operações Materialização e pipelining 2 1 Bases de Dados Algoritmos de selecção Algoritmos
Leia maisProcessamento 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 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 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 maisSumário. Índices Ordenados: Nível Único. Índices Primários. Bancos de Dados Avançados Índices. Índices: Ordenados em nível único Multiníveis
Sumário Bancos de Dados Avançados Índices DCC030 - TCC: Bancos de Dados Avançados (Ciência Computação) DCC049 - TSI: Bancos de Dados Avançados (Sistemas Informação) DCC842 - Bancos de Dados (Pós-Graduaçã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 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 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 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 maisUso de Índices na Otimização e Processamento de Consultas. Otimização e Processamento de Consultas. Otimização e Processamento de Consultas
usuário processador de E/S gerador de respostas Uso de Índices na Otimização e Processamento de Consultas Profa. Dra. Cristina Dutra de Aguiar Ciferri analisador controle de autorização verificador de
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 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 maisBanco de Dados I Módulo VI: Processamento e Otimização de Consultas. (Aulas 1-5) Clodis Boscarioli
Banco de Dados I 2007 Módulo VI: Processamento e Otimização de Consultas (Aulas 1-5) Clodis Boscarioli Agenda: O Processador de Consultas: Conceitos Principais. Algoritmos usados para implementar operações
Leia maisBanco de Dados. Álgebra Relacional. João Eduardo Ferreira Osvaldo Kotaro Takai Marcelo Finger
Banco de Dados Álgebra Relacional João Eduardo Ferreira Osvaldo Kotaro Takai Marcelo Finger Tópicos Apresentação Seleção Projeção Renomeio de Atributos União, Subtração e operações de conjuntos Junção:
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 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 maisBanco de Dados. Álgebra Relacional. João Eduardo Ferreira Osvaldo Kotaro Takai
Banco de Dados Álgebra Relacional João Eduardo Ferreira Osvaldo Kotaro Takai Introdução A Álgebra Relacional contempla um conjunto de operações que permitem especificar consultas sob relações. As operaçõ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 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 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 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 maisOtimizaçã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Á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 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 maisBases de Dados. Álgebra Relacional II Junções, agregações, vistas. P. Serendero,
Bases de Dados Álgebra Relacional II Junções, agregações, vistas P. Serendero, 2011-13 1 JUNÇÕES OU JOINS em SQL - R S A condição do JOIN é especificada na claúsula ON ou USING,, ou implicitamente
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 maisde 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 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 maisBases 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 maisProcessamento de Consultas
Processamento de Consultas Banco de Dados: Teoria e Prática André Santanchè e Luiz Celso Gomes Jr Instituto de Computação UNICAMP Setembro 2013 Picture by http://www.flickr.com/photos/fdecomite/1457493536/
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 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 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 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 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 maist n e z m r A o o d ç a a d B e L s i u e f F s L e
o t n e m a n e z a m r A o I ã I ç a D x B e d n I e s o d a d de te i e L e p eli F s i u L or: s s e f o r P Contato luisleite@recife.ifpe.edu.br professorluisleite.wordpress.com Como é possível quando
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 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 mais4. Projecto de Bases de Dados
SI MIEIG 7-8 1 4. Projecto de Bases de Dados 4.1 Introdução aos SGBD - Sistemas de Gestão de Bases de Dados 4.2 Sistemas Relacionais e Linguagem SQL 4.3 Normalização Funcional de Dados para Concepção de
Leia maisIntroduçã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 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 mais7 de março de 2013 São Carlos, SP - Brasil. Esta apresentação mostra os principais conceitos da arquitetura de um servidor de SGBD Relacional.
Arquitetura Geral de um Sistema de Gerenciamento de Bases de Dados Relacional Caetano Traina Jr. Versão Beamer: Mônica Ribeiro Porto Ferreira Grupo de Bases de Dados e Imagens Instituto de Ciências Matemáticas
Leia maisOrdenação e Busca em Arquivos
Ordenação e Busca em Arquivos Cristina D. A. Ciferri Thiago A. S. Pardo Leandro C. Cintra M.C.F. de Oliveira Moacir Ponti Jr. Exemplos de Busca Registros de tamanho fixo M A R I A R U A b 1 S A O b C A
Leia maisde Bases de Dados Exame 2
Ano lectivo 2009/2010 2 o semestre Administração e Optimização de Bases de Dados Exame 2 Regras O exame tem a duração de 2 horas. O exame é individual e com consulta Só poderá abandonar a sala ao fim de
Leia maisDois parâmetros essenciais t T tempo de transferência de um bloco. assume-se igual para operações de leitura e escrita
Bases de Dados Algoritmos de processamento Custo de operação Dois parâmetros essenciais t T tempo de transferência de um bloco assume-se igual para operações de leitura e escrita t S tempo de localização
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 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 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 maisSQL Consultas Básicas
SQL Consultas Básicas Consulta a dados de uma tabela select lista_atributos from tabela [where condição] Mapeamento para a álgebra relacional select a 1,..., a n from t where c π a1,..., an (σ c (t)) Exemplos
Leia maisOTIMIZAÇÃO DE CONSULTAS - MYSQL. Prof. Antonio Almeida de Barros Junior
OTIMIZAÇÃO DE CONSULTAS - MYSQL Prof. Antonio Almeida de Barros Junior Para a otimização de um SGBD precisamos identificar as consultas lentas que eventualmente são submetidas ao banco: Configurações do
Leia maisDCC011 Introdução a Banco de Dados Definição do Trabalho Final
DCC011 Introdução a Banco de Dados Definição do Trabalho Final Mirella M. Moro Departamento de Ciência da Computação Universidade Federal de Minas Gerais mirella@dcc.ufmg.br INTRODUÇÃO O objetivo deste
Leia maisBases de Dados Paralelas
Bases de Dados Paralelas Introdução Paralelismo I/O Paralelismo Interquery Paralelismo Intraquery Paralelismo Intraoperação Paralelismo Interoperaçao Concepção de Sistemas Paralelos 1 Introdução As máquinas
Leia maisSISTEMAS DE BANCO DE DADOS. Prof. Adriano Pereira Maranhão
SISTEMAS DE BANCO DE DADOS Prof. Adriano Pereira Maranhão 1 SQL Structured Query Language SQL Desenvolvida pela IBM Structured English Query Language Sequel Linguagem de consulta para o sistema R Primeiro
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 maisSISTEMAS DE BANCO DE DADOS. Prof. Adriano Pereira Maranhão
SISTEMAS DE BANCO DE DADOS Prof. Adriano Pereira Maranhão 1 Coleção de operações usadas para manipular relações Grupos de operações Operações relacionais Seleção; projeção; junção Operações de conjunto
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 maisMATA60 BANCO DE DADOS Aula 10- Indexação. Prof. Daniela Barreiro Claro
MATA60 BANCO DE DADOS Aula 10- Indexação Prof. Daniela Barreiro Claro Indexação Indexação em SQL; Vantagens e Custo dos Índices; Indexação no PostgreSQL; FORMAS - UFBA 2 de X; X=23 Indexação Sintaxe: create
Leia maisTipos de Índices. Profa. Dra. Cristina Dutra de Aguiar Ciferri
Tipos de Índices Cristina Dutra de Aguiar Ciferri Tipos de Índice Ordenados em um único nível primário agrupamento (cluster) secundário Estruturas de dados de árvores índices multiníveis árvores-b, árvores-b+
Leia maisLinguagem SQL Comando SELECT Agrupamento de Resultados
BDDAD Bases de Dados Linguagem SQL Comando SELECT de Resultados Nelson Freire (ISEP LEI-BDDAD 2015/16) 1/12 Introdução Sumário Funções de Agregação Básicas COUNT SUM MIN MAX AVG Cláusulas de GROUP BY HAVING
Leia maisAdministração e Optimização de BDs
Departamento de Engenharia Informática 2010/2011 Administração e Optimização de BDs Mini-Projecto 2 Entrega a 16 de Abril de 2011 2º semestre A resolução deve ser claramente identificada com o número de
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 maisBancos 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 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 maisEtapa III - Implementação de Operadores da Álgebra Relacional; Etapa IV - Comparação experimental de varredura sequencial x acesso aleatório
UFU/FACOM/BCC GBC053 - Gerenciamento de Banco de Dados - 2018/2 Trabalho de Implementação Prof. Ilmério Reis da Silva O trabalho semestral da disciplina em epígrafe tem como objetivo a implementação de
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 maisModelo Relacional. Josino Rodrigues
Modelo Relacional Josino Rodrigues Modelo Relacional Chave Primária Atributos PILOTO Num-cad Nome CPF Endereço 0101 João 123456 Recife Tuplas 0035 José 234567 São Paulo... 0987 Pedro 567890 Recife 2 Chave
Leia maisModelo 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 mais1ª Prova 23/10/17. Tópicos estudados (todos os assuntos até agora, 12 aulas):
Algebra Relacional Adaptado de Karine Reis Ferreira karine@dpi.inpe.br Gilberto Câmara gilberto@dpi.inpe.br Gilberto Ribeiro de Queiroz gribeiro@dpi.inpe.br 1ª Prova 23/10/17 Tópicos estudados (todos os
Leia mais