Limitation du nombre d'événements et de la durée du paramétrage
Vous pouvez contrôler les sessions de paramétrage de l'Assistant Paramétrage du moteur de base de données en limitant la durée de paramétrage de l'application ou le nombre d'événements à paramétrer. Les limites de la durée d'analyse du paramétrage peuvent être utiles si vous devez paramétrer un serveur de production pendant une période de maintenance. Les limites du nombre d'événements paramétrés peuvent être utiles si vous comparez deux configurations hypothétiques en paramétrant la même charge de travail sur chacune d'elles.
L'Assistant Paramétrage du moteur de base de données risque de ne paramétrer que certains événements d'une charge de travail pour une configuration donnée. La spécification du nombre d'événements à paramétrer garantit que chaque configuration prendra en compte le même nombre d'événements paramétrables afin d'obtenir des résultats plus comparables.
Contrôle de la durée du paramétrage
L'Assistant Paramétrage du moteur de base de données analyse une charge de travail jusqu'à ce qu'il trouve l'ensemble de structures de performances physiques le mieux adapté aux bases de données spécifiées. La durée de cette opération dépend du volume de la charge de travail. L'Assistant Paramétrage du moteur de base de données peut prendre plusieurs jours pour effectuer une analyse approfondie d'une charge de travail contenant des centaines d'événements. Même si les bases de données sont disponibles tout au long de l'analyse, les performances peuvent être affectées.
Pour contrôler pendant combien de temps l'Assistant Paramétrage du moteur de base de données analyse une charge de travail, spécifiez la durée maximale. La durée maximale correspond au nombre d'heures et de minutes que vous souhaitez que l'Assistant Paramétrage du moteur de base de données consacre à l'analyse d'une charge de travail. Définir une durée maximale est une recommandation qui se base sur la solution optimale que l'Assistant Paramétrage du moteur de base de données peut générer avant l'expiration de cette durée.
Dans l'interface graphique utilisateur de l'Assistant Paramétrage du moteur de base de données, la valeur par défaut de ce paramètre est définie à 1 heure. Dans l'utilitaire de ligne de commande dta, la limite par défaut est de 8 heures. Si l'analyse complète exige moins de temps que la limite définie, le paramétrage se termine dès que l'analyse est finie. Vous pouvez spécifier une durée de paramétrage illimitée pour générer la recommandation la mieux adaptée dans l'interface des deux outils.
Les sous-sections suivantes décrivent la définition de cette option de paramétrage dans l'interface utilisateur graphique et au niveau de l'invite de commandes.
Définition de la durée de paramétrage dans l'interface utilisateur graphique
Vous définissez la durée limite de paramétrage dans l'interface graphique utilisateur de l'Assistant Paramétrage du moteur de base de données en sélectionnant Limiter la durée du paramétrage sous l'onglet Options de paramétrage, puis en définissant Arrêter à telle date et telle heure.
Les détails suivants sont d'application :
En général, la spécification d'une durée de paramétrage supérieure permet d'obtenir de meilleurs résultats globaux, car une quantité accrue de charge de travail peut être analysée. Les recommandations se basent sur des informations plus complètes.
Par défaut, la limite de paramétrage maximale est fixée à 1 heure.
Pour spécifier une durée de paramétrage illimitée, désactivez la case à cocher Limiter la durée du paramétrage.
Définition de la durée de paramétrage dans l'utilitaire de ligne de commande dta
Vous pouvez définir la limite de durée du paramétrage en spécifiant une valeur pour l'argument -A à l'aide de l'utilitaire de ligne de commande dta. Par exemple, examinez la commande dta suivante :
dta -E -s MySession -D AdventureWorks2008R2 -if MyWorkloadScript.sql -fa IDX -A 120
où -E spécifie une connexion approuvée, -D spécifie la base de données à paramétrer, -if spécifie le fichier de charge de travail, -fa IDX spécifie que l'Assistant Paramétrage du moteur de base de données doit se contenter d'ajouter des index dans sa recommandation et -A 120 signifie que le paramétrage doit être défini dans un délai de 120 minutes.
Lors de l'exécution de l'utilitaire dta à partir de l'invite de commandes (plutôt qu'en l'appelant dans un script pour le paramétrage automatique), appuyez sur Ctrl+C pour arrêter le paramétrage. L'Assistant Paramétrage du moteur de base de données retourne ensuite la recommandation la mieux adaptée en fonction de la quantité de charge de travail utilisée à ce moment.
Les détails suivants sont d'application :
En général, la spécification d'une durée de paramétrage supérieure permet d'obtenir de meilleurs résultats globaux, car une quantité accrue de charge de travail peut être analysée. Les recommandations se basent donc sur des informations plus complètes.
Pour spécifier un paramétrage avec une durée illimitée, utilisez l'argument de ligne de commande –A 0. Utilisez cet argument pour obtenir la recommandation optimale pour l'intégralité de la charge de travail.
Si l'option –A n'est pas spécifiée, elle a la valeur –A 480 par défaut (durée de paramétrage de 8 heures).
Même si vous appuyez sur Ctrl+C, l'utilitaire dta peut prendre un certain temps pour remplir les rapports d'analyse avant de se fermer.
Définition de la durée de paramétrage dans le fichier d'entrée XML
Vous pouvez également définir une limite de durée de paramétrage maximale dans le fichier d'entrée XML qui peut être utilisé avec l'utilitaire de ligne de commande dta. Pour spécifier une limite de durée de paramétrage en minutes dans le fichier d'entrée XML, utilisez le sous-élément TuningTimeInMin situé sous l'élément parent TuningOptions. Pour plus d'informations sur le fichier d'entrée XML, consultez Référence des fichiers d'entrée XML (Assistant Paramétrage du moteur de base de données).
Contrôle du nombre d'événements à paramétrer
Vous pouvez contrôler le nombre d'événements dans les charges de travail que l'Assistant Paramétrage du moteur de base de données doit paramétrer. Cette option n'est disponible qu'à partir de l'utilitaire de ligne de commande dta, à l'aide de l'argument –n. Le comportement de l'utilitaire dta lorsque l'argument -n est utilisé dépend de la valeur spécifiée pour l'argument -A, qui indique la limite de durée du paramétrage, comme suit :
dta s'arrête lorsqu'il a paramétré le nombre d'événements spécifié ou une fois la limite de durée du paramétrage écoulée, selon la valeur atteinte en premier. Si l'argument -n n'est pas spécifié, dta paramètre par défaut tous les événements de la charge de travail. Si l'argument -A n'est pas spécifié, dta suppose une limite de durée du paramétrage par défaut de 8 heures.
Pour garantir que le nombre d'événements spécifié à l'aide de l'argument -n sera paramétré, spécifiez également 0 pour l'argument -A afin de définir une durée de paramétrage illimitée. Par exemple, -n 250 -A 0.
Spécification du nombre d'événements à paramétrer dans le fichier d'entrée XML
Vous pouvez également spécifier un nombre d'événements à paramétrer dans le fichier d'entrée XML qui peut être utilisé avec l'utilitaire de ligne de commande dta. Pour ce faire, utilisez le sous-élément NumberOfEvents situé sous l'élément parent TuningOptions. Pour plus d'informations sur le fichier XML d'entrée, consultez Référence des fichiers d'entrée XML (Assistant Paramétrage du moteur de base de données).
Méthodes conseillées pour limiter la durée du paramétrage et le nombre d'événements paramétrés
Vous trouverez ci-dessous des suggestions relatives à la limitation de la durée du paramétrage et du nombre d'événements paramétrés :
Pour des charges de travail réduites (moins de 100 événements) ou à requête unique, spécifiez une durée de paramétrage illimitée. La spécification d'une durée de paramétrage illimitée permet à l'Assistant Paramétrage du moteur de base de données de vous fournir des recommandations optimales ; dans la plupart des cas, le paramétrage prendra relativement peu de temps.
Pour les charges de travail importantes (plus de 100 événements), prenez en compte les options suivantes dans l'ordre de leur énumération. Ne tentez la dernière option (4) qu'après avoir épuisé les options 1 à 3.
Si l'utilisateur possède une contrainte de temps, limitez la durée du paramétrage.
Si le paramétrage d'un certain nombre d'événements est suffisant (par exemple, les 10 000 premiers événements peuvent être représentatifs du reste de la charge de travail), employez l'utilitaire de ligne de commande dta et spécifiez le nombre d'événements à l'aide de l'argument –n.
Si vous employez l'utilitaire de ligne de commande dta et souhaitez limiter davantage la durée du paramétrage, vous pouvez utiliser à la fois les arguments –A et –n. Par exemple, la spécification de -A 240 et de –n 1000 oblige l'Assistant Paramétrage du moteur de base de données à arrêter le paramétrage dès qu'il a paramétré 1 000 événements ou que quatre heures se sont écoulées, selon la première valeur atteinte.
La durée du paramétrage dépend de la complexité des requêtes (nombre de tables référencées), des jeux de fonctionnalités choisis (le paramétrage de vues indexées dure plus longtemps que le paramétrage d'index) et de la taille des données (pour la création de statistiques). Dans la plupart des cas, l'Assistant Paramétrage du moteur de base de données consacre la majorité du temps de paramétrage à appeler l'optimiseur de requête. Voici un moyen simple de déterminer le temps nécessaire à l'Assistant Paramétrage du moteur de base de données pour effectuer le paramétrage :
Pour les requêtes simples qui font référence à trois tables maximum, laissez environ 1 seconde par requête pour le paramétrage d'index uniquement et environ 10 secondes par requête pour le paramétrage d'index et de vues indexées. Pour les requêtes complexes qui font référence à plus de trois tables, laissez environ 10 secondes par requête pour le paramétrage d'index uniquement et environ 100 secondes par requête pour le paramétrage d'index et de vues indexées.
Si l'Assistant Paramétrage du moteur de base de données indique que 100 % de la charge de travail a été consommée, cela signifie que l'intégralité de la charge de travail a été analysée, mais pas nécessairement paramétrée. Pour déterminer si l'intégralité de la charge de travail a été paramétrée, recherchez le message suivant à la fin du journal des paramétrages :
« Tous les événements de la charge de travail n'ont pas été paramétrés. Envisagez d'augmenter le délai ou spécifiez le nombre d'événements à prendre en compte dans le fichier XML d'entrée ».
Si ce message est présent dans le journal des paramétrages, l'Assistant Paramétrage du moteur de base de données n'a pas pu paramétrer l'intégralité de la charge de travail. Pour résoudre ce problème, spécifiez une durée de paramétrage plus longue. Pour garantir le paramétrage de tous les événements de la charge de travail, vous pouvez spécifier une durée de paramétrage illimitée. Si vous choisissez de ne pas spécifier de durée de paramétrage illimitée, l'Assistant Paramétrage du moteur de base de données tente de paramétrer le plus grand nombre d'événements possible dans la période de paramétrage spécifiée.
Remarque Il n'existe aucune correspondance directe entre les modes d'analyse rapide, moyenne ou minutieuse de l'Assistant Paramétrage d'index de Microsoft SQL Server 2000 et les arguments –A et –n de l'Assistant Paramétrage du moteur de base de données. Dans la plupart des cas, si le paramétrage dans un mode d'analyse spécifique (rapide, moyenne ou minutieuse) dans SQL Server 2000 durait un certain temps, la même durée permet généralement d'obtenir des recommandations comparables ou meilleures dans l'Assistant Paramétrage du moteur de base de données SQL Server 2005. Il est recommandé aux utilisateurs du mode d'analyse minutieuse d'utiliser l'Assistant Paramétrage du moteur de base de données avec une durée de paramétrage illimitée et un nombre illimité d'événements à paramétrer dans la charge de travail.
Autres méthodes de limitation de la durée de paramétrage
Outre la limitation de la durée d'exécution de l'Assistant Paramétrage du moteur de base de données, vous pouvez paramétrer uniquement un sous-ensemble des tables de la base de données.
Les options suivantes sont également disponibles :
Conserver toutes les structures de création physique existantes.
Conserver les index uniquement.
Conserver les index cluster uniquement.
L'Assistant Paramétrage du moteur de base de données inclut tout indicateur d'index ou de requête dans la recommandation finale, même si l'index ne constitue pas une solution idéale pour la table. Les index d'autres tables référencées dans la requête peuvent être proposés ou recommandés. Cependant, tous les index spécifiés comme indicateurs feront toujours partie de la recommandation finale. Des indicateurs peuvent empêcher l'Assistant Paramétrage du moteur de base de données de choisir un meilleur plan d'exécution. Avant d'analyser la charge de travail, envisagez la suppression de tout indicateur d'index dans les requêtes.