Il ne fait aucun doute que la surveillance des performances de votre déploiement SQL Server est une partie importante des responsabilités de maintenance et de dépannage de tout administrateur de base de données.
Cependant, l'outil intégré fourni par Microsoft pour y parvenir, connu sans ambiguïté sous le nom de Activity Monitor, pourrait en fait être le coupable de la baisse des performances.
Voici un aperçu de la raison pour laquelle cela se produit et de ce que vous pouvez faire pour résoudre le problème d'interférence du moniteur d'activité avec le bon fonctionnement d'une base de données SQL Server.
Le dilemme de base
Bien que Activity Monitor soit sans aucun doute utile en théorie, en pratique, il peut ralentir la réactivité du serveur dans certains scénarios.
La raison en est que l'outil lui-même est un peu gourmand en ressources, donc pendant son exécution, il monopolisera les cycles d'horloge du processeur et une partie de la mémoire allouée qui pourrait autrement être exploitée pour traiter les requêtes et traiter d'autres transactions.
Cette surcharge supplémentaire revient à Activity Monitor exécutant 13 requêtes à plusieurs reprises sur une boucle de 10 secondes pour que le tableau de bord reste rempli des statistiques dont vous avez besoin pour suivre les performances. En particulier, cela peut compromettre des choses comme TempDB, bien qu'il soit aussi plus généralement responsable d'un fonctionnement sous-optimal du serveur, en violation de son objectif même.
La solution la plus simple
Le moyen le plus simple de contourner ce problème est sans doute de s'éloigner du moniteur d'activité intégré et de doter à la place votre configuration SQL Server d'un package tiers capable de surveiller et de diagnostiquer l'ensemble de la base de données.
En plus de surmonter les limites d'Activity Monitor, vous tourner vers les outils mieux optimisés de marques respectées vous permettra également d'automatiser bon nombre des principaux processus impliqués dans la supervision de SQL Server.
Ainsi, les administrateurs de base de données constateront qu'ils disposent de plus de temps pour d'autres tâches et peuvent également bénéficier d'éléments tels que des alertes et des notifications qui attirent leur attention sur les problèmes nécessitant un dépannage.
Les meilleurs outils pourront même vous aider dans des domaines tels que l'optimisation des requêtes, la surveillance de la sécurité et bien plus encore.
Il peut sembler plus pénible d'installer un outil de surveillance distinct lorsque SQL Server dispose de sa propre fonctionnalité dans ce domaine, mais les améliorations de performances et le potentiel d'optimisation de cette voie justifieront facilement tout tracas initial.
Les autres avantages
Là où Activity Monitor est insuffisant, mis à part en termes d'utilisation des ressources dans SQL Server, c'est dans la manière dont il présente les données aux administrateurs de base de données.
Il peut être adapté pour vous donner un instantané des performances et de l'activité du serveur d'un moment à l'autre, mais ce n'est pas toujours particulièrement utile si vous espérez résoudre des énigmes plus larges avec le fonctionnement d'une base de données.
L'ajout d'un outil de surveillance distinct au mix vous permettra de suivre les performances au fil du temps, de comparer les données historiques à l'état actuel des choses et de tirer des enseignements d'une image plus complète.
Réflexions finales
Si vous étiez sceptique quant aux avantages d'avoir une solution de surveillance autonome pour SQL Server, nous espérons que vos préoccupations ont maintenant été résolues.
Vous n'êtes pas obligé d'abandonner complètement Activity Monitor, mais le simple fait de connaître ses inconvénients vous permettra de gérer votre utilisation plus efficacement.