• 03/02/2017
  • 3 minutes de lecture
  • .

    • m
    • M
    • J
    • r
    • M
    • +3

Applique à : yesSQL Server (toutes les versions prises en charge)

Cette rubrique décrit comment configurer l’option de configuration de serveur seuil de coût pour le parallélisme dans SQL Server en utilisant SQL Server Management Studio ou Transact-SQL. L’option cost threshold for parallelism spécifie le seuil à partir duquel SQL Server crée et exécute des plans parallèles pour les requêtes. SQL Server crée et exécute un plan parallèle pour une requête uniquement lorsque le coût estimé pour exécuter un plan série pour la même requête est supérieur à la valeur définie dans l’option cost threshold for parallelism. Le coût fait référence à une estimation du coût nécessaire pour exécuter le plan série sur une configuration matérielle spécifique, et n’est pas une unité de temps. L’option de seuil de coût pour le parallélisme peut être définie sur toute valeur comprise entre 0 et 32767. La valeur par défaut est de 5.

Dans ce sujet

  • Avant de commencer :

    Limitations et restrictions

    Recommandations

    Sécurité

  • Pour configurer le seuil de coût pour l’option de parallélisme, en utilisant :

    SQL Server Management Studio

    Transact-SQL

  • Suivi : Après avoir configuré l’option seuil de coût pour le parallélisme

Avant de commencer

Limitations et restrictions

  • Le coût fait référence à une unité de coût abstraite et non à une unité de temps estimée. Ne définissez le seuil de coût pour le parallélisme que sur des multiprocesseurs symétriques.

  • SQL Server ignore la valeur du seuil de coût pour le parallélisme dans les conditions suivantes :

    • Votre ordinateur ne possède qu’un seul processeur logique.

    • Un seul processeur logique est disponible pour SQL Server en raison de l’option de configuration du masque d’affinité.

    • L’option de degré maximal de parallélisme est définie sur 1.

Un processeur logique est l’unité de base du matériel du processeur qui permet au système d’exploitation de répartir une tâche ou d’exécuter un contexte de thread. Chaque processeur logique ne peut exécuter qu’un seul contexte de thread à la fois. Le cœur du processeur est le circuit qui permet de décoder et d’exécuter les instructions. Un noyau de processeur peut contenir un ou plusieurs processeurs logiques. La requête Transact-SQL suivante peut être utilisée pour obtenir des informations sur le processeur du système.

SELECT (cpu_count / hyperthread_ratio) AS PhysicalCPUs, cpu_count AS logicalCPUs FROM sys.dm_os_sys_info 

Recommandations

  • Cette option est une option avancée et doit être modifiée uniquement par un administrateur de base de données expérimenté ou un professionnel certifié de SQL Server.

  • Dans certains cas, un plan parallèle peut être choisi même si le plan de coût de la requête est inférieur à la valeur actuelle du seuil de coût pour le parallélisme. Cela peut se produire parce que la décision d’utiliser un plan parallèle ou série est basée sur une estimation de coût fournie plus tôt dans le processus d’optimisation. Pour plus d’informations, consultez le Guide de l’architecture du traitement des requêtes.

  • Bien que la valeur par défaut de 5 soit adéquate pour la plupart des systèmes, une valeur différente peut être appropriée. Effectuez des tests d’application avec des valeurs supérieures et inférieures si nécessaire pour optimiser les performances de l’application.

Sécurité

Permissions

Les autorisations d’exécution sur sp_configure sans paramètres ou avec seulement le premier paramètre sont accordées à tous les utilisateurs par défaut. Pour exécuter sp_configure avec les deux paramètres afin de modifier une option de configuration ou d’exécuter l’instruction RECONFIGURE, un utilisateur doit se voir accorder l’autorisation ALTER SETTINGS au niveau du serveur. L’autorisation ALTER SETTINGS est implicitement détenue par les rôles de serveur fixe sysadmin et serveradmin.

Utilisation de SQL Server Management Studio

Pour configurer le seuil de coût de l’option de parallélisme

  1. Dans l’Explorateur d’objets, cliquez avec le bouton droit sur un serveur et sélectionnez Propriétés.

  2. Cliquez sur le nœud Avancé.

  3. Sous Parallélisme, modifiez l’option Seuil de coût pour le parallélisme à la valeur que vous souhaitez. Tapez ou sélectionnez une valeur de 0 à 32767.

Utilisation de Transact-SQL

Pour configurer le seuil de coût de l’option de parallélisme

  1. Connectez-vous au moteur de base de données.

  2. Dans la barre standard, cliquez sur Nouvelle requête.

  3. Copiez et collez l’exemple suivant dans la fenêtre de requête et cliquez sur Exécuter. Cet exemple montre comment utiliser sp_configure pour définir la valeur de l’option cost threshold for parallelism à 10.

USE AdventureWorks2012 ; GO EXEC sp_configure 'show advanced options', 1 ; GO RECONFIGURE GO EXEC sp_configure 'cost threshold for parallelism', 10 ; GO RECONFIGURE GO 

Pour plus d’informations, voir Options de configuration du serveur (SQL Server).

Suivi : Après avoir configuré l’option de seuil de coût pour le parallélisme

Le paramètre prend effet immédiatement sans redémarrer le serveur.

Voir aussi

Configurer des opérations d’indexation parallèles
Conseils de requête (Transact-SQL)
ALTER WORKLOAD GROUP (Transact-SQL)
Masque d’affinité Option de configuration du serveur
RECONFIGURE (Transact-SQL)
Options de configuration du serveur (SQL Server)
sp_configure (Transact-SQL)

.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.