Unterstützung für Hochverfügbarkeit für In-Memory OLTP-Datenbanken

Gilt für:SQL Server

Datenbanken mit speicheroptimierten Tabellen mit bzw. ohne systemeigene kompilierte gespeicherte Prozeduren werden mit AlwaysOn-Verfügbarkeitsgruppen vollständig unterstützt. Es gibt keinen Unterschied in der Konfiguration und Unterstützung für Datenbanken, die Im-Memory-OLTP-Objekte enthalten, im Vergleich zu denen ohne.

Änderungen an speicheroptimierten Tabellen im primären Replikat werden während der Rollforwardphase auf die Tabellen im sekundären Replikat angewendet. So ist ein schnelles Failover auf das sekundäre Replikat möglich, weil sich die Daten bereits im Arbeitsspeicher befinden. Tabellen sind für Leseabfragen in sekundären Replikaten verfügbar, die für den Lesezugriff konfiguriert wurden.

AlwaysOn-Verfügbarkeitsgruppen und In-Memory OLTP-Datenbanken

Das Konfigurieren von Datenbanken mit IN-Memory-OLTP-Komponenten bietet die folgenden Vorteile:

  • Eine vollständig integrierte Lösung
    Sie können Ihre Datenbanken mit speicheroptimierten Tabellen unter Verwendung des gleichen Assistenten mit der gleichen Ebene der Unterstützung für synchrone und asynchrone sekundäre Replikate konfigurieren. Darüber hinaus erfolgt die Systemüberwachung über das vertraute AlwaysOn-Dashboard in SQL Server Management Studio.

  • Vergleichbare Failoverzeit
    Sekundäre Replikate behalten den im Speicher enthaltenen Status der dauerhaften speicheroptimierten Tabellen. Bei einem automatischen oder erzwungenen Failover ist die für das Failover auf das neue primäre Replikat erforderliche Zeit mit der für datenträgerbasierte Tabellen vergleichbar, da keine Wiederherstellung notwendig ist. Speicheroptimierte Tabellen, die als SCHEMA_ONLY erstellt wurden, werden in dieser Konfiguration unterstützt. Änderungen an diesen Tabellen werden jedoch nicht protokolliert. Deshalb sind in diesen Tabellen auf dem sekundären Replikat keine Daten vorhanden.

  • Lesbares sekundäres Replikat
    Sie können auf speicheroptimierte Tabellen im sekundären Replikat zugreifen und sie abfragen, wenn es für den Lesezugriff konfiguriert wurde. In SQL Server 2016 (13.x) befindet sich der Lesezeitstempel des sekundären Replikats in enger Synchronisierung mit dem Lesezeitstempel des primären Replikats, was bedeutet, dass Änderungen am primären Replikat schnell sichtbar werden. Dieses Verhalten bei der schließenden Synchronisierung unterscheidet sich von SQL Server 2014 (12.x) Im Arbeitsspeicher OLTP.

Überlegungen

  • In SQL Server 2019 wurde eine parallele Rollforwardphase für arbeitsspeicheroptimierte Datenbanken in Verfügbarkeitsgruppen eingeführt. In SQL Server 2016 und 2017 verwenden datenträgerbasierte Tabellen keine parallele Rollforwardphase, wenn eine Datenbank in einer Verfügbarkeitsgruppe ebenfalls arbeitsspeicheroptimiert ist.

Failoverclustering-Instanz (FCI) und In-Memory OLTP-Datenbanken

Um in einer Konfiguration mit freigegebenem Speicher Hochverfügbarkeit zu erreichen, können Sie eine Failoverclusterinstanz mit Datenbanken einrichten, die speicheroptimierte Tabellen verwenden. Beim Einrichten einer FCI müssen Sie die folgenden Faktoren berücksichtigen:

  • Wiederherstellungszeit-Zielsetzung
    Die Failoverzeit wird wahrscheinlich höher sein, da speicheroptimierte Tabellen in den Arbeitsspeicher geladen werden müssen, bevor die Datenbank verfügbar gemacht wird.

  • SCHEMA_ONLY-Tabellen
    Beachten Sie, dass SCHEMA_ONLY-Tabellen nach dem Failover ohne Zeilen, also leer sind. Dies ist so von der Anwendung definiert. Dies ist genau dasselbe Verhalten, wenn Sie eine OLTP-Datenbank im Arbeitsspeicher mit einer oder mehreren SCHEMA_ONLY Tabellen neu starten.

Unterstützung für Transaktionsreplikation in In-Memory OLTP

Die Tabellen, die als Transaktionsreplikationsabonnenten fungieren, können (mit Ausnahme der Peer-zu-Peer-Transaktionsreplikation) als speicheroptimierte Tabellen konfiguriert werden. Andere Replikationskonfigurationen sind mit speicheroptimierten Tabellen nicht kompatibel. Weitere Informationen finden Sie unter Replikation mit Abonnenten von speicheroptimierten Tabellen.

Weitere Informationen

Always On-Verfügbarkeitsgruppen (SQL Server)
Übersicht über Always On-Verfügbarkeitsgruppen (SQL Server)
Aktive sekundäre Replikate: Lesbare sekundäre Replikate (Always On-Verfügbarkeitsgruppen)
Replikation mit Abonnenten von speicheroptimierten Tabellen