Quelles sont les différences entre un index clusterisé et un index non clusterisé?
Réponses
Trop de publicités?Index Cluster
- Seulement un par table
- Plus rapide à lire que non en cluster comme les données sont stockées physiquement dans l'ordre d'index
Non Clustered Index
- Peut être utilisé plusieurs fois par table
- Plus rapide pour insérer et mettre à jour les opérations qu'un index cluster
Les deux types d'index pour améliorer les performances lors de la sélection de données avec des champs de l'index, mais va ralentir la mise à jour et les opérations d'insertion.
En raison de la faible insertion et mise à jour des index cluster doit être défini sur un champ qui est normalement différentiels ie Id ou Timestamp.
SQL Server est normalement l'utilisation d'un index si sa sélectivité est au-dessus de 95%.
Les index en cluster physiquement afin que les données sur le disque. Cela signifie pas de données supplémentaires sont nécessaires pour l'index, mais il ne peut être qu'un index cluster (évidemment). L'accès aux données à l'aide d'un index cluster est la plus rapide.
Tous les autres index non-cluster. Un index non-cluster a un double des données de toutes les colonnes indexées gardé commandés avec des pointeurs vers les lignes de données (des pointeurs de l'index cluster si il y en a un). Cela signifie que l'accès aux données par l'intermédiaire d'un index non-cluster doit passer par une couche supplémentaire d'indirection. Toutefois, si vous sélectionnez uniquement les données qui sont disponibles dans les colonnes indexées, vous pouvez récupérer les données directement à partir de la copie de données de l'index (c'est pourquoi il est une bonne idée de SÉLECTIONNER uniquement les colonnes dont vous avez besoin et de ne pas utiliser *)
Les index en cluster sont stockées physiquement sur la table. Cela signifie qu'ils sont les plus rapide et vous ne pouvez avoir qu'un seul index cluster par table.
Les index Non cluster sont stockés séparément, et vous pouvez en avoir autant que vous le souhaitez.
La meilleure option est de placer votre index cluster sur les plus utilisées colonne unique, généralement le PK. Vous devriez toujours avoir une bien choisis index cluster dans vos tables, à moins d'une très convaincante--ne peux pas penser à une seule, mais bon, c'est peut-être hors de là, pour ne pas le faire.
Index clusterisé: - 1. Il ne peut y avoir qu'un seul index clusterisé pour une table 2. habituellement fait sur la clé primaire 3. Les nœuds feuilles d'un index clusterisé contiennent les pages de données.
Index non clusterisé 1. Il ne peut y avoir que 249 index non clusterisés pour une table 2.usuellement faits sur n'importe quelle clé 3.Le nœud feuille d'un index non clusterisé ne comprend pas les pages de données. Au lieu de cela, les nœuds feuilles contiennent des lignes d'index