Die Wiederherstellung zu einem bestimmten Zeitpunkt (Point-in-time Recovery, PITR) in Spanner bietet Schutz vor versehentlichem Löschen oder Schreiben. Wenn ein Operator beispielsweise versehentlich Daten schreibt oder eine Anwendungseinführung eine beschädigte Datenbank verursacht, können Sie mit PITR die Daten eines früheren Zeitpunkts nahtlos wiederherstellen, der maximal sieben Tage zurückliegt. Wenn Sie Daten längerfristig aufbewahren müssen, können Sie entweder Sicherung und Wiederherstellung oder Export und Import verwenden.
Standardmäßig werden alle Versionen der Daten und des Schemas Ihrer Datenbank eine Stunde lang beibehalten. Sie können dieses Zeitlimit über die Option version_retention_period
auf bis zu sieben Tage verlängern. Eine Anleitung finden Sie unter Aufbewahrungszeitraum festlegen.
Spanner speichert frühere Versionen von Daten mit einem Mikrosekundendetaillierungsgrad, und die Datenbank verwaltet ein earliest_version_time
, das die früheste Zeit in der Vergangenheit darstellt, in der Sie frühere Versionen der Daten wiederherstellen können.
Möglichkeiten zur Datenwiederherstellung
Es gibt zwei Möglichkeiten, Daten wiederherzustellen:
Zum Wiederherstellen eines Teils der Datenbank führen Sie einen veralteten Lesevorgang aus, in dem eine Abfragebedingung und ein Zeitstempel in der Vergangenheit angegeben sind, und schreiben die Ergebnisse dann wieder in die Live-Datenbank. Dies wird in der Regel für operative Vorgänge in einer Livedatenbank verwendet. Wenn Sie beispielsweise eine bestimmte Zeile versehentlich löschen oder eine Teilmenge der Daten falsch aktualisieren, können Sie diese mit dieser Methode wiederherstellen. Eine Anleitung finden Sie unter Teil einer Datenbank wiederherstellen.
Wenn Sie die gesamte Datenbank wiederherstellen möchten, sichern oder exportieren Sie die Datenbank, indem Sie einen Zeitstempel in der Vergangenheit angeben und dann wiederherstellen oder in eine neue Datenbank importieren. Dies wird in der Regel zur Wiederherstellung nach Datenbeschädigungsproblemen verwendet, wenn Sie die Datenbank auf einen Zeitpunkt vor dem Auftreten der Beschädigung zurücksetzen müssen. Beachten Sie, dass das Sichern oder Exportieren einer Datenbank mehrere Stunden dauern kann und Sie nicht in eine vorhandene Datenbank hinein wiederherstellen oder importieren können. Eine Anleitung finden Sie unter Gesamte Datenbank wiederherstellen.
Hinweise zur Leistung
Datenbanken mit längeren Aufbewahrungszeiträumen und insbesondere solche, die Daten häufig überschreiben, benötigen mehr Systemressourcen. Dies kann sich auf die Leistung Ihrer Datenbank auswirken, insbesondere wenn die Instanz nicht mit genügend Rechenkapazität bereitgestellt wird.´ Wenn Ihre Datenbank eine sehr hohe Überschreibungsrate hat (z. B. wenn Ihre Datenbank mehrmals am Tag überschrieben wird), können Sie die Aufbewahrungsdauer schrittweise erhöhen und das System überwachen. Beachten Sie Folgendes:
Erhöhte Speicherauslastung Wir empfehlen, Speicherbenachrichtigungen einzurichten, um sicherzustellen, dass die Speichergrenze nicht überschritten wird. Beachten Sie bei der Erhöhung der Aufbewahrungsdauer, dass die Speichernutzung allmählich zunimmt, wenn die Datenbank ältere Datenversionen sammelt. Dies liegt daran, dass die alten Daten, die unter der vorherigen Aufbewahrungsdauer abgelaufen sind, nicht mehr abgelaufen sind. Wenn Sie beispielsweise die Aufbewahrungsdauer von drei Tagen auf sieben Tage erhöhen, müssen Sie vier Tage warten, bis die Speichernutzung der Datenbank stabilisiert wurde. Außerdem erhalten Sie eine Anleitung zum Schätzen der Speichererweiterung.
Erhöhte CPU-Auslastung und -Latenz. Spanner verwendet zusätzliche Rechenressourcen, um frühere Datenversionen zu komprimieren und zu verwalten. Überwachen Sie Ihre Instanz und Datenbank, um sicherzustellen, dass die Latenz und die CPU-Auslastung akzeptabel sind.
Erhöhte Zeit für die Durchführung von Schemaaktualisierungen. Eine längere Aufbewahrungsdauer bedeutet, dass Schemaversionen für längere Zeit beibehalten werden müssen. Dies kann dazu führen, dass Schemaaktualisierungen während der Wartezeit für Serverressourcen
throttled
werden. Achten Sie darauf, dass Sie die Best Practices für Schemaaktualisierungen einhalten und die Limits für Schemaaktualisierungen einhalten.
Preise
Für die Verwendung von PITR fallen keine zusätzlichen Kosten an. Wenn Sie den Aufbewahrungszeitraum für Versionen Ihrer Datenbank jedoch über die Standardeinstellung von einer Stunde hinaus verlängern, können sich die Kosten für den Speicher und die Rechenkapazität Ihrer Datenbank erhöhen. Die Kosten für Ihre On‑Demand-Sicherung sind davon nicht betroffen, da nur eine einzelne Version Ihrer Datenbank gespeichert wird. Weitere Informationen finden Sie im Abschnitt Überlegungen zur Leistung. Bevor Sie die Versionsaufbewahrungsdauer einer Datenbank erhöhen, können Sie die erwartete Zunahme des Datenbankspeichers schätzen.
Allgemeine Informationen zur Abrechnung von Spanner finden Sie unter Spanner-Preise.