Em um banco de dados relacional, os dados são armazenados em tabelas. Essas tabelas são relacionadas entre si usando restrições como chaves estrangeiras. Um banco de dados consiste em várias tabelas. Às vezes, é difícil pesquisar os dados necessários. Portanto, os índices podem ser usados para acelerar a pesquisa. O índice usado em um banco de dados é semelhante ao índice de um livro. Um índice de um livro contém o capítulo com os números de página correspondentes. A indexação do banco de dados é semelhante a isso. Um índice tem a estrutura semelhante a uma tabela e requer algum espaço no banco de dados. Existem dois tipos de índices conhecidos como Índice em Cluster e Não em Cluster. No Índice em Cluster, a ordem lógica do índice corresponde à ordem física das linhas da tabela. No Índice não clusterizado, o índice e os dados reais estão em locais separados, portanto o índice está funcionando como um ponteiro para buscar os dados reais. o diferença chave entre índice agrupado e não clusterizado é que o índice clusterizado organiza os dados reais enquanto o índice não clusterizado aponta para os dados reais. Quando existem muitos índices e quando o armazenamento de dados é aumentado, esses índices também devem ser atualizados. Portanto, é importante criar índices de acordo com o aplicativo, pois isso pode diminuir a velocidade.
1. Visão geral e principais diferenças
2. O que é o Índice em Cluster
3. O que é Índice Não Clusterizado
4. Semelhanças entre índice agrupado e não clusterizado
5. Comparação lado a lado - índice agrupado versus não clusterizado em forma de tabela
6. Resumo
Em um índice em cluster, o índice organiza os dados reais. É semelhante a uma lista telefônica. Os números de telefone são organizados de acordo com a ordem alfabética. O número de telefone correspondente pode ser encontrado ao pesquisar um nome específico. Portanto, o índice de cluster contém os dados reais de forma organizada. Pode haver um índice por tabela.
Figura 01: Cluster versus índice não clusterizado
A chave primária é usada para especificar cada entrada na tabela. Em uma tabela de alunos, o ID do aluno pode ser usado como chave primária. Na tabela do cliente, o customer_id pode ser a chave primária. Geralmente, a chave primária pode ser considerada para criar o índice em cluster. Basicamente, no índice clusterizado, o acesso aos dados é sistemático e rápido, porque a ordem lógica do índice e a ordem da tabela estão na mesma.
Em um índice não clusterizado, o índice está apontando para os dados reais. O índice não clusterizado é a referência aos dados. Portanto, pode haver vários índices por tabela. Um exemplo para um índice não clusterizado é um livro que contém o índice principal com a legenda e o número da página correspondente ou o índice no final do livro com termos importantes em ordem alfabética com o número da página correspondente. Este índice não contém os dados reais. Mas fornece as informações necessárias para alcançar os dados reais. Portanto, o índice e os dados estão em locais separados. Portanto, foi necessário espaço de armazenamento adicional.
O índice não agrupado em cluster é usado quando há chaves diferentes da chave primária. Geralmente, o índice não clusterizado é mais lento que o índice clusterizado.
Índice agrupado vs não clusterizado | |
Um índice em cluster é um tipo de índice em que os registros da tabela são reordenados fisicamente para corresponder ao índice. | Um índice não clusterizado é um tipo de índice que contém as referências aos dados reais. |
Número de índices | |
Pode haver um índice em cluster por tabela. | Pode haver muitos índices não agrupados por tabela. |
Rapidez | |
O índice clusterizado é mais rápido que o índice não clusterizado. | O índice não clusterizado é mais lento que o índice clusterizado. |
Espaço Necessário | |
O índice clusterizado não requer um espaço adicional. | O índice não clusterizado exigiu um espaço adicional. |
Um banco de dados relacional contém muitos dados. Portanto, é importante ter um mecanismo específico para pesquisar dados rapidamente. Índices podem ser usados para realizar esta tarefa. Existem dois tipos de índices. Eles são índices agrupados e não agrupados. Este artigo discutiu a diferença entre o índice clusterizado e não clusterizado. No índice clusterizado, a ordem lógica do índice corresponde à ordem física das linhas da tabela. No índice não clusterizado, o índice e os dados reais estão em locais separados, portanto, existem indicadores para buscar os dados. A diferença entre o índice em cluster e o não clusterizado é que o índice em cluster organiza os dados reais enquanto o índice não clusterizado aponta para os dados reais.
1.CalebTheVideoMaker2. Design de banco de dados 39 - Índices (índice clusterizado, não clusterizado, composto), CalebTheVideoMaker2, 17 de janeiro de 2015. Disponível aqui
2. “O que é índice clusterizado? - Definição da Techopedia. ” Techopedia.com. Disponivel aqui