NUMA-Szenarien
Aktualisiert: 14. April 2006
Auf Computern mit mehreren CPUs kann NUMA-Hardware (Non-Uniform Memory Access) die Leistung deutlich steigern, indem den CPUs dedizierter Speicher zugeordnet wird. In diesem Thema werden einige NUMA-, CPU-Affinitäts- und Verbindungsaffinitätskonfigurationen vorgestellt, durch die die Leistung für bestimmte Szenarien weiter erhöht werden kann. Die folgenden Einstellungen wirken sich auf diese Konfigurationen aus:
- Der Computerhersteller stellt NUMA-Hardware bereit.
- Über die Registrierung wird Soft-NUMA festgelegt. Informationen zum Konfigurieren von Soft-NUMA finden Sie unter Vorgehensweise: Konfigurieren von SQL Server für die Verwendung von Soft-NUMA.
- Die CPU-Affinität wird mithilfe der affinity mask-Option festgelegt.
- Die Port-zu-NUMA-Affinität wird in Form einer Servereinstellung im Konfigurations-Manager von SQL Server konfiguriert. Weitere Informationen finden Sie unter Vorgehensweise: Zuordnen von TCP/IP-Ports zu NUMA-Knoten.
Nützliche Szenarien
Beim Verwenden von NUMA treten häufig die folgenden Szenarien auf.
A. Keine Affinität zwischen Port und NUMA
Dies ist die Standardbedingung auf einem Computer mit NUMA-Hardware und einer einzelnen Instanz von SQL Server 2005. Der gesamte Datenverkehr erhält Zugang über einen einzelnen Port und wird im Round-Robin-Verfahren an alle verfügbaren NUMA-Knoten verteilt. NUMA verbessert die Treffsicherheit des Speicher- und CPU-Zugriffs und erhöht die Anzahl von E/A-Threads und Threads für LAZY WRITER-Prozesse (verzögertes Schreiben). Der Gültigkeitsbereich von Verbindungen wird nach ihrem Aufbau auf diesen Knoten festgelegt. Dadurch wird ein automatischer Lastenausgleich zwischen den NUMA-Knoten ermöglicht. Die Clientanwendungen können eine Verbindung mit einem einzelnen Port aufbauen und können problemlos bereitgestellt werden.
B. Zuordnen eines einzelnen Ports zu mehreren Knoten, um für eine vorrangige Anwendung eine verbesserte Leistung bereitzustellen
Zuordnen eines Ports zu verschiedenen Hardware-NUMA-Knoten, um eine Hauptanwendung mit hoher Priorität zu bedienen. Zuordnen eines zweiten Ports zu einem anderen Hardware-NUMA-Knoten, um eine zweite Anwendung mit untergeordneter Priorität zu bedienen. Die Arbeitsspeicherressourcen und CPU-Ressourcen der beiden Anwendungen werden unausgeglichen verteilt, wobei die Hauptanwendung die dreifache Menge an lokalem Arbeitsspeicher und an CPU-Ressourcen wie die untergeordnete Anwendung erhält. Die untergeordnete Anwendung kann eine zweite Instanz von Datenbankmodul, eine weniger wichtige Funktion in derselben Instanz von Datenbankmodul oder auch dieselbe Datenbank sein. Auf diese Weise kann eine Form von prioritätsbezogener Threadausführung ermöglicht werden, indem für die bevorzugte Verbindung zusätzliche Ressourcen bereitgestellt werden.
C. Zuordnen mehrerer Ports zu mehreren Knoten
Einem NUMA-Knoten können mehrere Ports zugeordnet werden. Dies ermöglicht Ihnen die Konfiguration unterschiedlicher Berechtigungen für einzelne Ports. Sie können z. B. den durch einen Port bereitgestellten Zugriff stark einschränken, indem Sie die Berechtigungen für den entsprechenden TCP-Endpunkt steuern. In diesem Beispiel ist Port 1450 umfassend für das Intranet verfügbar. Port 1433 ist über eine Firewall offen zum Internet, doch ist der Zugriff stark eingeschränkt. Beide Ports nutzen vollständig und in gleicher Weise die Vorteile von NUMA.
Siehe auch
Konzepte
Grundlegendes zu NUMA (Non-Uniform Memory Access)
Unterstützung der NUMA-Funktionalität in SQL Server 2005
Hilfe und Informationen
Informationsquellen für SQL Server 2005
Änderungsverlauf
Version | Verlauf |
---|---|
14. April 2006 |
|
05. Dezember 2005 |
|