RDB-Persistenz

Auf dieser Seite finden Sie eine Übersicht über die RDB-Persistenz (Redis-Datenbank) in Memorystore for Redis Cluster.

Informationen zum Aktivieren, Deaktivieren und Überwachen der RDB-Persistenz finden Sie unter Persistenz verwalten.

Informationen zu Best Practices für die RDB-Persistenz finden Sie unter Best Practices für die Persistenz.

Mit der RDB-Persistenzfunktion werden Snapshots Ihrer Daten in einem dauerhaften Speicher gespeichert, um Ihre Daten zu schützen. Sie wählen die Häufigkeit dieser Snapshots aus, indem Sie ein Snapshot-Intervall von mindestens 1 Stunde bis maximal 24 Stunden festlegen. Bei Knotenausfällen werden Daten auch dann wiederhergestellt, wenn ein Failover nicht möglich ist.

Bei Knoten mit Replikaten hat die Datenwiederherstellung aus dem Replikat Priorität. Wenn jedoch sowohl der primäre Knoten als auch das Replikat gleichzeitig ausfallen, werden die Knoten aus dem letzten Snapshot wiederhergestellt.

Durch die RDB-Persistenz entstehen keine zusätzlichen Kosten für die Instanzabrechnung. Diese Funktion ist ideal für Anwendungsfälle, in denen eine geringe Datenveralterung nach der Wiederherstellung akzeptabel ist. Da Memorystore Snapshots für die automatische Wiederherstellung verwendet, sind Snapshots nicht für manuelle Wiederherstellungen verfügbar. Außerdem wird nur der letzte erfolgreiche Snapshot beibehalten.

Memorystore for Redis Cluster unterstützt auch die AOF-Persistenz. Sie müssen jedoch entweder den AOF- oder den RDB-Persistenzmodus auswählen, da beide nicht gleichzeitig aktiviert werden können. Informationen zur Auswahl zwischen den beiden Persistenzmodi finden Sie unter Übersicht über die Persistenz. Für die bestmögliche Verfügbarkeit empfehlen wir, zusätzlich zur Aktivierung der Persistenz eine Instanz mit Hochverfügbarkeit zu verwenden.

Snapshot-Zeitplanung

Die Snapshot-Zeitplanung wird durch zwei Einstellungen bestimmt: die Snapshot-Startzeit und das Snapshot-Intervall. Sie können die Intervalle 1h, 6h, 12h und 24h festlegen. Wenn Sie beispielsweise die Startzeit auf 4:00 Uhr und das Intervall auf eine Stunde festlegen, werden die Snapshots ab 4:00 Uhr an dem Tag erstellt, an dem sie aktiviert werden, und danach jede Stunde.

Snapshot-Zeitpläne werden in der UTC-Zeitzone ausgewertet. Daher werden lokale Zeitzonen mit Sommerzeitumstellung angepasst. In den USA werden beispielsweise am Anfang und Ende der Sommerzeit die lokalen Startzeiten der geplanten Snapshot-Zeitpläne um eine Stunde vor oder zurück verschoben, wenn Ihre Zeitzone die Sommerzeitumstellung berücksichtigt.

Snapshots pausieren

Es kann vorkommen, dass Sie die Erstellung von RDB-Snapshots für einen bestimmten Zeitraum pausieren möchten. Das kann erforderlich sein, um Leistungseinbußen bei kritischen Ereignissen zu vermeiden oder Snapshots vorübergehend zu deaktivieren, um Leistungsprobleme zu beheben.

Wenn Sie Snapshots pausieren möchten, müssen Sie die Startzeit in die Zukunft verschieben. In diesem Fall wird der letzte Snapshot beibehalten und im Falle einer Wiederherstellung verwendet. Wenn Sie Snapshots wieder aufnehmen möchten, passen Sie den Snapshot-Zeitplan so an, dass der nächste Snapshot zum gewünschten Zeitpunkt erstellt wird. Weitere Informationen zum Anpassen von Snapshot-Zeitplänen finden Sie unter RDB-Snapshot-Intervall anpassen.

Verhalten bei der Wiederherstellung

Bei Memorystore for Redis Cluster-Knoten wird ein Failover zu Replikaten als primärer Wiederherstellungsmechanismus verwendet, anstatt Daten aus einem Snapshot zu laden. Wenn ein Knoten jedoch ausfällt und nicht aus einem Replikat wiederhergestellt werden kann, wird er aus einem Snapshot wiederhergestellt.

Datenkonsistenz bei der Wiederherstellung

Wenn die RDB-Persistenz aktiviert ist, werden Sicherungen nach Möglichkeit im angegebenen Intervall erstellt. Snapshots können aus verschiedenen Gründen fehlschlagen. Wenn der Snapshot in mehreren aufeinanderfolgenden Intervallen fehlschlägt, kann die letzte verfügbare Sicherung beliebig veraltet sein.

Die maximale Datenveralterung bei einer Wiederherstellung aus einem Snapshot ist die Summe des angegebenen Intervalls seit dem Start des letzten guten Snapshots und der Zeit, die zum Speichern des nächsten Snapshots im Speicher benötigt wird. Verwenden Sie im Falle eines Wiederherstellungs ereignisses den rdb_save_ages Messwert, um den Zeitraum für die Datenveralterung zu sehen.

Wiederherstellungszeit

Wenn ein Knoten ausfällt und Daten aus einem Snapshot wiederhergestellt werden müssen, ist der Knoten während der Wiederherstellung nicht verfügbar. Die Wiederherstellungszeit hängt von der Größe des Snapshots ab.

Snapshot-Fehler

Jeder fehlgeschlagene Snapshot wird sofort mit einem exponentiellen Backoff von 5 bis 300 Sekunden wiederholt. Aufeinanderfolgende Snapshot-Fehler erhöhen die Datenveralterung im Falle einer Wiederherstellung.

Fehler bei der Wiederherstellung

Fehler bei der Wiederherstellung sind selten, können aber auftreten. Wenn ein Fehler bei der Wiederherstellung auftritt, wird der Knoten wiederholt wiederhergestellt, bis die Wiederherstellung erfolgreich ist.

Snapshots überwachen

Es ist wichtig, Snapshots zu überwachen und Benachrichtigungen für fehlgeschlagene Snapshots einzurichten. Informationen zu Best Practices für die RDB-Persistenz finden Sie unter Best Practices für die RDB-Persistenz. Fehlgeschlagene Snapshots können auf überlastete Knoten hinweisen, bei denen es möglicherweise weiterhin schwierig ist, Daten aus dem Snapshot wiederherzustellen.

Eine Liste der Messwerte, die für das Monitoring von Snapshots verfügbar sind, finden Sie unter Persistenzmesswerte.

Auswirkungen auf die Leistung verwalten

Sie können die Auswirkungen eines Snapshots auf die Leistung Ihrer Memorystore-Instanz beobachten, indem Sie die über Cloud Monitoring verfügbaren Messwerte wie CPU-Auslastung und Arbeitsspeichernutzung ansehen.