SóProvas


ID
1682812
Banca
CESPE / CEBRASPE
Órgão
STJ
Ano
2015
Provas
Disciplina
Banco de Dados
Assuntos

No que se refere a fundamentos de banco de dados, julgue o item a seguir.

O uso de índices pode aumentar o desempenho na operação de bancos de dados. No entanto, caso um arquivo com índice sequencial seja utilizado, o desempenho do banco de dados é reduzido à medida que o tamanho desse arquivo aumenta.


Alternativas
Comentários
  • Sequencial

    – Os dados são lidos e escritos em sequencia (stream). Não é possível ler ou escrever em um ponto arbitrário

    – O processo de leitura e gravação é feito de forma contínua, um registro após o outro

    – Para gravar um novo registro é necessário percorrer todo o arquivo, passando por todos os registros, até localizar a primeira posição vazia após o último registro

    – Implica na capacidade de acessar a N-ésima entrada numa lista de números em tempo gradualmente crescente

    – À medida que o arquivo aumenta de tamanho, aumenta também o tempo de acesso ao mesmo


  • Segundo a pagina:  https://pt.stackoverflow.com

    As desvantagens de i

    Piora a performance em escritas de dados no banco de dados

    Toda vez que uma informação chave for modificada (inserida, alterada, deletada) obrigará a escrita no índice. E o índice pode ser interpretado como uma tabela adicional escondida no banco de dados. E se a informação modificada está presente em várias chaves (vários índices), todos eles deverão ser alterados (em inclusão e remoção, todos sempre são afetados, ainda que seja possível otimizar para a remoção, sob pena de encarecer o custo de leitura). A alteração do índice implica em acesso de leitura e escrita nele, apesar de ser uma operação eficiente se comparada com o acesso direto à tabela, não deixa de ter um custo adicional.

    Aumenta o consumo de espaço para armazenamento do banco de dados (memória e disco)

    É claro que esta tabela adicional de chaves de índice vai ocupar um espaço extra também. Costuma ser um espaço menor que a tabela de dados original mas existe um custo extra. Se houver muitos índices é possível que o espaço seja até maior que a tabela original. Com muito índice fica difícil colocar tudo na memória.

    Aumenta a necessidade de manutenção interna no banco de dados

    Isto é um pouco dependente da implementação mas é comum que páginas de chaves sejam abandonadas conforme elas vão sendo alteradas. Além disto o DBA pode ter mais elementos com que se preocupar.

    Pode diminuir a performance de consultas

    Não há garantias que todas as consultas serão mais rápidas com o uso de índices. Como há uma operação adicional para acesso ao índice antes do acesso ao dados principal é possível que a soma do tempo gasto nas operações seja maior que o acesso só ao dado principal mesmo que o acesso no principal sem índice seja teoricamente menos eficiente. Isto é mais comum quando o volume de dados é pequeno mas isto também é verdade em casos de consultas complexas ou onde uma grande porção dos dados da tabela serão retornados em qualquer ordem.

    É virtualmente impossível criar índices para qualquer chave a não ser em tabelas extremamente simples. Então é ilusão achar que índices resolverão todos os problemas. E mesmo que fosse possível, eles causariam mais mal do que bem. Você só deve criar índices quando eles realmente são necessários e fique provado que eles estão ajudando.

    É bom ressaltar que existem diversos tipos de índices. O mais comum é a árvore binária nas suas diversas variações, cada uma com uma situação mais adequada. Mas outros índices podem ser bem úteis também, como o hash onde a chave é determinada por uma fórmula e o acesso é feito direto por um índice posicional (mais comum em memória) ou índices invertidos muito utilizados para indexar textos onde as palavras contidas no texto são usadas como chaves e não dados inteiros como é comum em outros índices.

    https://pt.stackoverflow.com/questions/35088/quais-as-vantagens-e-desvantagens-do-uso-de-%C3%ADndices-em-base-de-dados

     

     

  • Quando o arquivo de dados que armazena o índice vai aumentando, algumas coisas acontecem que podem reduzir o benefício de se utilizar o índice, devido a uma perda de performance:

    1) Teremos mais chaves no índice e, portanto, a busca irá demorar mais para encontrar a chave correta

    2) O maior tamanho do arquivo irá representar um maior impacto nas operações de inserção e remoção, já que toda vez que adicionarmos novos registros ou modificarmos aqueles existentes, precisamos reorganizar o índice para conter os novos valores das chaves (os atributos que estão sendo indexados).

  • Gabarito: Certo

    Um índice sequencial de acesso consiste em efetuar a leitura dos registros, um após o outro, comparando o ARGUMENTO DE PESQUISA, com o valor do campo CHAVE (primária ou secundária) no registro corrente, até encontrar os registros desejados ou o final do arquivo. 

    – Para gravar um novo registro é necessário percorrer todo o arquivo, passando por todos os registros, até localizar a primeira posição vazia após o último registro ( pegando o excelente comentário do colega para um melhor entendimento)

    Exemplo: índice1, índice 2, índice 3, índice 4, índice 5.

    para você acessar o índice 5, tem que passar por todos esses índices, e caso queira adicionar um novo índice, não poderá implementar ele no meio, terá que ser no final.