Pular para o conteúdo principal

Questão de Banco de Dados — Índices — CESPE / CEBRASPE 2025

Banco de DadosÍndices
Código
ce195207
Banca
CESPE / CEBRASPE
Órgão
BANRISUL
Ano
2025
Nível
Superior
Cargo
Técnico em Tecnologia da Informação II - Desenvolvimento de Software
Suponha a existência de uma tabela de um banco de dados relacional no qual esteja armazenado um volume muito grande de dados, em muitas linhas de registros. Nessa situação, considerada a otimização do acesso aos dados dessa tabela,
  1. Aa criação de um novo índice pode piorar o desempenho das operações feitas na tabela.
  2. Ba criação de índices não seria a solução adequada, dado o tamanho da tabela.
  3. Crecomenda-se a criação de vários índices, já que o volume de dados é muito grande.
  4. Dum novo índice sempre vai implicar ganho de desempenho para as operações feitas na tabela.
  5. Ea criação de um índice para cada coluna da tabela seria uma boa estratégia.
Revelar gabarito e comentário

GabaritoA — a criação de um novo índice pode piorar o desempenho das operações feitas na tabela.

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”.

Índices em banco de dados relacionais

Gabarito: letra A. A criação de um novo índice pode, sim, piorar o desempenho de operações de escrita (INSERT, UPDATE, DELETE) na tabela, pois cada operação exige a manutenção da estrutura do índice, gerando overhead adicional. É o equilíbrio clássico entre aceleração de leitura (consultas) e custo de escrita.

A banca testa o entendimento do trade-off: índices são estruturas auxiliares que aceleram a localização de registros, mas impõem custo a cada modificação na tabela base. É um conceito fundamental para otimização em bancos de dados relacionais.

Aspecto

Índices em Banco de Dados

Trade-off Leitura vs. Escrita

Recomendação Prática

Benefício principal

Aceleram consultas (SELECT)

Ganho em operações de leitura

Criar índices para colunas usadas em filtros/JOINs frequentes

Custo principal

Manutenção em operações de escrita (INSERT/UPDATE/DELETE)

Piora no desempenho de escrita

Evitar índices em tabelas com muitas atualizações

Impacto do volume de dados

Mais útil quanto maior a tabela (evita full scan)

Índices são mais necessários em grandes volumes

Não criar índices em excesso só pelo tamanho da tabela

Efeito de múltiplos índices

Pode degradar desempenho geral

Cada índice adicional aumenta overhead de escrita

Criar apenas índices necessários para consultas específicas

Seletividade do índice

Índices com baixa seletividade podem ser ineficazes

Índice mal escolhido não acelera nem leitura

Priorizar colunas com alta cardinalidade (valores distintos)

Alternativa A — ✅ Correta ⟵ GABARITO

A afirmação reconhece que índices não trazem apenas benefícios: em tabelas com muitas operações de atualização, um novo índice pode tornar essas operações mais lentas. Isso ocorre porque o índice precisa ser atualizado (inserção, remoção ou alteração de entradas) a cada modificação dos dados. Consequentemente, o desempenho geral pode piorar. Essa visão é consistente com o princípio de que índices são recomendados quando as consultas são frequentes e as atualizações são relativamente raras.

Alternativa B — ❌ Incorreta

Afirma que a criação de índices não seria adequada dado o tamanho da tabela. Na verdade, quanto maior a tabela, mais úteis os índices se tornam para evitar varreduras completas (full scan). A recomendação de índices para grandes volumes é padrão; o que deve ser evitado é o excesso injustificado de índices.

Alternativa C — ❌ Incorreta

Recomenda a criação de vários índices simplesmente porque o volume é grande. Isso é impreciso: a decisão deve considerar o padrão de consultas e o custo de manutenção. Múltiplos índices podem piorar drasticamente o desempenho de operações de atualização e consumir espaço adicional em disco.

Alternativa D — ❌ Incorreta

Utiliza a palavra "sempre", que torna a afirmação falsa em cenários reais. Um índice acelera consultas, mas não garante ganho em todas as operações — especialmente as de escrita. Além disso, mesmo em consultas, um índice mal escolhido (por exemplo, com baixa seletividade) pode não trazer benefício significativo.

Alternativa E — ❌ Incorreta

Criar um índice para cada coluna é uma estratégia excessiva e geralmente prejudicial. A maioria dos bancos de dados teria seu desempenho de escrita severamente impactado, e o armazenamento cresceria desnecessariamente. Índices devem ser seletivos e baseados nos padrões de consulta (quais colunas aparecem em cláusulas WHERE, JOIN, ORDER BY, etc.).

NÃO CAIA NESSA!

A banca usa a palavra "sempre" na alternativa D para tentar fazer o candidato marcar uma afirmação aparentemente benéfica. O estudante menos experiente pode achar que índice é sempre benéfico. Lembre-se: todo índice acelera leitura, mas pode atrapalhar escrita. É o trade-off que decide a resposta.

PEGA ESSA DICA!

Para questões de otimização com índices, lembre-se do acrônimo "Leitura rápida × Escrita lenta". Pergunte-se: a tabela tem mais consultas ou mais atualizações? Índices são aliados das consultas, inimigos das atualizações. Na prova, desconfie de palavras absolutas como "sempre", "nunca", "todo".

Gabarito: letra A — único item que reconhece o possível impacto negativo de um novo índice.

Link permanente: /questoes/ce195207