Outils d’administration et de suivi des performances

Utilisation des statistiques pour améliorer les performances
Importance des statistiques
Mise à jour
Ajout de statistiques pour des colonnes non indexées
Commandes up date statistics
Statistiques sur les colonnes et gestion des statistiques
Création et mise à jour des statistiques sur des colonnes
Quand des statistiques supplémentaires sont-elles utiles ?
Ajout de statistiques pour une colonne avec up date statistics
Ajout de statistiques pour les colonnes mineures avec update index statistics
Ajout de statistiques pour toutes les colonnes avec update all statistics
Choix d’un nombre de pas pour les histogrammes
Inconvénients liés à un trop grand nombre de pas
Choix d’un nombre de pas
Types de balayage, conditions de tri et verrouillage
Tri des colonnes non indexées ou non principales
Verrous, balayages et tris lors de l’exécution de update index statistics
Verrous, balayages et tris lors de l’exécution de update all statistics
Utilisation de la clause with consumers.
Réduction de l’impact de update statistics sur les processus concurrents
Utilisation de la commande delete statistics.
Lorsque les comptes de lignes peuvent être imprécis
Utilisation des commandes set statistics.
Syntaxe de la commande.Utilisation de statistiques simulées
Contrôle des performances du cache des sous-requêtes
Contrôle de la durée de compilation et d’exécution
Conversion des impulsions en millisecondes
Statistiques relatives aux E/S physiques et logiques
Valeur totale du coût réel des E/S.
Statistiques relatives aux écritures
Statistiques relatives aux lectures
Résultats de statistics io pour les curseurs
Décompte des balayages
Relation entre les lectures physiques et logiques statistics io et jointures de fusion
Utilisation de set showplan
Utilisation
Messages showplan élémentaires
Message délimiteur des plans d’exécution de requête
Message d’étape
Message de type de requête
Message FROM TABLE
Message « TO TABLE »
Messages de mode de mise à jour
Messages « Optimized using »
Messages show plan pour les clauses de requête
Message GROUP BY
Sélection dans une table de travail
Message d’agrégats regroupés
Message compute by
Message d’agrégats non regroupés
Messages pour order by et distinct
Messages de tri
Messages décrivant les méthodes d’accès, la mise en mémoire cache et le coût des E/S
Message de descripteurs de balayage auxiliaires
Message d’itération imbriquée
Messages de jointures par fusion
Message de balayage de table
Message d’index clusterisé
Message de nom d’index
Messages de sens de balayage
Messages de positionnement
Messages de balayage
Message de couverture par index
Message de clés Message de balayages d’index avec correspondances
Message d’index dynamique (stratégie OR)
Message de reformatage
Trigger de message de balayage du journal
Messages de taille des E/S
Messages de stratégie de mise en mémoire cache
Message d’estimation du coût total des E/S
Messages showplan pour les requêtes parallèles
Messages d’exécution en parallèle
Messages showplan pour les sous-requêtes
Résultat des sous-requêtes mises àplat ou matérialisées82
Structure des résultats de showplan pour les sous-requêtes 888
Message d’exécution de sous-requête
Message délimiteur des niveaux d’imbrication
Délimiteur de début de plan d’exécution de sous-requête 9
Délimiteur de fin de plan d’exécution de sous-requête
Type de sous-requête
Prédicats des sous-requêtes
Agrégats de sous-requêtes internes
Message de jointures de contrôle de présence
Affichage des tables de statistiques avec optdiag
Tables système stockant des statistiques systabstats table
Table sysstatistics
Affichage de statistiques àl’aide de l’utilitaire optdiag
Syntaxe de commande optdiag
Informations d’en-tête de optdiag
Statistiques relatives àla table
Statistiques relatives àl’index
Statistiques relatives àla colonne
Affichages d’histogramme
Modification de statistiques àl’aide d’optdiag
Utilisation du mode binaire d’optdiag.
Mise àjour des sélectivités àl’aide du mode
entrée d’optdiag
….

Utilisation des statistiques pour améliorer les performances

