Ressourcenpool für die Ressourcenkontrolle

In der SQL Server-Ressourcenkontrolle stellt ein Ressourcenpool eine Teilmenge der physischen Ressourcen einer Instanz von Database Engine (Datenbankmodul) dar. Jeder Ressourcenpool kann eine oder mehrere Arbeitsauslastungsgruppen enthalten. Wenn eine Sitzung gestartet wird, weist die Klassifizierungsfunktion der Ressourcenkontrolle die Sitzung einer bestimmten Arbeitsauslastungsgruppe zu, und die Sitzung muss mit den der Arbeitsauslastungsgruppe zugewiesenen Ressourcen ausgeführt werden.

Konzepte von Ressourcenpools

Ein Ressourcenpool (Pool) repräsentiert die physischen Ressourcen des Servers. Stellen Sie sich einen Pool als virtuelle SQL Server-Instanz innerhalb einer SQL Server-Instanz vor.

Ein Pool besteht aus zwei Teilen. Ein Teil überschneidet sich nicht mit anderen Pools, wodurch eine minimale Reservierung von Ressourcen ermöglicht wird. Der andere Teil wird gemeinsam mit anderen Pools verwendet, wodurch eine maximale Ressourcenauslastung ermöglicht wird. In dieser Version der Ressourcenkontrolle werden die Poolressourcen durch Angabe eines der folgenden Werte für jede Ressource festgelegt:

  • MIN, MAX oder CAP für CPU

  • MIN bzw. MAX für den Arbeitsspeicher

MIN und MAX repräsentieren die garantierte Mindestverfügbarkeit an Ressourcen für den Pool und die maximale Größe des Pools für die einzelnen Ressourcen.

Der CAP-Wert für CPU stellt ein hartes Maximum dar. Die verfügbare CPU-Kapazität über diesem Wert wird nicht verwendet.

Die Summe der MIN-Werte für alle Pools darf 100 Prozent der Serverressourcen nicht übersteigen. Die MAX- und CAP-Werte können zwischen MIN und 100 Prozent festgelegt werden.

Wenn bei einem Pool ein MIN-Wert definiert ist, der nicht NULL entspricht, wird der effektive MAX-Wert anderer Pools erneut angepasst. Das Minimum des konfigurierten MAX-Werts eines Pool sowie die Summe der MIN-Werte der anderen Pools wird von 100 Prozent subtrahiert.

In der folgenden Tabelle werden die obigen Konzepte veranschaulicht. Die Tabelle zeigt die Einstellungen für den internen Pool, den Standardpool und zwei benutzerdefinierte Pools. Die folgenden Formeln werden zum Berechnen der Prozentwerte für den effektiven MAX-Wert (MAX %) und den freigegebenen, d. h. gemeinsam verwendeten Teil (Shared %) herangezogen.

  • Min(X,Y) bedeutet den kleineren Wert von X und Y.

  • Sum(X) bedeutet die Summe der X-Werte in allen Pools.

  • Shared % insgesamt = 100 - sum(MIN %)

  • Effektiver MAX % = min(X,Y)

  • Shared % = effektiver MAX % - MIN %

Poolname

Einstellung für MIN %

Einstellung für MAX %

Berechneter effektiver MAX %

Berechneter Shared %

Anmerkung

Interner Pool (internal)

0

100

100

0

Effektiver MAX % und Shared % gelten nicht für den internen Pool.

Standardpool (default)

0

100

30

30

Der effektive MAX-Wert wird berechnet als: min(100,100-(20+50)) = 30. Der berechnete Shared % ist der effektive MAX - MIN = 30.

Pool 1

20

100

50

30

Der effektive MAX-Wert wird berechnet als: min(100,100-50) = 50. Der berechnete Shared % ist der effektive MAX - MIN = 30.

Pool 2

50

70

70

20

Der effektive MAX-Wert wird berechnet als: min(70,100-20) = 70. Der berechnete Shared % ist der effektive MAX - MIN = 20.

Anhand der obigen Tabelle als Beispiel können wir zeigen, welche Anpassungen vorgenommen werden, wenn ein weiterer Pool erstellt wird. Dieser Pool ist Pool 3 mit einer MIN %-Einstellung von 5.

Poolname

Einstellung für MIN %

Einstellung für MAX %

Berechneter effektiver MAX %

Berechneter Shared %

Anmerkung

Interner Pool (internal)

0

100

100

0

Effektiver MAX % und Shared % gelten nicht für den internen Pool.

