Sauvegardes automatisées

Les utilisateurs de la formule Blaze peuvent configurer leur Firebase Realtime Database pour les sauvegardes automatiques, une fonctionnalité en libre-service qui permet de sauvegarder quotidiennement les données et les règles de votre application Database au format JSON dans un bucket Cloud Storage.

Prérequis

Pour commencer, accédez à l'onglet Sauvegardes dans la section "Base de données" de la console Firebase. L'assistant vous guidera pour configurer vos sauvegardes automatiques.

Pour réduire les coûts de stockage, nous activons la compression Gzip par défaut. Vous pouvez également activer une règle de cycle de vie de 30 jours sur votre bucket pour que les sauvegardes datant de plus de 30 jours soient automatiquement supprimées.

Vous pouvez consulter l'état et l'activité de sauvegarde directement dans la console Firebase, où vous pouvez également démarrer une sauvegarde manuelle. Cela peut être utile pour prendre des instantanés temporisés spécifiques ou comme une action de sécurité avant d'effectuer des modifications du code.

Une fois la configuration terminée, un nouveau bucket Cloud Storage sera créé pour vous avec l'autorisation WRITER pour Firebase. Vous ne devez pas y stocker de données auxquelles Firebase ne doit pas avoir accès. Firebase n'aura aucun accès supplémentaire à vos autres buckets Cloud Storage ni à d'autres zones de Google Cloud.

Restaurer à partir de sauvegardes

Pour restaurer votre Firebase à partir d'une sauvegarde, commencez par télécharger le fichier depuis Cloud Storage sur votre disque local. Pour ce faire, cliquez sur le nom de fichier dans la section "Activité de sauvegarde" ou dans l'interface du bucket Cloud Storage. Si le fichier est compressé au format gzip, décompressez-le d'abord.

Vous pouvez importer vos données de deux manières:

Méthode 1: Cliquez sur le bouton "Importer un fichier JSON" dans la section "Données de la base de données", puis sélectionnez le fichier JSON de vos données d'application.

Méthode 2: Vous pouvez également envoyer une requête CURL à partir de votre ligne de commande.

Commencez par récupérer un secret dans votre Firebase, que vous pouvez obtenir en accédant à la page des paramètres de la base de données.

Saisissez ensuite ce qui suit dans votre terminal, en remplaçant les champs DATABASE_NAME et SECRET par vos propres valeurs:

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

Si vous rencontrez des difficultés pour restaurer une sauvegarde à partir d'une très grande base de données, veuillez contacter notre équipe d'assistance.

Planification

Votre sauvegarde de base de données est attribuée à une heure spécifique chaque jour, ce qui garantit une charge équilibrée et une disponibilité optimale pour tous les clients de sauvegarde. Cette sauvegarde planifiée aura lieu, que vous procédiez ou non à des sauvegardes manuelles au cours de la journée.

Nommer les fichiers

Les fichiers transférés vers votre bucket Cloud Storage seront horodatés (norme ISO 8601) et utiliseront les conventions d'attribution de noms suivantes:

  • Données de la base de données: YYYY-MM-DDTHH:MM:SSZ_<DATABASE_NAME>_data.json
  • Règles de base de données: YYYY-MM-DDTHH:MM:SSZ_<DATABASE_NAME>_rules.json

Si Gzip est activé, un suffixe .gz est ajouté aux noms de fichiers. Vous pouvez facilement trouver les sauvegardes d'une date ou d'une heure spécifique à l'aide de la recherche par préfixe Cloud Storage.

Utiliser la compression Gzip

Par défaut, nous compressons vos fichiers de sauvegarde à l'aide de la compression Gzip pour réduire les coûts de stockage et les temps de transfert. La taille de fichier compressée varie en fonction des caractéristiques des données de votre base de données, mais les bases de données standards peuvent être réduites à un tiers de leur taille d'origine, ce qui vous permet de réduire les coûts de stockage et de diminuer le temps d'importation de vos sauvegardes.

Pour décompresser vos fichiers JSON compressés avec gzip, exécutez une commande de ligne de commande à l'aide du binaire gunzip, qui est fourni par défaut pour OS-X et la plupart des distributions Linux.

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

Stockage activé pendant 30 jours

Nous proposons un bouton de configuration facile à utiliser qui active une règle de cycle de vie des objets par défaut de 30 jours pour votre bucket Cloud Storage. Lorsque cette option est activée, les fichiers de votre bucket sont automatiquement supprimés au bout de 30 jours. Cela permet de réduire les anciennes sauvegardes indésirables, ce qui vous permet de réduire les coûts de stockage et de garder votre répertoire de buckets propre. Si vous placez d'autres fichiers dans votre bucket "Sauvegardes automatiques", ils seront également supprimés selon les mêmes règles.

Coûts

La fonctionnalité de sauvegarde peut être activée pour les projets du forfait Blaze sans frais supplémentaires. Toutefois, les fichiers de sauvegarde placés dans votre bucket Cloud Storage vous seront facturés aux tarifs standards. Vous pouvez activer la compression gzip et le cycle de vie de stockage de 30 jours pour réduire vos coûts de stockage.