CC_LabBD_aula05

CC_LabBD_aula05 - Aula 05 – Desempenho de consultas e...

Info iconThis preview shows pages 1–10. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: Aula 05 – Desempenho de consultas e Controle de fluxo em T-SQL Profa. Sahudy sahudy@ufscar.br especificações em termos do armazenamento físico das estruturas, da alocação de registros e dos índices. obter uma estrutura de dados apropriada para armazenamento, de maneira que garanta um bom desempenho Fazer com que as aplicações sejam executadas mais rapidamente Diminuir o tempo de resposta de consultas/transações Melhorar o desempenho geral das transações Decisões de Projeto sobre Indexação ◦ Os atributos cujos valores são necessários em condições de igualdade ou de faixas (operação de seleção) ◦ atributos chave ou que participam de condições de junção (operação de junção) ◦ utilizar um índice hash em vez de um índice de árvore? Decisões de Projeto de BD ◦ necessidade de uma possível desnormalização Decisões de Consultas algumas situações típicas que indicam a necessidade de sintonização de consultas 1. Muitos otimizadores de consulta não usam índices na presença de ◦ expressões aritméticas (SALÁRIO/365 > 10,50) ◦ de comparações numéricas de atributos de diferentes tamanhos e níveis de precisão (QTDDE_A = QTDDE_B, onde QTDDE_A é INTEGER e QTDDE_B é SMALLINTEGER ), ◦ comparações com NULL (DATANASC is NULL) ◦ comparações com substrings (NOME LIKE "%M") Decisões de Consultas algumas situações típicas que indicam a necessidade de sintonização de consultas 2. Freqüentemente os índices não são usados em consultas aninhadas usando IN por exemplo, a consulta: SELECT SSN FROM EMPREGADO WHERE NRD IN (SELECT NUMEROD FROM DEPARTAMENTO WHERE GERSSN = '333445555'); pode não usar o índice para NRD em EMPREGADO , enquanto o uso de NRD = NUMEROD na cláusula WHERE com uma consulta em um único bloco pode usar o índice Decisões de Consultas algumas situações típicas que indicam a necessidade de sintonização de consultas 3. Algumas cláusulas DISTINCT podem ser redundantes e podem ser evitadas sem a modificação do resultado ◦ Um DISTINCT freqüentemente causa uma operação de ordenação e deve ser evitado sempre que possível 4. O uso desnecessário de tabelas de resultado temporário pode ser evitado por meio da aglutinação de múltiplas consultas em uma única consulta, a menos que a relação temporária seja necessária para algum processamento intermediário Decisões de Consultas algumas situações típicas que indicam a necessidade de...
View Full Document

Page1 / 29

CC_LabBD_aula05 - Aula 05 – Desempenho de consultas e...

This preview shows document pages 1 - 10. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online