Wiederherstellung zu einem bestimmten Zeitpunkt (PITR) – Übersicht

Die Wiederherstellung zu einem bestimmten Zeitpunkt (Point-in-time Recovery, PITR) in Firestore im Datastore-Modus bietet Schutz vor versehentlichem Löschen oder Schreiben. Bei der Wiederherstellung zu einem bestimmten Zeitpunkt werden Versionen Ihrer Entitäten aus vergangenen Zeitstempeln beibehalten. Wenn ein Entwickler beispielsweise die falschen Daten überträgt oder Daten versehentlich gelöscht oder überschrieben werden, können Sie mit PITR die Daten eines früheren Zeitpunkts nahtlos 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 der Datastore-Modus mit dem Aufbewahren 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 PITR-Aktivierung 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. Bei mehreren Schreibvorgängen wird nur eine Version eines Dokuments beibehalten. Wenn ein Dokument beispielsweise mehrere Schreibvorgänge zwischen dem Zeitstempel v1, v2, ... vk (ausschließlich) und dem Zeitstempel 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.2023-05-30 09:00:00AM

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 im Datastore-Modus 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 „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 angegeben oder ein direkter Schlüssel-Lookup zusammen mit einem Zeitstempel in der Vergangenheit verwendet wird, 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 Entität 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, haben Sie folgende Möglichkeiten:

    • Klonen Sie die Datenbank, um eine Kopie der Datenbank zu einem bestimmten Zeitstempel zu erstellen.

    • Exportieren Sie die Datenbank, indem Sie einen Zeitstempel in der Vergangenheit angeben, und importieren Sie sie dann in eine neue Datenbank. Der PITR-Exportvorgang unterstützt alle Filter, einschließlich des Exports aller Entitäten und des Exports bestimmter Arten und Namespaces.

    Sie können PITR-Daten klonen oder exportieren, deren Zeitstempel ein Zeitstempel in ganzen Minuten 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: Im Datastore-Modus wird die Datenbankgröße täglich gemessen. Ü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 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 lang Kosten für die PITR-Speicherung berechnet, auch wenn Sie die PITR innerhalb eines Tages nach der Aktivierung deaktivieren.

Nächste Schritte