Buscar

[BD 11]Consultas de Bancos de Dados Relacionais I

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

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais