SóProvas


ID
2094946
Banca
FGV
Órgão
COMPESA
Ano
2016
Provas
Disciplina
Banco de Dados
Assuntos

Os algoritmos de otimização utilizados para consultas dos bancos de dados fazem uma grande diferença no desempenho de um sistema.
Um dos fatores mais importantes na escolha dos planos de execução de consultas SQL baseia-se

Alternativas
Comentários
  • Resposta correta: Letra C

    a) Errada - A quantidade de memória disponível é desejável para ter um bom desempenho, mas não é o "um dos mais importante".
    b) Errada - A velocidade do dispositivo de armazenamento pode ser um avião, mas também não é o "um dos mais importante".
    c) Correta - Essa aqui sim é primordial, é necessária saber quais são as tabelas que são mais instânciadas na memória, e então sim, dar o tratamento adequado, que pode ser uma otimização, uma necessidade de memória, de aramzenamento em disco, tudo vai depender do que vai aparecer na estatística sobre a tabela que está sendo consultada. Pelo menos foi assim que interpretei.
    d) Errada - Embora, eu particulamente acredite que uma consulta bem constuída e modelada trará muito ganho de desempenho. Acredito que essa opção foi considerada errada pela banca pelo motivo lógico de que uma consulta super, hiper, mega construída, não iria melhorar o desempenho, se fosse para uma tabela que quase não fosse usada / acessada ( estastiticamente ).
    e) Errada - O número de sessões concorrente abertas não trará, necessariamente, uma degração muito grande no sistema, isso dependerá de vários outros fatores. Acredito que por isso essa questão também foi considerada errada.

    Espero ter ajudado.

  • Os otimizadores utilizam as estatísticas da tabela, ou seja, quantidade de linhas, a distribuição dos dados no disco, etc, para traçar o plano de execução. Por isso, é importante sempre executar os atualizadores de estatísticas (analyze) para que o otimizador tenha acesso a realidade da tabela e consiga traçar o melhor plano de execução.

  • a) A quantidade de memória do sistema é algo fixo para os diversos planos de execução, pois diz respeito às características do hardware que está sendo utilizado pelo sistema de banco de dados. A escolha entre diferentes planos de execução não será influenciada pela quantidade de memória, já que esses planos serão executados sobre o mesmo hardware. ERRADA

    b) A velocidade dos dispositivos de armazenagem, assim como a quantidade de memória RAM, é algo que influencia na velocidade do processamento de consultas, mas que não faz sentido quando estamos falando de escolha entre dois planos de execução. ERRADA

    c) Correto! Para selecionar o melhor plano de execução dentre os disponíveis, o otimizador faz uso de estatísticas a respeito do banco de dado, levando em consideração métricas como a quantidade de registros nas tabelas, o tamanho médio dos registros, a seletividade... CERTA

    d) A habilidade do programador pode influenciar na performance da consulta, pois às vezes há meios diferentes de se retornar a mesma coisa ao se utilizar a linguagem SQL. No entanto, a seleção do melhor plano de execução parte das consultas já prontas , sendo uma etapa posterior ao desenvolvimento do código SQL. Assim, não faz sentido dizer que a habilidade do programador é levada em consideração nessa etapa. ERRADA

    e) O número de sessões concorrentes abertas no sistema de banco de dados é mais um dos fatores que pode influenciar na performance do banco de dados, mas não tem a ver com a escolha do plano de execução! ERRADA

    Gabarito: C