Pular para o conteúdo principal

Questão de Banco de Dados — Índices — Quadrix 2024

Banco de DadosÍndices
Código
qg347328
Banca
Quadrix
Órgão
CFP
Ano
2024
Nível
Superior
Cargo
Analista Técnico/TI/Desenvolvimento
Quanto aos conceitos de índices, às ferramentas ETL e aos sistemas gerenciadores de banco de dados (SGBDs), julgue o item seguinte.O índice bitmap, utilizado principalmente em sistemas de Data Warehousing, é mais eficiente em tabelas com baixa cardinalidade (grande quantidade de dados repetidos).
  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoC — Certo

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

Índice bitmap: eficiência e cardinalidade

Gabarito: CERTO (letra C). O índice bitmap é, de fato, mais eficiente em colunas de baixa cardinalidade, ou seja, com grande quantidade de valores repetidos — exatamente o cenário típico de tabelas de Data Warehousing, como as tabelas fato. A afirmação está correta.

O índice bitmap é uma estrutura de dados especializada em consultas analíticas. Diferentemente dos índices tradicionais (como a árvore B+), que armazenam uma entrada para cada valor distinto apontando para as linhas correspondentes, o bitmap armazena, para cada valor distinto da coluna, um vetor de bits — um bit para cada linha da tabela. Se a linha possui aquele valor, o bit é 1; caso contrário, é 0.

Essa estrutura é extremamente eficiente para operações de agregação e filtragem com múltiplas condições, pois o SGBD pode realizar operações lógicas (AND, OR, NOT) diretamente sobre os vetores de bits, o que é computacionalmente muito rápido. No entanto, essa eficiência depende crucialmente da cardinalidade da coluna: se a coluna tem poucos valores distintos (baixa cardinalidade), cada vetor de bits é longo e denso, e as operações lógicas são vantajosas. Se a coluna tem alta cardinalidade (muitos valores distintos, como um CPF), o número de vetores de bits cresce, e cada vetor fica esparso (com poucos bits 1), tornando o índice ineficiente em termos de espaço e desempenho.

No contexto de Data Warehousing, as tabelas fato são repletas de chaves estrangeiras que referenciam tabelas dimensão. Essas chaves estrangeiras, embora possam ter muitos valores únicos, frequentemente apresentam baixa cardinalidade em relação ao total de linhas da tabela fato — ou seja, muitos registros compartilham o mesmo valor de chave. É exatamente nesse cenário que o índice bitmap brilha, otimizando consultas de agregação e filtragem típicas de OLAP.

A pegadinha que a banca poderia explorar é inverter o conceito: afirmar que o bitmap é eficiente em alta cardinalidade. Mas aqui a afirmação está correta, então não há pegadinha — apenas a cobrança direta do conceito.

Critério

Índice Bitmap

Índice B+ Tree (tradicional)

Cardinalidade ideal

Baixa (poucos valores distintos, muitos repetidos)

Alta (muitos valores distintos)

Estrutura

Vetor de bits por valor distinto (1 bit por linha)

Árvore balanceada com ponteiros para linhas

Operações fortes

AND, OR, NOT sobre bits (agregações, filtros múltiplos)

Busca por igualdade, intervalo, ordenação

Uso típico

Data Warehousing, tabelas fato, consultas OLAP

Sistemas transacionais (OLTP), chaves primárias

Eficiência em escrita

Baixa (atualizações caras)

Alta (inserções/atualizações pontuais)

Espaço em baixa cardinalidade

Compacto e denso

Pode ser maior (entradas repetidas)

Espaço em alta cardinalidade

Ineficiente (muitos vetores esparsos)

Eficiente e escalável

Alternativa C — ✅ Correta ⟵ GABARITO

A afirmação está correta. O índice bitmap é projetado para colunas de baixa cardinalidade, onde há grande quantidade de dados repetidos. Isso é exatamente o que ocorre em tabelas de Data Warehousing, especialmente nas tabelas fato, que possuem muitas chaves estrangeiras com valores repetidos. A eficiência vem do fato de que, com poucos valores distintos, os vetores de bits são densos e as operações lógicas (AND, OR, NOT) sobre eles são extremamente rápidas, otimizando consultas analíticas.

Gabarito: letra C

Link permanente: /questoes/qg347328