Backup automatici

Gli utenti del piano Blaze possono configurare il proprio Firebase Realtime Database per i backup automatici, una funzionalità self-service che consente backup giornalieri dei dati e delle regole dell'applicazione database in formato JSON su un bucket Cloud Storage .

Impostare

Per iniziare, visita la scheda Backup nella sezione Database della console Firebase e la procedura guidata ti guiderà attraverso la configurazione dei backup automatici.

Per risparmiare sui costi di archiviazione, abilitiamo la compressione Gzip per impostazione predefinita e puoi scegliere di abilitare una policy del ciclo di vita di 30 giorni sul tuo bucket per eliminare automaticamente i backup più vecchi di 30 giorni.

Puoi visualizzare lo stato e l'attività di backup direttamente nella console Firebase dove puoi anche avviare un backup manuale. Ciò può essere utile per acquisire istantanee temporizzate specifiche o come azione di sicurezza prima di eseguire qualsiasi modifica al codice.

Una volta configurato, verrà creato per te un nuovo bucket Cloud Storage con l' autorizzazione WRITER per Firebase. Non dovresti archiviare dati in questo bucket a cui non sei sicuro che Firebase abbia accesso. Firebase non avrà accesso aggiuntivo agli altri bucket Cloud Storage o ad altre aree di Google Cloud.

Ripristino da backup

Per ripristinare Firebase da un backup, scarica prima il file da Cloud Storage sul tuo disco locale. Questa operazione può essere eseguita facendo clic sul nome del file nella sezione dell'attività di backup o dall'interfaccia del bucket Cloud Storage. Se il file è compresso con Gzip, decomprimerlo prima.

Esistono due modi per importare i dati:

Metodo 1: fai clic sul pulsante Importa JSON nella sezione Dati del database e seleziona il file JSON dei dati dell'applicazione.

Metodo 2: puoi anche inviare una richiesta CURL dalla riga di comando.

Per prima cosa recupera un segreto dal tuo Firebase, che puoi ottenere visitando la pagina delle impostazioni del database .

Quindi inserisci quanto segue nel tuo terminale, sostituendo i campi DATABASE_NAME e SECRET con i tuoi valori:

curl 'https://<DATABASE_NAME>.firebaseio.com/.json?auth=<SECRET>&print=silent' -x PUT -d @<DATABASE_NAME>.json

Se riscontri problemi nel ripristinare un backup da un database molto grande, contatta il nostro team di supporto .

Pianificazione

Il backup del database viene assegnato ogni giorno a un'ora specifica che garantisce un carico uniforme e la massima disponibilità per tutti i clienti del backup. Questo backup pianificato verrà eseguito indipendentemente dall'esecuzione di backup manuali durante il giorno.

Denominazione dei file

I file trasferiti al bucket Cloud Storage verranno contrassegnati con data e ora (standard ISO 8601) e utilizzeranno le seguenti convenzioni di denominazione:

  • Dati del database: YYYY-MM-DDTHH:MM:SSZ_<DATABASE_NAME>_data.json
  • Regole del database: YYYY-MM-DDTHH:MM:SSZ_<DATABASE_NAME>_rules.json

Se Gzip è abilitato, ai nomi dei file verrà aggiunto il suffisso .gz . Puoi trovare facilmente i backup da una data o ora specifica utilizzando la ricerca del prefisso Cloud Storage.

Compressione Gzip

Per impostazione predefinita, comprimiamo i tuoi file di backup utilizzando la compressione Gzip per risparmiare sui costi di archiviazione e ridurre i tempi di trasferimento. La dimensione del file compresso varia a seconda delle caratteristiche dei dati del tuo database, ma i database tipici potrebbero ridursi a ⅓ della loro dimensione originale, risparmiando sui costi di archiviazione e diminuendo il tempo di caricamento dei backup.

Per decomprimere i file JSON Gzippati, esegui un comando da riga di comando utilizzando il binario gunzip fornito per impostazione predefinita per OS-X e la maggior parte delle distribuzioni Linux.

gunzip <DATABASE_NAME>.json.gz  # Will unzip to <DATABASE_NAME>.json

Ciclo di vita di archiviazione di 30 giorni

Offriamo un interruttore di configurazione facile da usare che abilita una policy predefinita del ciclo di vita degli oggetti di 30 giorni per il tuo bucket Cloud Storage. Se abilitati, i file nel tuo bucket verranno automaticamente eliminati dopo 30 giorni. Ciò aiuta a ridurre i vecchi backup indesiderati, risparmiando sui costi di archiviazione e mantenendo pulita la directory del bucket. Se inserisci altri file nel bucket Backup automatizzati, anche questi verranno eliminati con la stessa policy.

Costi

La funzionalità di backup può essere abilitata per i progetti del piano Blaze senza costi aggiuntivi. Tuttavia, ti verranno addebitate le tariffe standard per i file di backup inseriti nel bucket Cloud Storage. Puoi abilitare il ciclo di vita di 30 giorni di compressione e archiviazione Gzip per ridurre i costi di archiviazione.