SóProvas


ID
2367223
Banca
FGV
Órgão
ALERJ
Ano
2017
Provas
Disciplina
Banco de Dados
Assuntos

Observe a instrução SQL a seguir, que representa uma consulta à tabela "TB_Produto" de uma instância de banco de dados Oracle 11g.

SELECT desc_prod

FROM TB_Produto

WHERE to_char(data_saida,'YYYY-MM-DD') = '2016-01-

04';

A consulta lista a descrição dos produtos que tiveram data de saída do estoque em 04 de Janeiro de 2016. A coluna que armazena a data de saída do produto não é chave primária. Visando melhorar o desempenho das consultas à coluna “data_saida”, o Administrador de Banco de Dados deve criar um índice do tipo:

Alternativas
Comentários
  • Os índices são subdivididos em 4 grupos:

     

    B-tree: Alta cardinalidade, também conhecidos como “normais”, são muito utilizados em ambientes OLTP.

     

    Bitmap: Baixa cardinalidade e ambientes onde não há alta concorrência de gravações, são muito utilizados em ambientes OLAP.

     

    Function Based:  Deve ser criado quando for necessário usar função(es) na(s) coluna(s) do(s) filtro(s).

     

    Application Domain: Índices especializados para otimizar consultas mais complexas.

  • O gabarito é a letra B.

     

    O índice será do tipo Function-Based porque foi aplicada a função to_char na coluna data_saida. 

  • Na execução da função to_char( ) na coluna data_saida indexada na cláusula where desta consulta, o índice não seria usado. Os índice Function-Based surgiram para solucionar esse problema. Em vez de indexar uma coluna, você indexa a função dessa coluna, armazenando o produto da função e não os dados da coluna original.
     

    https://oracle-base.com/articles/8i/function-based-indexes

  • GABARITO: B

     

    Comentário: Um dos maiores problemas com índices é que os índices são muitas vezes suprimidos por desenvolvedores e usuários ad-hoc. Desenvolvedores que usam funções muitas vezes suprimem os índices criados pelo banco de dados. No Oracle, existe uma maneira de combater este problema.

    Os índices baseados em função permitem criar um índice baseado em uma função ou expressão. O valor da função ou expressão é especificado pela pessoa que cria o índice e é armazenado no índice. Os índices baseados em funções podem envolver várias colunas, expressões aritméticas ou ainda uma função PL/SQL ou uma chamada em C. O exemplo a seguir mostra como criar um índice baseado em função:

     

    Fonte: https://www.estrategiaconcursos.com.br/blog/prova-da-semana-comentario-da-prova-do-alerj-analista-de-ti-bd-e-bi/