Konfigurieren der Serverkonfigurationsoption Kostenschwellenwert für Parallelität
In diesem Thema wird beschrieben, wie die Serverkonfigurationsoption Kostenschwellenwert für Parallelität in SQL Server 2012 mithilfe von SQL Server Management Studio oder Transact-SQL konfiguriert wird. Mit der Option cost threshold for parallelism geben Sie den Schwellenwert an, bei dem SQL Server parallele Pläne für Abfragen erstellt und ausführt. SQL Server erstellt und führt einen parallelen Plan für eine Abfrage nur dann aus, wenn die geschätzten Kosten für das Ausführen eines seriellen Plans für dieselbe Abfrage höher liegen als der Wert, der in Kostenschwellenwert für Parallelität festgelegt wurde. Die Kosten beziehen sich auf eine geschätzte Zeit in Sekunden, die für das Ausführen des seriellen Plans bei einer bestimmten Hardwarekonfiguration benötigt wird. Die Option Kostenschwellenwert für Parallelität kann auf einen beliebigen Wert zwischen 0 und 32767 festgelegt werden. Der Standardwert ist 5.
In diesem Thema
Vorbereitungen:
Einschränkungen
Empfehlungen
Sicherheit
So konfigurieren Sie die Option Kostenschwelle für Parallelität mit:
SQL Server Management Studio
Transact-SQL
Nachverfolgung: Nach dem Konfigurieren der Option Kostenschwellenwert für Parallelität
Vorbereitungen
Einschränkungen
Die Kosten beziehen sich auf eine geschätzte Zeit in Sekunden, die für das Ausführen des seriellen Plans bei einer bestimmten Hardwarekonfiguration benötigt wird. Legen Sie die Option Kostenschwellenwert für Parallelität nur auf SMP-Systemen (Symmetric Multiprocessor) fest.
SQL Server ignoriert den Wert von Kostenschwellenwert für Parallelität unter den folgenden Bedingungen:
Ihr Computer verfügt nur über einen logischen Prozessor.
Für SQL Server steht wegen der Konfigurationsoption affinity mask nur ein logischer Prozessor zur Verfügung.
Die Option Max. Grad an Parallelität ist auf den Wert 1 festgelegt.
Ein logischer Prozessor ist die grundlegende Einheit von Prozessorhardware, die dem Betriebssystem ermöglicht, einen Task weiterzuleiten oder einen Threadkontext auszuführen. Jeder logische Prozessor kann an einem bestimmten Zeitpunkt nur einen Threadkontext ausführen. Der Prozessorkern ist die Schaltungstechnik, mit der Anweisungen decodiert und ausgeführt werden können. Ein Prozessorkern enthält möglicherweise einen oder mehrere logische Prozessoren. Die folgende Transact-SQL-Abfrage kann zum Abrufen von CPU-Informationen für das System verwendet werden.
SELECT (cpu_count / hyperthread_ratio) AS PhysicalCPUs,
cpu_count AS logicalCPUs
FROM sys.dm_os_sys_info
Empfehlungen
Diese Option ist eine erweiterte Option und sollte ausschließlich von einem erfahrenen Datenbankadministrator oder einem zertifizierten SQL Server-Techniker geändert werden.
In bestimmten Fällen kann ein paralleler Plan ausgewählt werden, obwohl der Kostenplan der Abfrage unter dem aktuellen Wert der Option Kostenschwellenwert für Parallelität liegt. Dieser Fall kann eintreten, wenn die Entscheidung zum Verwenden eines parallelen oder seriellen Plans auf einer Kostenabschätzung basiert, die vor dem Abschluss der vollständigen Optimierung zur Verfügung gestellt wurde.
Sicherheit
Berechtigungen
Die Ausführungsberechtigungen für sp_configure ohne Parameter oder nur mit dem ersten Parameter werden standardmäßig allen Benutzern erteilt. Zum Ausführen von sp_configure mit beiden Parametern zum Ändern einer Konfigurationsoption oder zum Ausführen der RECONFIGURE-Anweisung muss einem Benutzer die ALTER SETTINGS-Berechtigung auf Serverebene erteilt worden sein. Die ALTER SETTINGS-Berechtigung ist in den festen Serverrollen sysadmin und serveradmin eingeschlossen.
[Top]
Verwendung von SQL Server Management Studio
So konfigurieren Sie die Option Kostenschwelle für Parallelität
Klicken Sie im Objekt-Explorer mit der rechten Maustaste auf einen Server, und wählen Sie Eigenschaften aus.
Klicken Sie auf den Erweitert-Knoten.
Legen Sie unter Parallelität für die Option CostThresholdForParallelism den gewünschten Wert fest. Geben Sie einen Wert zwischen 0 und 32767 ein bzw. wählen Sie diesen aus.
[Top]
Verwendung von Transact-SQL
So konfigurieren Sie die Option Kostenschwelle für Parallelität
Stellen Sie eine Verbindung mit dem Database Engine (Datenbankmodul) her.
Klicken Sie in der Standardleiste auf Neue Abfrage.
Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen. In diesem Beispiel wird gezeigt, wie sp_configure verwendet wird, um den Wert der Option cost threshold for parallelism auf 10 Sekunden festzulegen.
USE AdventureWorks2012 ;
GO
EXEC sp_configure 'show advanced options', 1 ;
GO
RECONFIGURE
GO
EXEC sp_configure 'cost threshold for parallelism', 10 ;
GO
RECONFIGURE
GO
Weitere Informationen finden Sie unter Serverkonfigurationsoptionen.
[Top]
Nachverfolgung: Nach dem Konfigurieren der Option Kostenschwellenwert für Parallelität
Die Einstellung tritt ohne Neustarten des Servers sofort in Kraft.
[Top]
Siehe auch
Verweis
Abfragehinweise (Transact-SQL)
ALTER WORKLOAD GROUP (Transact-SQL)
Konzepte
Konfigurieren von Parallelindexvorgängen