Um experiente engenheiro de dados foi contratado para efe...
Funcionario id_funcionario nome cargo id_departamento salario
CREATE INDEX idx_func_nome ON Funcionario (nome)
Qual é o objetivo do engenheiro de dados ao implementar esse comando?
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Gabarito: B
Para compreender a resposta correta desta questão, é importante entender o conceito de índices em bancos de dados. Um índice é uma estrutura que melhora a velocidade de operações de leitura em uma tabela, como consultas que utilizam a cláusula WHERE. Isso é conseguido através da criação de uma espécie de "mapa" que aponta para a localização dos dados na tabela, permitindo que o sistema de banco de dados encontre registros mais rapidamente sem ter que realizar uma varredura completa na tabela (full table scan).
Na questão apresentada, o comando CREATE INDEX idx_func_nome ON Funcionario (nome) cria um índice para a coluna nome da tabela Funcionario. Assim, o objetivo do engenheiro de dados ao implementar esse índice é melhorar o desempenho das consultas que filtram resultados com base na coluna 'nome'. Essa melhoria no desempenho ocorre porque o banco de dados pode utilizar o índice para acessar diretamente os registros que atendem a um determinado critério relacionado ao nome do funcionário, em vez de varrer toda a tabela.
Os índices são particularmente úteis em tabelas grandes, onde as operações de busca podem se tornar lentas devido ao grande volume de dados. No entanto, é importante notar que índices adicionam um custo de manutenção em operações de escrita (INSERT, UPDATE, DELETE), pois sempre que um dado é alterado, o índice também precisa ser atualizado. Portanto, eles são uma ferramenta poderosa, mas devem ser usados de forma estratégica.
A alternativa B é a correta porque está diretamente relacionada com o propósito principal de um índice, que é aumentar a eficiência na recuperação de dados baseada em uma coluna específica usada com frequência em consultas. As demais alternativas não representam o objetivo de criação de um índice: a alternativa A é incorreta porque a inserção de dados tende a ser mais lenta com índices; C confunde índices com a restrição de chave primária (PRIMARY KEY); D está errada porque a validação de dados é função de constraints, não de índices; e E é imprecisa, pois um índice na coluna 'nome' não afeta operações de agregação que utilizam 'id_departamento'.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
GABARITO: LETRA B
geralmente aplicamos o index no atributo que sempre vai estar com uma clausula selecionada no where;
Gabarito B
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo