> Tech > Tip 8 : Réduire au minimum les recompilations

Tip 8 : Réduire au minimum les recompilations

Tech - Par iTPro - Publié le 24 juin 2010
email

La première version du SQL Server pouvait stocker et réutiliser le plan d'exécution d'une procédure cataloguée exécutée plusieurs fois par une application. Mais cette fonction a cessé de procurer des économies intéressantes à  partir de SQL Server 7.0. En effet, pour de nombreuses requêtes, la génération du plan de requête

par la compilation (la communication inclut également l’optimisation des requêtes) coûtait bien moins cher que l’exécution de la requête : difficile de percevoir la ou les milliseconde(s) économisée(s) en ne créant pas un nouveau plan.

Microsoft a réécrit l’optimiseur de requêtes du produit pour SQL Server 7.0 afin d’y inclure des dizaines de nouvelles techniques de traitement des requêtes. Cet enrichissement fait que l’optimiseur de requêtes passe généralement plus de temps que les versions antérieures à  produire un plan d’exécution. Ce temps supplémentaire rend la fonction de réutilisation du plan de requêtes plus intéressante pour gagner du temps.

SQL Server 2000 et SQL Server 7.0 offrent également un mécanisme de sauvegarde des plans d’exécution des requêtes ad hoc. C’est utile quand une procédure cataloguée n’est pas disponible. Cette possibilité est automatique, mais pas garantie : le mécanisme obéit à  un strict jeu de règles et est moins prévisible que la réutilisation des plans de procédures cataloguées. Je conseille par conséquent d’écrire des procédures cataloguées pour tout le code SQL chaque fois que c’est possible.

L’utilisation de plans précompilés peut donc faire gagner du temps. Mais, parfois, on voudra forcer une recompilation et, dans d’autres cas, SQL Server décidera seul de recompiler le plan pour une procédure. Le profiler peut indiquer quand les recompilations se produisent et l’outil System Monitor peut indiquer leur fréquence.

Téléchargez gratuitement cette ressource

Endpoint Security : Guide de Mise en œuvre

Endpoint Security : Guide de Mise en œuvre

Détournement d’applications légitimes, élévation de privilèges, logiciels malveillants furtifs : comment les solutions de Endpoint Security permettent elles de faire face aux nouvelles techniques d'attaques complexes ? Découvrez, dans ce Guide Endpoint Security, les perspectives associées à leur mise en œuvre.

Tech - Par iTPro - Publié le 24 juin 2010