Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Consultas em bancos de dados relacionais Professor Tiago Brasileiro Araújo 1 1 Prof. Tiago Brasileiro Araújo Por que fazer consultas? Recuperar informações; Obter resultados; Tornar o banco de dados útil. 2 2 Prof. Tiago Brasileiro Araújo Relevância Dentre tais atividades, um SGBD necessita idealizar uma estratégia ou um plano de execução eficiente para recuperar os resultados de uma consulta com base nos arquivos de banco de dados. A eficiência de uma determinada estratégia está ligada ao número de acessos necessários ao disco para a realização de uma consulta. O processo de escolha de uma estratégia de execução para o processamento de uma consulta é nomeado otimização de consulta. 3 Processamento de consultas Técnica utilizada para processar, otimizar e executar consultas de alto nível Objetivo: produzir uma estratégia de consulta para recuperar o resultado da mesma 4 Processamento de consultas 5 Consulta ótima? Encontrar a estratégia de execução ótima é difícil, já que: requer muito tempo; pode requerer informações, como estrutura de implementação e conteúdo dos arquivos, que não estejam disponíveis no catálogo do banco de dados; os SGBDs possuem distintos algoritmos de acesso ao banco de dados para implementar as operações necessárias. 6 Consulta SELECT nome_aluno FROM tb_alunos WHERE media > 8 and cod_disc = ‘SIBDIIA’ Linguagem de alto nível! 7 Árvore de decisão No processo de tradução de uma consulta SQL para a álgebra relacional, é gerada uma árvore de consulta algébrica (canônica) equivalente à consulta. 8 Select, from, where ... SELECT * FROM tb_pessoa SELECT firstname FROM tb_pessoa SELECT firstname, email FROM tb_pessoa SELECT firstname FROM tb_pessoa WHERE lastname = “Doe” 9 Considerações importantes Diversos atributos de um esquema podem ser eliminados Atributos que não podem ser eliminados aqueles que aparecem no resultado de uma consulta aqueles que são necessários para processar operações subsequentes 10 Considerações importantes Aplicar primeiro as operações que reduzem o tamanho dos resultados intermediários operações de seleção (SELECT) reduzem o número de tuplas operações de projeção (WHERE) reduzem o número de atributos 11
Compartilhar