Skip to main content
Enterprise applications
Die deutsche Sprachversion wurde als Serviceleistung für Sie durch maschinelle Übersetzung erstellt. Bei eventuellen Unstimmigkeiten hat die englische Sprachversion Vorrang.

Microsoft SQL Server-Speicherkonfiguration

Beitragende

Im folgenden Abschnitt wird das Konfigurieren der Speichereinstellungen des SQL-Servers erläutert, um die Datenbankleistung zu optimieren.

Max. Serverspeicher

Mit der Option „Max. Serverspeicher“ wird die maximale Speichergröße festgelegt, die die SQL Server-Instanz verwenden kann.

Sie wird in der Regel verwendet, wenn mehrere Anwendungen auf demselben Server ausgeführt werden, auf dem SQL Server ausgeführt wird, und Sie sicherstellen möchten, dass diese Anwendungen über genügend Arbeitsspeicher verfügen, um ordnungsgemäß zu funktionieren.

Einige Anwendungen verwenden nur den verfügbaren Speicher, wenn sie starten, und fordern nicht mehr an, selbst wenn nötig. Hier kommt die maximale Serverspeichereinstellung ins Spiel.

Auf einem SQL Server-Cluster mit mehreren SQL Server-Instanzen könnte jede Instanz mit Ressourcen konkurrieren. Durch die Festlegung einer Speichergrenze für jede SQL Server-Instanz kann eine optimale Performance für jede Instanz gewährleistet werden.

Tipp NetApp empfiehlt, mindestens 4 GB bis 6 GB RAM für das Betriebssystem zu belassen, um Leistungsprobleme zu vermeiden.

Fehler: Fehlendes Grafikbild

Anpassen des minimalen und maximalen Serverspeichers mit SQL Server Management Studio

Die Verwendung von SQL Server Management Studio zur Anpassung des minimalen oder maximalen Serverspeichers erfordert einen Neustart des SQL Server-Dienstes. Sie können den Serverspeicher mithilfe von Transact SQL (T-SQL) mit diesem Code anpassen:

EXECUTE sp_configure 'show advanced options', 1
GO
EXECUTE sp_configure 'min server memory (MB)', 2048
GO
EXEC sp_configure 'max server memory (MB)', 120832
GO
RECONFIGURE WITH OVERRIDE

Uneinheitlicher Speicherzugriff

NUMA (Ununiform Memory Access) ist eine Methode zur Optimierung des Speicherzugriffs, die dazu beiträgt, die Prozessorgeschwindigkeit zu erhöhen, ohne die Last auf den Prozessorbus zu erhöhen.

Wenn NUMA auf dem Server konfiguriert ist, auf dem SQL Server installiert ist, ist keine zusätzliche Konfiguration erforderlich, da SQL Server NUMA-fähig ist und auf NUMA-Hardware eine gute Performance erzielt.

Index Speicher erstellen

Die Option Index create Memory ist eine weitere erweiterte Option, die Sie normalerweise nicht ändern sollten.

Er steuert die maximale RAM-Größe, die ursprünglich für die Erstellung von Indizes zugewiesen wurde. Der Standardwert für diese Option ist 0, was bedeutet, dass sie von SQL Server automatisch verwaltet wird. Wenn Sie jedoch Schwierigkeiten beim Erstellen von Indizes haben, sollten Sie den Wert dieser Option erhöhen.

Min. Arbeitsspeicher pro Abfrage

Wenn eine Abfrage ausgeführt wird, versucht SQL Server, die optimale Speichergröße für eine effiziente Ausführung zuzuweisen.

Standardmäßig weist die Einstellung Min. Speicher pro Abfrage >= bis 1024 KB für jede auszufüllende Abfrage zu. Es empfiehlt sich, diese Einstellung auf den Standardwert 0 zu belassen, damit SQL Server die für Indexerstellung zugewiesene Speichermenge dynamisch verwalten kann. Wenn SQL Server jedoch über mehr RAM verfügt, als für eine effiziente Ausführung erforderlich ist, kann die Leistung einiger Abfragen erhöht werden, wenn Sie diese Einstellung erhöhen. Solange also auf dem Server, der nicht von SQL Server verwendet wird, Speicher verfügbar ist, können andere Anwendungen oder das Betriebssystem diese Einstellung erhöhen, was die gesamte SQL Server-Leistung verbessern kann. Wenn kein freier Speicher verfügbar ist, kann eine Erhöhung dieser Einstellung die Gesamtleistung beeinträchtigen.

Fehler: Fehlendes Grafikbild

Pufferpool-Erweiterungen

Die Pufferpool-Erweiterung ermöglicht die nahtlose Integration einer NVRAM-Erweiterung in den Puffer-Pool der Datenbank-Engine und sorgt so für eine deutliche Steigerung des I/O-Durchsatzes.

Die Pufferpool-Erweiterung ist nicht in jeder SQL Server-Edition verfügbar. Es ist nur mit den 64-Bit-Editionen SQL Server Standard, Business Intelligence und Enterprise verfügbar.

Die Funktion zur Erweiterung des Puffer-Pools erweitert den Cache des Puffers auf nicht-flüchtigen Storage (in der Regel SSDs). Durch die Erweiterung kann der Puffer-Pool einen größeren Datenbank-Arbeitsdatensatz aufnehmen. So wird der Ausruf von I/O zwischen dem RAM und den SSDs erzwungen und kleine zufällige I/O-Vorgänge werden von mechanischen Festplatten auf SSDs ausgelagert. Aufgrund der geringeren Latenz und besseren zufälligen I/O-Performance von SSDs verbessert die Pufferpool-Erweiterung den I/O-Durchsatz erheblich.

Die Funktion zur Erweiterung des Puffer-Pools bietet folgende Vorteile:

  • Erhöhter Durchsatz von zufälligen I/O-Operationen

  • Geringere I/O-Latenz

  • Erhöhter Transaktionsdurchsatz

  • Verbesserte Lese-Performance mit einem größeren hybriden Puffer-Pool

  • Eine Caching-Architektur, die die Vorteile eines vorhandenen und künftig kostengünstigen Speichers nutzt

Tipp

NetApp empfiehlt, die Pufferpool-Erweiterungen so zu konfigurieren:

  • Stellen Sie sicher, dass eine SSD-gestützte LUN (wie NetApp AFF) dem SQL Server-Host angezeigt wird, damit diese als Zielfestplatte zur Pufferpool-Erweiterung verwendet werden kann.

  • Die Erweiterungsdatei muss die gleiche Größe wie oder größer als der Pufferpool haben.

Das folgende Beispiel zeigt einen T-SQL-Befehl zum Einrichten einer Pufferpool-Erweiterung von 32 GB.

USE master
GO
ALTER SERVER CONFIGURATION
SET BUFFER POOL EXTENSION ON
  (FILENAME = ‘P:\BUFFER POOL EXTENSION\SQLServerCache.BUFFER POOL EXTENSION', SIZE = 32 GB);
GO