Questão de Banco de Dados — Otimização (Tuning) em Banco de Dados — CESPE / CEBRASPE 2024
Banco de Dados›Otimização (Tuning) em Banco de Dados
Código
ce403654
Banca
CESPE / CEBRASPE
Órgão
CODEVASF
Ano
2024
Cargo
AnDR ( )
Uma empresa de comércio eletrônico está planejando um sistema de banco de dados para gerenciar suas operações, que incluem informações sobre clientes, produtos, pedidos e inventário, sendo importantes os seguintes aspectos: desempenho, escalabilidade, disponibilidade e segurança.
Considerando a situação hipotética precedente, julgue o próximos item.
Para otimizar o desempenho do banco de dados da empresa, poder-se-ia implementar um cache de consultas (caching de consultas) para armazenar os resultados de consultas pouco executadas, reduzindo-se a carga no banco de dados.
CCerto
EErrado
Revelar gabarito e comentário▾
GabaritoE — Errado
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Cache de Consultas e Otimização de Desempenho em Banco de Dados
Gabarito: Errado. A afirmação está incorreta porque o cache de consultas (query cache) é uma técnica eficaz para armazenar resultados de consultas frequentemente executadas, e não de consultas "pouco executadas". O objetivo do cache é justamente evitar reprocessar consultas que são repetidas com frequência, reduzindo a carga no banco de dados e melhorando o tempo de resposta. Armazenar resultados de consultas raras teria baixo benefício e poderia até desperdiçar recursos de memória.
O cache de consultas é um mecanismo de otimização de desempenho que armazena o resultado de uma consulta SQL em memória. Quando a mesma consulta é executada novamente, o SGBD pode retornar o resultado diretamente do cache, sem precisar reexecutar a consulta no banco de dados. Isso é extremamente útil para consultas que são executadas com alta frequência e cujos dados subjacentes não mudam com frequência, como consultas de leitura em tabelas de referência ou relatórios gerados repetidamente.
A lógica por trás do cache é simples: se uma consulta é executada muitas vezes, o custo de processá-la repetidamente é alto. Ao armazenar o resultado, o SGBD evita o custo de parsing, otimização e execução da consulta a cada chamada. No entanto, para consultas pouco executadas, o benefício é mínimo, pois o resultado seria armazenado e provavelmente descartado antes de ser reutilizado, ocupando espaço de memória que poderia ser usado para dados mais relevantes.
É importante distinguir o cache de consultas de outras técnicas de otimização, como a criação de índices, que são estruturas de dados persistentes que aceleram a busca de dados, e a otimização de consultas (tuning), que envolve a escolha de planos de execução eficientes. O cache é uma camada adicional que atua sobre o resultado final da consulta, enquanto os índices atuam na forma como os dados são acessados.
A pegadinha desta questão está na inversão do conceito: a banca troca "consultas frequentemente executadas" por "consultas pouco executadas". O candidato que conhece o conceito de cache, mas não presta atenção ao detalhe, pode marcar como correto. A palavra-chave é "pouco executadas", que torna a afirmação incorreta.
Cache de consultas: Para consultas (Frequentes, Repetitivas, Pouco executadas (raro benefício)); Benefícios (Evita reprocessamento, Reduz carga no banco, Melhora tempo de resposta); Custo (Ocupa memória, Resultado pode ser descartado antes de reutilizar)
Item — ❌ Errado
A afirmação está errada porque o cache de consultas é projetado para armazenar resultados de consultas frequentemente executadas, não de consultas pouco executadas. O objetivo é reduzir a carga no banco de dados ao evitar reprocessar consultas que são repetidas com frequência. Para consultas raras, o cache traria pouco ou nenhum benefício, pois o resultado seria armazenado e provavelmente descartado antes de ser reutilizado, desperdiçando recursos de memória.
PEGA ESSA DICA!
Em questões sobre cache de consultas, preste atenção ao adjetivo que qualifica a frequência de execução. O cache é benéfico para consultas frequentes e repetitivas, não para consultas raras. Se a questão disser "pouco executadas", "raras" ou "esporádicas", a afirmação provavelmente está incorreta.