In-Memory-Datenbanksysteme und -Technologien

Gilt für: SQL Server

Diese Seite ist als Referenzseite für In-Memory-Features und -Technologien in SQL Server gedacht. Ein In-Memory-Datenbanksystem ist ein Datenbanksystem, das so konzipiert ist, dass es die in modernen Datenbanksystemen verfügbaren größeren Arbeitsspeicherkapazitäten nutzt. In-Memory-Datenbanken können relational oder nicht relational sein.

Häufig wird angenommen, dass die bessere Leistung von In-Memory-Datenbanksystemen hauptsächlich darauf zurückzuführen ist, dass auf Daten im Arbeitsspeicher (um ein Vielfaches) schneller zugegriffen werden kann als auf Daten auf dem schnellsten Datenträgersubsystem. Allerdings passt bei vielen SQL Server-Arbeitsauslastungen der gesamte Arbeitssatz in den verfügbaren Arbeitsspeicher. Viele In-Memory-Datenbanksysteme können Daten persistent auf Datenträgern speichern, und möglicherweise passt nicht immer das gesamte Dataset in den verfügbaren Arbeitsspeicher.

Bei Arbeitsauslastungen von relationalen Datenbanken ist ein schneller flüchtiger Cache vor deutlich langsameren, aber langlebigen Medien üblich. Hierfür sind bestimmte Ansätze bei der Arbeitsauslastungsverwaltung erforderlich. Die Möglichkeiten, die sich durch schnellere Übertragungsraten von Arbeitsspeichern, größere Kapazität oder sogar persistenten Speicher ergeben, erleichtern die Entwicklung von neuen Features und Technologien, die neue Ansätze für die Arbeitsauslastungsverwaltung von relationalen Datenbanken vorantreiben können.

Hybrider Pufferpool

Gilt für: SQL Server

Bei einem hybriden Pufferpool wird der Pufferpool für Datenbankdateien, die auf byteadressierbaren Speichergeräten mit persistentem Speicher liegen, für Windows- und Linuxplattformen mit SQL Server 2019 (15.x) erweitert.

Speicheroptimierte tempdb-Metadaten

Gilt für: SQL Server

Mit SQL Server 2019 (15.x) wird eine neue Funktion für speicheroptimierte tempdb-Metadaten eingeführt, durch die einige Engpässe aufgrund von Konflikten effektiv behoben werden und sich eine neue Ebene der Skalierbarkeit für tempdb intensive Workloads ergibt.

Weitere Informationen zu den neuesten tempdb Verbesserungen, einschließlich speicheroptimierter Metadaten in SQL Server 2019 (15.x) und neueren Features, finden Sie unter Verbessern der Skalierbarkeit mit Verbesserungen der Systemseitennebenläufigkeit in SQL Server 2022 und Verbesserungen der Systemseitennebenläufigkeit (Ep. 6) | Daten verfügbar.

In-Memory-OLTP

Gilt für: SQL Server

In-Memory-OLTP ist eine in SQL Server und SQL-Datenbank verfügbare Datenbanktechnologie für die Optimierung der Transaktionsverarbeitung, des Erfassens und Ladens von Daten sowie vorübergehender Datenszenarien.

Unterstützung für persistenten Speicher konfigurieren unter Linux

Gilt für: SQL Server - Linux

SQL Server 2019 (15.x) beschreibt, wie Sie persistenten Speicher (PMEN) unter Verwendung des ndctlpersistenten Speichers des Hilfsprogramms konfigurieren.

Persistenter Protokollpuffer

Mit dem Service Pack 1 von SQL Server 2016 (13.x) wurde die Leistung bei schreibintensiven Arbeitsauslastungen, die mit WRITELOG-Wartevorgängen verbunden waren, optimiert. Der Protokollpuffer wird im persistenten Speicher gespeichert. Dieser kleine Puffer (20 MB pro Benutzerdatenbank) muss auf einen Datenträger geleert werden, damit die im Transaktionsprotokoll erfassten Transaktionen festgeschrieben werden. Bei schreibintensiven OLTP-Arbeitsauslastungen kann dieser Leerungsmechanismus zu einem Engpass werden. Mit dem Protokollpuffer im persistenten Speicher wird die Anzahl von für das Festschreiben des Protokolls erforderlichen Vorgängen verringert, wodurch die Gesamtdauer von Transaktionen optimiert und die Leistung der Arbeitsauslastungen verbessert wird. Dieser Prozess wurde ursprünglich als Tail of Log Caching (Protokollfragmentzwischenspeicherung) eingeführt. Dies wurde allerdings als Widerspruch zur Protokollfragmentsicherung sowie zu der traditionellen Auffassung, dass ein Protokollfragment der Teil eines Transaktionsprotokolls ist, der festgeschrieben, aber noch nicht gesichert wurde, wahrgenommen. Da die offizielle Bezeichnung für das Feature „Persisted Log Buffer“ (persistenter Protokollpuffer) ist, wird diese Bezeichnung hier verwendet.

Weitere Informationen finden Sie unter Hinzufügen eines persistenten Protokollpuffers zu einer Datenbank.