Share via


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.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Top]

Verwendung von SQL Server Management Studio

So konfigurieren Sie die Option Kostenschwelle für Parallelität

  1. Klicken Sie im Objekt-Explorer mit der rechten Maustaste auf einen Server, und wählen Sie Eigenschaften aus.

  2. Klicken Sie auf den Erweitert-Knoten.

  3. 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.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Top]

Verwendung von Transact-SQL

So konfigurieren Sie die Option Kostenschwelle für Parallelität

  1. Stellen Sie eine Verbindung mit dem Database Engine (Datenbankmodul) her.

  2. Klicken Sie in der Standardleiste auf Neue Abfrage.

  3. 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.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Top]

Nachverfolgung: Nach dem Konfigurieren der Option Kostenschwellenwert für Parallelität

Die Einstellung tritt ohne Neustarten des Servers sofort in Kraft.

Pfeilsymbol, dass mit dem Link "Zurück zum Anfang" verwendet wird[Top]

Siehe auch

Verweis

Abfragehinweise (Transact-SQL)

ALTER WORKLOAD GROUP (Transact-SQL)

RECONFIGURE (Transact-SQL)

sp_configure (Transact-SQL)

Konzepte

Konfigurieren von Parallelindexvorgängen

Affinitätsmaske (Serverkonfigurationsoption)

Serverkonfigurationsoptionen