Rechenkapazitätsgrenzen von bestimmten Editionen von SQL Server
In diesem Thema wird erläutert, wie Sie Kapazitätsgrenzen für verschiedene Editionen von SQL Server 2012 berechnen und wie sie sich in physischen und virtualisierten Umgebungen mit Hyperthreaded-Prozessoren unterscheiden.
In der folgenden Tabelle werden die Schreibweisen, die im oben angegebenen Diagramm verwendet werden, beschrieben:
Wert |
Beschreibung |
---|---|
0..1 |
Null oder Eins |
1 |
Genau eins |
1..* |
Ein oder mehr |
0..* |
0 oder mehr |
1..2 |
Einer oder zwei |
Wichtig |
---|
Weitere Details:
|
Die folgenden Definitionen gelten für die in diesem Thema verwendeten Begriffe:
Ein Thread oder logischer Prozessor ist aus der Sicht von SQL Server bzw. aus der Sicht des Betriebssystems, einer Anwendung oder eines Treibers ein logisches Computermodul.
Ein Kern ist eine Prozessoreinheit, die aus einem oder mehreren logischen Prozessoren bestehen kann.
Ein physischer Prozessor kann aus einem oder mehreren Kernen bestehen. Ein physischer Prozessor ist das Gleiche wie ein Prozessorpaket oder ein Socket.
Systeme mit mehr als einem physischen Prozessor oder Systeme mit physischen Prozessoren, die mehrere Kerne und/oder Hyperthreads haben, ermöglichen dem Betriebssystem, mehrere Tasks gleichzeitig auszuführen. Jeder Thread der Ausführung wird als logischer Prozessor angezeigt. Wenn Sie z. B. einen Computer haben, der zwei Quad-Core-Prozessoren hat, mit aktiviertem Hyperthreading und zwei Threads pro Kern, haben Sie 16 logische Prozessoren: 2 Prozessoren x 4 Kerne pro Prozessor x 2 Threads pro Kern. Beachten Sie dabei Folgendes:
Die Rechenkapazität eines logischen Prozessors von einem einzelnen Thread eines Hyperthread-Kerns ist geringer als die Rechenkapazität eines logischen Prozessors von diesem gleichen Kern mit deaktiviertem Hyperthreading.
Doch die Rechenkapazität der 2 logischen Prozessoren im Hyperthread-Kern ist größer als die Rechenkapazität des gleichen Kerns mit deaktiviertem Hyperthreading.
Ab SQL Server 2012 weist jede Edition von SQL Server zwei Begrenzungen der Rechenkapazität auf:
Die maximale Anzahl von Sockets (identisch mit physischem Prozessor oder Socket oder Prozessorpaket).
Die maximale Anzahl von Kernen, wie vom Betriebssystem gemeldet.
Diese Begrenzungen gelten für eine einzelne Instanz von SQL Server. Sie stellen die maximale Rechenkapazität dar, die eine einzelne Instanz verwendet. Sie schränken den Server nicht ein, auf dem die Instanz möglicherweise bereitgestellt wird. Die Bereitstellung mehrerer SQL Server-Instanzen auf demselben physischen Server ist zweifellos eine effiziente Möglichkeit, die Rechenkapazität eines physischen Servers mit mehr Sockets und/oder Kernen zu nutzen, als unten für die Kapazitätsgrenzen angegeben ist.
Die folgende Tabelle gibt die Rechenkapazitätsgrenzen für eine einzelne Instanz jeder Edition von SQL Server 2012 an:
SQL Server-Edition |
Maximale von einer einzelnen Instanz verwendete Rechenkapazität (SQL Server-Datenbankmodul) |
Maximale von einer einzelnen Instanz verwendete Rechenkapazität (AS, RS) |
---|---|---|
Enterprise Edition: Kernbasierte Lizenzierung1 |
Maximum des Betriebssystems |
Maximum des Betriebssystems |
Entwickler |
Maximum des Betriebssystems |
Maximum des Betriebssystems |
Evaluation |
Maximum des Betriebssystems |
Maximum des Betriebssystems |
Business Intelligence |
Beschränkt auf weniger als 4 Sockets oder 16 Kerne |
Maximum des Betriebssystems |
Standard |
Beschränkt auf weniger als 4 Sockets oder 16 Kerne |
Beschränkt auf weniger als 4 Sockets oder 16 Kerne |
Web |
Beschränkt auf weniger als 4 Sockets oder 16 Kerne |
Beschränkt auf weniger als 4 Sockets oder 16 Kerne |
Express |
Beschränkt auf weniger als 1 Socket oder 4 Kerne |
Beschränkt auf weniger als 1 Socket oder 4 Kerne |
Express mit Tools |
Beschränkt auf weniger als 1 Socket oder 4 Kerne |
Beschränkt auf weniger als 1 Socket oder 4 Kerne |
Express with Advanced Services |
Beschränkt auf weniger als 1 Socket oder 4 Kerne |
Beschränkt auf weniger als 1 Socket oder 4 Kerne |
1 Die Enterprise Edition mit einer Lizenzierung auf Grundlage von Serverlizenz + Clientzugriffslizenz (für neue Verträge nicht verfügbar) ist auf maximal 20 Kerne pro SQL Server-Instanz beschränkt. Für das core-basierte Serverlizenzierungsmodell gelten keine Beschränkungen.
In einer virtualisierten Umgebung basiert die Rechenkapazitätsgrenze auf der Anzahl der logischen Prozessoren – nicht der Kerne, da die Prozessorarchitektur für die Gastanwendungen nicht sichtbar ist. Ein Server mit vier Sockets beispielsweise, bestückt mit Quad-Core-Prozessoren und der Fähigkeit, zwei Hyperthreads pro Kern zu aktivieren, enthält mit aktiviertem Hyperthreading 32 logische Prozessoren, bei deaktiviertem Hyperthreading jedoch nur 16 logische Prozessoren. Diese logischen Prozessoren können virtuellen Computern auf dem Server zugeordnet werden, wobei die Rechenlast des virtuellen Computers auf diesem logischen Prozessor einem Ausführungs-Thread auf dem physischen Prozessor im Hostserver zugeordnet wird.
Sie können das Hyperthreading deaktivieren, wenn die Leistung pro virtueller Prozessor wichtig ist. Sie können das Hyperthreading anhand einer BIOS-Einstellung für den Prozessor während des BIOS-Setups deaktivieren, aber es ist in der Regel ein Vorgang im Serverbereich, der sich auf alle Arbeitsauslastungen auswirkt, die auf dem Server ausgeführt werden. Dies weist darauf hin, Arbeitsauslastungen, die in virtualisierten Umgebungen ausgeführt werden, von denen zu trennen, die in einer physischen Betriebssystemumgebung von der Hyperthreading-Leistungssteigerung profitieren würden.
Siehe auch
Verweis
Editionen und Komponenten von SQL Server 2012
Spezifikationen der maximalen Kapazität für SQL Server