Les statistiques sur les index dans SQL Server | MS SQL Server articles | MS SQL Serveur | brasserie-lechantilly.com ..


Liens sponsorisés

Les statistiques sur les indices de SQL Server

Article écrit par Vincenzo Gaglio
Page 1 sur 3

Les statistiques index SQL Server contiennent des informations sur la distribution des valeurs clés des tables dans une base de données, où la distribution est le nombre de lignes associées à chaque valeur de clé. SQL Server utilise cette information pour déterminer quel type de plan d'exécution (plan d'exécution) à utiliser dans le traitement d'une requête. Lorsque vous effectuez insérer, modifier ou supprimer des lignes dans une table de statistiques sur cette table ne sont pas mis à jour automatiquement et sont donc moins précis.

SQL Server peut mettre à jour les statistiques d'index de deux manières: en scannant toutes les lignes dans une table, ou par balayage sur un pourcentage de lignes dans une table. De toute évidence, il est facile de voir comment coûteux en calcul pour balayer toutes les lignes, par exemple, des tables contenant plusieurs millions de lignes.

(L'article continue en bas ...)

C'est important de comprendre quand les statistiques sont mises à jour. Il ya un paramètre appelé base de données AUTO_UPDATE_STATISTICS Si vrai provoque la mise à jour automatique des statistiques

Si la mise à jour automatique des statistiques est activée lorsque SQL Server détermine le faire sur la base de la façon dont les mêmes statistiques en date. Le SGBD identifie plus des statistiques basées sur le nombre d'entrées, de modification et de suppression qui sont effectuées sur une table depuis la dernière fois que les statistiques ont été mises à jour et les recréer basé sur un seuil.

Le seuil est relatif au nombre de lignes dans une table et une table avec de nombreuses lignes de la mise à jour des statistiques survient après un nombre significatif d'opérations et dans ce cas pour une certaine période, avant d'atteindre le seuil, les statistiques ne sont pas mis à jour automatiquement.

Le problème avec cette situation est que ne pas avoir les statistiques actuelles de SQL Server peut ne pas connaître toutes les différentes valeurs possibles qui peuvent être présents dans une colonne indexée et ensuite le moteur de base pourrait choisir un plan d'exécution n'est pas optimale.

C'est-à-dire, toujours dans le cas d'une table avec des millions de lignes, que si un jour ces être placés dans des centaines de milliers de lignes, pour une période peut être pas de statistiques associées à ces nouvelles lignes, et SQL Server peut ne pas être capable d'identifier un plan d'exécution efficace lorsque les requêtes sont faites de lignes contenant les valeurs clés associés à ces nouvelles lignes insérées. Bien sûr, cela pourrait avoir un impact majeur sur les performances d'une application hypothétique qui opère sur ces données.

Dans la même catégorie ...
E-Learning
Cours de MS Access Cours de MS Access
Apprenez à créer et gérer des bases de données facilement et rapidement. -10% Jusqu'au 01/06/2012.
Cours MySQL Cours MySQL
Gestion des bases de données open-source. Remise de -15% jusqu'au 01/06/2012.
Base de données de cours et SQL Base de données de cours et SQL
Créer et gérer des bases de données relationnelles. Remise de -15% jusqu'au 01/06/2012.
Liens sponsorisés