Pular para o conteúdo principal

Questão de Banco de Dados — Índices — FGV 2025

Banco de DadosÍndices
Código
fg106571
Banca
FGV
Órgão
CGE-SP
Ano
2025
Nível
Superior
Cargo
Auditor Estadual de Controle - Tecnologia da Informação - tarde
Um DBA está avaliando o desempenho de uma consulta que frequentemente busca dados na tabela Auditoria (com 500 milhões de registros) usando a coluna DataHora_Acesso na cláusula WHERE. O DBA decide criar um índice clusterizado nessa coluna (após remover o índice existente na chave primária autoincremento, se necessário).Assinale a opção que apresenta a principal implicação técnica de criar um índice clusterizado na coluna DataHora_Acesso de uma tabela tão grande no MS SQL Server, e a consequência direta para a ordenação física dos dados.
  1. APermite que a tabela tenha um índice clusterizado e um índice não clusterizado na mesma coluna.
  2. BO índice clusterizado não afeta a ordenação física dos dados, mas armazena a tabela em um heap (estrutura desordenada) contribuindo para a desnormalização da base de dados.
  3. CO índice clusterizado é apenas um bookmark lógico, e a ordenação física é sempre determinada pela chave primária autoincremento original.
  4. DO MS SQL Server permite que uma tabela tenha múltiplos índices clusterizados, aumentando a velocidade de todas as consultas.
  5. EO índice clusterizado define a ordem física de armazenamento das linhas de dados na tabela, o que acelera as consultas por intervalo nessa coluna, mas pode degradar o desempenho de INSERTs/UPDATEs em outras colunas.
Revelar gabarito e comentário

GabaritoE — O índice clusterizado define a ordem física de armazenamento das linhas de dados na tabela, o que acelera as consultas por intervalo nessa coluna, mas pode degradar o desempenho de INSERTs/UPDATEs em outras colunas.

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 clusterizados no MS SQL Server

Gabarito: letra E. A principal implicação de criar um índice clusterizado em uma coluna é que ele define a ordenação física das linhas na tabela, acelerando consultas por intervalo nessa coluna, mas podendo degradar o desempenho de operações de INSERT/UPDATE devido à necessidade de manter a ordem física (reorganização de páginas). Essa definição é suportada pelos conceitos fundamentais de índices em bancos de dados: um índice clusterizado determina a sequência física de armazenamento, ao contrário de um índice não clusterizado, que apenas armazena ponteiros.

A banca cobra o conhecimento das características dos índices clusterizados, especialmente no contexto do SQL Server, onde apenas um índice clusterizado pode existir por tabela.

Alternativa A — ❌ Incorreta

Afirma que a criação de um índice clusterizado permite ter um índice clusterizado e um não clusterizado na mesma coluna. Embora tecnicamente seja possível ter índices não clusterizados sobre a mesma coluna do clusterizado, essa não é a principal implicação técnica destacada pela questão. Além disso, a alternativa não menciona o impacto na ordenação física e no desempenho, que são os pontos centrais.

Alternativa B — ❌ Incorreta

Inverte o conceito: um índice clusterizado afeta sim a ordenação física dos dados, organizando as linhas de acordo com a chave do índice. A tabela sem índice clusterizado é armazenada em uma heap (estrutura desordenada), exatamente o oposto do que a alternativa afirma. Logo, a afirmação está errada.

Alternativa C — ❌ Incorreta

O índice clusterizado não é apenas um marcador lógico (bookmark); ele reorganiza fisicamente os dados. A ordenação física não é determinada pela chave primária original, a menos que a chave primária seja o índice clusterizado. Como o DBA removeu o índice existente, o novo índice clusterizado passará a definir a ordem.

Alternativa D — ❌ Incorreta

O SQL Server não permite múltiplos índices clusterizados em uma mesma tabela. Existe, no máximo, um índice clusterizado por tabela, pois ele determina a estrutura física de armazenamento.

Alternativa E — ✅ Correta ⟵ GABARITO

Descreve corretamente a principal implicação: o índice clusterizado define a ordem física de armazenamento das linhas, acelerando consultas por intervalo (range scan) na coluna indexada. Em contrapartida, operações de INSERT e UPDATE que alteram a chave do índice podem causar page splits e reorganização, degradando o desempenho. Esse trade-off é clássico em bancos de dados relacionais.

PEGA ESSA DICA!

Lembre-se: apenas um índice clusterizado por tabela; ele reorganiza fisicamente os dados; acelera leituras sequenciais e consultas por intervalo; pode piorar escritas se a chave sofrer muitas alterações. Em contraste, índices não clusterizados não alteram a ordenação física e geram uma estrutura separada de ponteiros.

Gabarito: letra E

Link permanente: /questoes/fg106571