Standardwert

0

100

25

25

Der effektive MAX-Wert wird berechnet als: min(100,100-(20+50+5)) = 25. Der berechnete Shared % ist der effektive MAX - MIN = 25.

Pool 1

20

100

45

25

Der effektive MAX-Wert wird berechnet als: min(100,100-55) = 45. Der berechnete Shared % ist der effektive MAX - MIN = 25.

Pool 2

50

70

70

20

Der effektive MAX-Wert wird berechnet als: min(70,100-25) = 70. Der berechnete Shared % ist der effektive MAX - MIN = 20.

Pool 3

5

100

30

25

Der effektive MAX-Wert wird berechnet als: min(100,100-70) = 30. Der berechnete Shared % ist der effektive MAX - MIN = 25.

Mit dem freigegebenen Teil des Pools wird angezeigt, wohin Ressourcen verlagert werden können, sofern Ressourcen verfügbar sind. Belegte Ressourcen gehen jedoch in den angegebenen Pool über und sind nicht mehr freigegeben. Hierdurch lässt sich ggf. die Ressourcenausnutzung verbessern, wenn in einem bestimmten Pool keine Anforderungen vorliegen und somit die für diesen Pool konfigurierten Ressourcen für andere Pools freigegeben werden können.

Beispiele für extreme Poolkonfigurationen:

  • Alle Pools weisen Mindestwerte auf, deren Summe 100 Prozent der Serverressourcen ergibt. In diesem Fall entsprechen die Höchstwerte den Mindestwerten. Dies kommt einer Einteilung der Ressourcen in sich nicht überlappende Teile gleich, unabhängig davon, ob die Ressourcen in den einzelnen Pools tatsächlich ausgenutzt werden.

  • Alle Pools weisen einen Mindestwert von 0 (null) auf. Alle Pools stehen im Wettbewerb um verfügbare Ressourcen, und ihre letztendliche Größe ist abhängig von der Ressourcenbelegung in den einzelnen Pools. Andere Faktoren wie Richtlinien spielen jedoch auch eine Rolle bei der ultimativen Poolgröße.

Die Ressourcenkontrolle verfügt über zwei vordefinierte Ressourcenpools: den internen Pool und den Standardpool.

Interner Pool

Der interne Pool repräsentiert die von SQL Server belegten Ressourcen. Dieser unveränderliche Pool enthält immer nur die interne Gruppe. Die Ressourcenbelegung durch den internen Pool ist nicht eingeschränkt. Alle Arbeitsauslastungen im Pool gelten als unabdingbar für die Serverfunktion. Daher darf der interne Pool Druck auf andere Pools ausüben, selbst wenn dies zu einer Verletzung der Grenzwerte für die anderen Pools führt.

HinweisHinweis

Die durch den internen Pool und die interne Gruppe belegten Ressourcen werden nicht von den insgesamt belegten Ressourcen abgezogen. Prozentwerte werden auf Basis der insgesamt verfügbaren Ressourcen berechnet.

Standardpool

Der Standardpool ist der erste vordefinierte Benutzerpool. Bevor eine anderweitige Konfiguration vorgenommen wird, enthält der Standardpool nur die Standardgruppe. Der Standardpool kann nicht erstellt oder gelöscht, jedoch geändert werden. Er kann neben der Standardgruppe noch benutzerdefinierte Gruppen enthalten.

HinweisHinweis

Die Standardgruppe kann zwar geändert, aber nicht aus dem Standardpool entfernt werden.

Benutzerdefinierte Ressourcenpools

Die Ressourcenkontrolle stellt DDL-Anweisungen zum Erstellen, Ändern und Löschen von Ressourcenpools bereit.

Ressourcenpooltasks

Aufgabenbeschreibung

Thema

Beschreibt, wie ein Ressourcenpool erstellt wird.

Erstellen eines Ressourcenpools

Beschreibt, wie Ressourcenpooleinstellungen geändert werden.

Ändern der Einstellungen für den Ressourcenpool

Beschreibt, wie ein Ressourcenpool gelöscht wird.

Löschen eines Ressourcenpools

Siehe auch

Konzepte

Ressourcenkontrolle

Arbeitsauslastungsgruppe der Ressourcenkontrolle

Klassifizierungsfunktion der Ressourcenkontrolle

Konfigurieren der Ressourcenkontrolle mit einer Vorlage

Anzeigen der Eigenschaften der Ressourcenkontrolle