Wiederherstellung zu einem bestimmten Zeitpunkt (PITR) – Übersicht

Die Wiederherstellung zu einem bestimmten Zeitpunkt (Point-in-time Recovery, PITR) schützt vor versehentlichem Löschen oder Schreiben. Bei PITR werden Versionen Ihrer Dokumente aus vergangenen Zeitstempeln beibehalten. Wenn ein Entwickler beispielsweise falsche Daten überträgt oder Daten versehentlich löscht oder überschreibt, können Sie mit PITR die Daten eines früheren Zeitpunkts wiederherstellen, der maximal sieben Tage zurückliegt.

Bei jeder Live-Datenbank, die den Best Practices entspricht, wirkt sich die Verwendung von PITR nicht auf die Leistung von Lese- oder Schreibvorgängen aus.

PITR-Zeitraum

Nachdem Sie PITR aktiviert haben, beginnt Cloud Firestore mit der Aufbewahrung von PITR-Daten. PITR-Daten werden im PITR-Zeitfenster 7 Tage lang aufbewahrt.

Sie können Daten für einen Zeitstempel lesen, der auf dem Zeitpunkt basiert, zu dem PITR aktiviert wurde:

Status der Aktivierung der Wiederherstellung zu einem bestimmten Zeitpunkt Früheste verfügbare PITR-Daten
Deaktiviert 1 Stunde vor dem Zeitpunkt der Leseanfrage
innerhalb von 7 Tagen aktiviert 1 Stunde vor der Aktivierung von PITR
vor mehr als 7 Tagen aktiviert 7 Tage vor dem Zeitpunkt der Leseanfrage

Im PITR-Zeitraum wird nur eine Version pro Minute beibehalten. Sie können Dokumente mit einer Zeitstempelgenauigkeit von einer Minute lesen. Lesevorgänge, die nicht auf Minutenebene erfolgen, z. B. 2023-05-30 09:00:00.1234AM, geben einen Fehler zurück, dass read_time zu alt ist.

Bei mehreren Schreibvorgängen wird nur eine Version eines Dokuments beibehalten. Wenn beispielsweise ein Dokument mehrere Schreibvorgänge im Bereich von v1, v2, ... vk zwischen dem Zeitstempel 2023-05-30 09:00:00AM (ausschließlich) und 2023-05-30 09:01:00AM (einschließlich) hatte, wird bei einer Leseanfrage mit dem Zeitstempel 2023-05-30 09:01:00AM die vk-Version des Dokuments zurückgegeben.

Sie können Daten lesen, die während des PITR-Zeitraums erstellt wurden. Die Daten werden mit einer Granularität von einer Minute gespeichert und können mit derselben Granularität wiederhergestellt werden. Die PITR-Funktion ist standardmäßig deaktiviert.

Das Feld earliestVersionTime Ihrer Datenbank gibt den frühesten zulässigen Lesezeitpunkt für Ihre Daten an.

Unabhängig davon, ob PITR aktiviert ist oder nicht, können Sie Dokumente mit einem beliebigen Zeitstempel mit Mikrosekunden-Granularität innerhalb der letzten Stunde lesen (aber nicht exportieren), jedoch nicht vor dem earliestVersionTime.

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 oder eine direkte Schlüsselzuordnung zusammen mit einem Zeitstempel in der Vergangenheit angegeben ist, 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 ein bestimmtes Dokument 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, exportieren Sie die Datenbank, indem Sie einen Zeitstempel in der Vergangenheit angeben und dann in eine neue Datenbank importieren. Der PITR-Exportvorgang unterstützt alle Filter, einschließlich des Exports aller Dokumente und des Exports bestimmter Sammlungen. Sie können PITR-Daten exportieren, deren Zeitstempel ein Zeitstempel für eine volle Minute innerhalb der letzten sieben Tage ist, aber nicht früher als earliestVersionTime.

Preise

Beachten Sie die folgenden Preisinformationen, bevor Sie PITR für Ihre Datenbank aktivieren:

  • Speicher: Cloud Firestore misst die Datenbankgröße täglich. Über den Zeitraum eines Monats werden diese Stichprobenpunkte gemittelt, um die Speichergröße der Datenbank zu berechnen. Dieser Durchschnittswert wird mit dem Stückpreis von PITR (GB-Monat) multipliziert. Weitere Informationen finden Sie unter Speicherpreise.

    Für den PITR-Speicher gibt es kein kostenloses Kontingent. Die Abrechnung muss aktiviert sein, wenn Sie PITR verwenden möchten.

  • Abrechnung für Compute: Für alle Abfragen, die Sie während des PITR-Zeitraums von 7 Tagen ausführen, fallen entweder durch veraltete Lesevorgänge oder Exporte Kosten für Lesevorgänge an, die auf der Anzahl der gelesenen Dokumente basieren. Weitere Informationen finden Sie unter Preise.

  • Mindestabrechnung: Ihnen werden möglicherweise bis zu einem Tag der Kosten für die PITR-Speicherung in Rechnung gestellt, auch wenn Sie PITR innerhalb eines Tages nach der Aktivierung deaktivieren.

Nächste Schritte