Importance des statistiques
Pour estimer le coût d’une requête, l’optimiseur d’Adaptive Server utilise des statistiques relatives aux tables, aux index et aux colonnes figurant dans la requête. Il choisit la méthode d’accès dont le coût est le moins élevé. Toutefois, les estimations de coût ne seront précises que si les statistiques le sont aussi.
Certaines statistiques, comme le nombre de pages ou de lignes d’une table, sont mises à jour dynamiquement durant le traitement des requêtes. D’autres, telles que les histogrammes sur des colonnes, ne sont actualisées que par l’exécution de la commande update statistics ou à la création d’un index.

Mise à jour
La commande update statistics met à jour les statistiques relatives à la colonne, telles que les histogrammes et les densités. Il convient donc d’actualiser ces statistiques lorsque la répartition des clés de l’index change d’une manière qui risque d’influer sur le bon déroulement des requêtes. L’exécution de update statistics exige des ressources système. Comme les autres tâches de maintenance, celle-ci doit être programmée à des moments où le serveur est peu sollicité. En particulier,update statistics requiert des balayages de table ou les lectures d’index au niveau feuille, elle peut engendrer des contentions d’E/S, consommer du temps CPU pour des opérations de tri et utiliser les caches de données et de procédures. L’utilisation de ces ressources alors que la charge du serveur est élevée peut avoir une incidence négative sur l’exécution de update statistics. De plus, certaines commande supdate statistics exigent la pose de verrous partagés, ce qui peut bloquer les mises à jour. Pour plus d’informations, reportez-vous à la section »Types de balayage, conditions de tri et verrouillage », page 815.

Ajout de statistiques pour des colonnes non indexées
Lorsque vous générez un index, un histogramme est créé sur la première colonne de l’index. Dans les chapitres précédents, des exemples ont montré de quelle façon les statistiques sur les autres colonnes peuvent augmenter la précision des estimations de l’optimiseur. Par exemple, reportez-vous à la section « Utilisation de statistiques sur des arguments de recherche multiples », page 429.
Vous devez envisager la création de statistiques pour quasiment toutes les colonnes qui sont souvent utilisées arguments de recherche, à condition bien sûr de programmer la mise à jour de ces statistiques.
En particulier, la présence de statistiques sur des colonnes mineures d’index composés peut améliorer considérablement les estimations de coût lorsque ces colonnes apparaissent dans des arguments de recherche ou dans des jointures, en même temps que la clé d’index principale.

Commandes up date statistics
Les commandes update statistics créent des statistiques sur les colonnes qui n’en possèdent pas, ou les remplacent si elles existent. Les statistiques sont stockées dans les tables système systabstatsetsys statistics. Respectez la syntaxe suivante :
update statisticsnom_table
[[nom_index]|[(liste_colonnes )]]
[using stepvalues ]
[with consumers=consumers]
update index statisticsnom_table[nom_index]
[using stepvalues ]
[with consumers=consumers]

Statistiques sur les colonnes et gestion des statistiques
Des histogrammes sont stockés par colonne et non par index. Ceci a certaines implications pour la gestion des statistiques :
• Si une colonne apparaît dans plusieurs index, update statistics, update index statistics oucreate index met à jour l’histogramme de la colonne et les densités pour tous les sous-ensembles ordonnés. La commande update all statistics met à jour toutes les informations statistiques pour une table donnée.
• La suppression d’un index n’entraîne pas la suppression des statistiques associées, car l’optimiseur peut utiliser des statistiques de niveau colonne pour estimer des coûts, même en l’absence d’index.
La suppression des statistiques après la suppression d’un index doit être explicitement exécutée à l’aide de la commande delete statistics.
Si les statistiques sont encore utiles à l’optimiseur et si vous souhaitez les conserver sans index, utilisez update statistics, en spécifiant le nom de la colonne pour les index dont la répartition des clés change.

….

Si le lien ne fonctionne pas correctement, veuillez nous contacter (mentionner le lien dans votre message)
Cours performances et optimisation (4380 Ko) (Cours PDF)
Performances et optimisation

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *