Optimiser pour les charges de travail ad hoc (option de configuration de serveur)
L'option Optimiser pour les charges de travail ad hoc permet d'améliorer l'efficacité du cache du plan pour les charges de travail qui contiennent de nombreux lots ad hoc à usage unique. Lorsque cette option a la valeur 1, le Moteur de base de données stocke un petit stub du plan compilé dans le cache du plan lorsqu'un lot est compilé pour la première fois, au lieu du plan compilé complet. La mémoire est ainsi moins sollicitée car le cache du plan n'est pas saturé de plans compilés qui ne sont pas réutilisés.
Le stub du plan compilé permet au Moteur de base de données de reconnaître que ce lot ad hoc a déjà été compilé mais qu'il n'a stocké qu'un stub du plan compilé. Par conséquent, lorsque le lot est à nouveau appelé (compilé ou exécuté), le Moteur de base de données compile le lot, supprime le stub du plan compilé du cache du plan et ajoute le plan compilé complet au cache du plan.
Attribuer la valeur 1 à l'option Optimiser pour les charges de travail ad hoc affecte uniquement les nouveaux plans ; les plans qui se trouvent déjà dans le cache du plan ne sont pas concernés.
Le stub du plan compilé est l'un des cacheobjtypes contenus dans l'affichage catalogue sys.dm_exec_cached_plans. Il possède un handle SQL et un handle de plan qui sont uniques. Aucun plan d'exécution n'est associé au stub du plan compilé et interroger le handle du plan ne retourne pas de plan d'exécution de requêtes XML.
L'indicateur de trace 8 032 rétablit les paramètres de limitation du cache au paramètre RTM SQL Server 2005 qui permet en général aux caches d'être plus volumineux. Utilisez ce paramètre lorsque les entrées du cache fréquemment utilisées ne tiennent pas dans le cache et lorsque l'Optimiser pour les charges de travail ad hoc (option de configuration de serveur) ne permet pas de résoudre le problème avec le cache du plan.
Attention |
---|
L'indicateur de trace 8 032 peut altérer les performances si des caches volumineux diminuent la mémoire disponible pour les autres consommateurs, tels que le pool de mémoires tampons. |
Voir aussi
Référence
sys.dm_exec_cached_plans (Transact-SQL)