Nutzer mit Blaze-Tarif können Firebase Realtime Database für automatische Back-ups einrichten. Mit dieser Selfservice-Funktion können Sie tägliche Back-ups Ihrer Datenbankanwendungsdaten und Regeln im JSON-Format in einem Cloud Storage-Bucket erstellen.
Einrichtung
Rufen Sie dazu in der Firebase-Konsole im Bereich „Datenbank“ den Tab „Sicherungen“ auf. Der Assistent führt Sie durch die Einrichtung automatischer Sicherungen.
Um Speicherkosten zu sparen, aktivieren wir standardmäßig die Gzip-Komprimierung. Sie können auch eine 30-Tage-Lebenszyklusrichtlinie für Ihren Bucket aktivieren, damit Backups, die älter als 30 Tage sind, automatisch gelöscht werden.
Sie können den Status und die Sicherungsaktivitäten direkt in der Firebase-Konsole ansehen und dort auch eine manuelle Sicherung starten. Das kann nützlich sein, um bestimmte zeitgesteuerte Snapshots zu erstellen oder als Sicherheitsmaßnahme, bevor Sie Codeänderungen vornehmen.
Nach der Einrichtung wird ein neuer Cloud Storage-Bucket mit der Berechtigung WRITER für Firebase erstellt. In diesem Bucket sollten Sie keine Daten speichern, auf die Firebase nicht zugreifen soll. Firebase hat keinen zusätzlichen Zugriff auf Ihre anderen Cloud Storage-Buckets oder andere Bereiche von Google Cloud.
Aus Sicherungen wiederherstellen
Wenn Sie Ihre Firebase-Daten aus einer Sicherung wiederherstellen möchten, laden Sie die Datei zuerst von Cloud Storage auf Ihre lokale Festplatte herunter. Klicken Sie dazu im Bereich „Sicherungsaktivität“ auf den Dateinamen oder verwenden Sie die Cloud Storage-Bucket-Oberfläche. Wenn die Datei mit Gzip komprimiert ist, müssen Sie sie zuerst dekomprimieren.
Sie haben zwei Möglichkeiten, Ihre Daten zu importieren:
Methode 1: Klicken Sie im Datenbereich Ihrer Datenbank auf die Schaltfläche „JSON importieren“ und wählen Sie die JSON-Datei mit den Anwendungsdaten aus.
Methode 2: Sie können auch einen CURL-Befehl über die Befehlszeile ausführen.
Rufen Sie zuerst ein Secret aus Firebase ab. Sie finden es auf der Seite mit den Datenbankeinstellungen.
Geben Sie dann Folgendes in das Terminal ein und ersetzen Sie die Felder DATABASE_NAME und SECRET durch Ihre eigenen Werte:
curl 'https://<DATABASE_NAME>.firebaseio.com/.json?auth=<SECRET>&print=silent' -X PUT -d @<DATABASE_NAME>.json
Wenn Sie Probleme beim Wiederherstellen eines Back-ups aus einer sehr großen Datenbank haben, wenden Sie sich bitte an unser Supportteam.
Wird geplant
Ihre Datenbanksicherung wird jeden Tag einer bestimmten Stunde zugewiesen, um eine gleichmäßige Last und höchste Verfügbarkeit für alle Kunden mit Sicherungen zu gewährleisten. Diese geplante Sicherung wird unabhängig davon ausgeführt, ob Sie den ganzen Tag über manuelle Sicherungen durchführen.
Dateinamen
Dateien, die in Ihren Cloud Storage-Bucket übertragen werden, erhalten einen Zeitstempel (ISO 8601-Standard) und verwenden die folgenden Namenskonventionen:
- Datenbankdaten:
YYYY-MM-DDTHH:MM:SSZ_<DATABASE_NAME>_data.json - Datenbankregeln:
YYYY-MM-DDTHH:MM:SSZ_<DATABASE_NAME>_rules.json
Wenn Gzip aktiviert ist, wird den Dateinamen das Suffix .gz angehängt. Mit der Cloud Storage-Präfixsuche können Sie ganz einfach Sicherungen von einem bestimmten Datum oder einer bestimmten Uhrzeit finden.
gzip-Komprimierung
Standardmäßig werden Ihre Sicherungsdateien mit Gzip-Komprimierung komprimiert, um Speicherkosten zu sparen und die Übertragungszeiten zu verkürzen. Die Größe der komprimierten Datei hängt von den Datenmerkmalen Ihrer Datenbank ab. Bei typischen Datenbanken kann die Größe jedoch auf ein Drittel der ursprünglichen Größe reduziert werden. So sparen Sie Speicherkosten und die Uploadzeit für Ihre Sicherungen wird verkürzt.
Um Ihre mit Gzip komprimierten JSON-Dateien zu dekomprimieren, geben Sie einen Befehlszeilenbefehl mit dem Binärprogramm gunzip aus, das standardmäßig für OS X und die meisten Linux-Distributionen bereitgestellt wird.
gunzip <DATABASE_NAME>.json.gz # Will unzip to <DATABASE_NAME>.json
30-tägiger Lebenszyklus für Storage
Wir bieten einen einfach zu verwendenden Konfigurationsschalter, mit dem Sie eine standardmäßige 30-Tage-Richtlinie für den Objektlebenszyklus für Ihren Cloud Storage-Bucket aktivieren können. Wenn diese Option aktiviert ist, werden Dateien in Ihrem Bucket nach 30 Tagen automatisch gelöscht. So lassen sich unerwünschte alte Sicherungen reduzieren, was Speicherplatzkosten spart und das Bucket-Verzeichnis sauber hält. Wenn Sie andere Dateien in den Bucket für automatische Back-ups einfügen, werden diese ebenfalls gemäß derselben Richtlinie gelöscht.
Kosten
Die Back-up-Funktion kann für Projekte im Blaze-Tarif ohne zusätzliche Kosten aktiviert werden. Für die Sicherungsdateien in Ihrem Cloud Storage-Bucket werden Ihnen jedoch die Standardpreise in Rechnung gestellt. Sie können die Gzip-Komprimierung und den 30-Tage-Speicherlebenszyklus aktivieren, um die Speicherkosten zu senken.