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 der PITR werden Versionen Ihrer Dokumente von früheren Zeitstempeln beibehalten. Wenn ein Entwickler beispielsweise falsche Daten pusht oder versehentlich Daten löscht oder schreibt, können die Daten mit der PITR zu einem Zeitpunkt in der Vergangenheit wiederhergestellt werden, der maximal sieben Tage zurückliegt.

Bei jeder Livedatenbank, die den Best Practices folgt, hat die Verwendung der PITR keine Auswirkungen auf die Leistung von Lese- oder Schreibvorgängen.

PITR-Fenster

Nachdem Sie die PITR aktiviert haben, werden in Cloud Firestore PITR-Daten aufbewahrt. PITR-Daten werden im PITR-Fenster sieben Tage lang aufbewahrt.

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

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 der PITR
Vor mehr als 7 Tagen aktiviert 7 Tage vor dem Zeitpunkt der Leseanfrage

Im PITR-Fenster wird pro Minute eine einzelne Version beibehalten. Sie können Dokumente mit einer Zeitstempelgenauigkeit von einer Minute lesen. Bei Lesevorgängen, die keine Zeitstempelgenauigkeit von einer Minute haben, z. B. 2023-05-30 09:00:00.1234AM, wird ein Fehler zurückgegeben, dass read_time zu alt ist.

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

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

Das earliestVersionTime Feld Ihrer Datenbank gibt den frühestmöglichen Lesezeitpunkt für Ihre Daten an.

Unabhängig davon, ob die PITR aktiviert ist oder nicht, können Sie Dokumente mit einem beliebigen Zeitstempel mit Mikrosekundengenauigkeit innerhalb der letzten Stunde lesen, aber nicht vor earliestVersionTime.

Möglichkeiten zur Datenwiederherstellung

Es gibt mehrere Möglichkeiten, Daten wiederherzustellen:

  • Zum Wiederherstellen eines Teils der Datenbank, führen Sie einen veralteten Lesevorgang aus, in dem eine Abfragebedingung angegeben ist oder eine direkte Schlüsselsuche mit einem Zeitstempel in der Vergangenheit verwendet wird, und schreiben die Ergebnisse dann wieder in die Livedatenbank. 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, haben Sie folgende Möglichkeiten:

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

    • Exportieren Sie die Datenbank, geben Sie einen Zeitstempel in der Vergangenheit an und importieren Sie sie dann in eine neue Datenbank. Der PITR-Exportvorgang unterstützt alle Filter, einschließlich des Exports aller Dokumente und des Exports bestimmter Sammlungen.

    Sie können PITR-Daten klonen oder exportieren, wenn der Zeitstempel ein Zeitstempel mit einer Genauigkeit von einer Minute innerhalb der letzten sieben Tage ist, aber nicht vor earliestVersionTime.

Preise

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

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

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

  • Abrechnung für die Datenverarbeitung: Für alle Abfragen, die Sie während des PITR-Fensters von 7 Tagen ausführen, entweder durch veraltete Lesevorgänge oder Exporte, fallen 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 die Kosten für bis zu einem Tag PITR-Speicher in Rechnung gestellt, auch wenn Sie die PITR innerhalb eines Tages nach der Aktivierung deaktivieren.

Nächste Schritte