2011-10-04 3 views
2

Nous avons une table de 221gb dans notre base de données SQL, principalement des données en double.Index SQL Server - Index non clusterisé sur HEAP

L'équipe a créé un index NON-CLUSTERED sur HEAP. Est-ce que cela aide vraiment en termes de performance?

Devrions-nous mettre la colonne IDENTITY dans la table, puis créer l'index CLUSTERED ET après cela, nous pouvons créer des index non clusterisés.

+1

[Vous pourriez trouver cet article intéressant] (http://technet.microsoft.com/en-gb/library/cc917672.aspx) –

Répondre

4

Cela dépend

Sur le modèle d'utilisation et la structure des données.

L'index non clusterisé couvre-t-il?

Les données de la table sont-elles en train de changer? Une table de segments avec un index non cluster (ou index) qui couvre peut surpasser un index clusterisé où l'index cluster est le seul "index" (un index clusterisé couvre évidemment toujours, mais peut ne pas être optimal pour Se souvenir d'un index clusterisé n'est pas un index (dans le sens d'une recherche basée sur une clé dans un emplacement où les données sont stockées), c'est l'ensemble de la table organisée par un choix d'index. Dans un index réel (non clusterisé), seules les clés et les colonnes incluses sont incluses dans l'index, ce qui signifie que (généralement) plus de lignes peuvent être stockées par page de base de données et moins de données lues inutilement.

La plupart des tables doivent avoir un index clusterisé, mais le choix des index non clusterisés est l'origine de la plupart de vos performances.

Questions connexes