índice (idx)

Definição - O que significa Índice (IDX)?

Em sistemas de banco de dados, um índice (IDX) é uma estrutura de dados definida em colunas em uma tabela de banco de dados para acelerar significativamente as operações de recuperação de dados. Um índice é uma pequena cópia de uma tabela de banco de dados classificada por valores-chave. Sem um índice, linguagens de consulta como SQL podem ter que varrer a tabela inteira de cima para baixo para escolher as linhas relevantes.

Definirtec explica Índice (IDX)

Um índice em uma tabela de banco de dados deve ser criado com cuidado, pois os índices consomem espaço e são armazenados no banco de dados. Um índice também pode fazer com que as operações de gravação demorem mais, pois o índice deve ser atualizado quando a tabela subjacente for atualizada.

As diferentes estruturas de dados usadas para criar índices são árvores B +, árvores balanceadas e hashes. Usando essas estruturas de dados, uma varredura em toda a tabela do banco de dados é relativamente fácil.

Os índices também podem ser criados em funções ou expressões. Um índice exclusivo evita entradas duplicadas no índice e na tabela relacionada, agindo assim como uma restrição. A ordem das colunas também é um aspecto importante da indexação. A primeira coluna indexada sempre tem uma prioridade; identificadores de linha são recuperados com base nas primeiras colunas indexadas. Em um cenário normal, os índices não retornam um valor, mas apenas localizam registros.

Geralmente, existem dois tipos de arquitetura de índice:

  • Índices agrupados: os índices agrupados armazenam dados de linha em ordem. Apenas um único índice clusterizado pode ser criado em uma tabela de banco de dados. Isso funciona de maneira eficiente apenas se os dados forem classificados em ordem crescente e decrescente ou se um limite for especificado nas colunas envolvidas na tabela. Esse arranjo sequencial de dados em discos reduz as leituras de bloco.
  • Índices não agrupados: em índices não agrupados, os dados são organizados de maneira aleatória, mas uma ordem lógica é especificada internamente pelo índice. Portanto, a ordem do índice não é a mesma que a ordem física dos dados. Uma instrução "criar índice" cria um índice não agrupado por padrão, que também cria um índice agrupado na chave primária. As chaves de índice são classificadas aqui com a folha contendo um ponteiro para a página. Os índices não agrupados funcionam bem com tabelas nas quais os dados são modificados com frequência e o índice é criado em colunas usadas em ordem pelas instruções WHERE e JOIN.

Esta definição foi escrita no contexto de sistemas de banco de dados