Sauvegardes automatisées

Les utilisateurs du plan Blaze peuvent configurer leur base de données Firebase Realtime pour des sauvegardes automatiques, une fonctionnalité en libre-service qui permet des sauvegardes quotidiennes des données et des règles de votre application de base de données au format JSON dans un bucket Cloud Storage .

Installation

Pour commencer, visitez l' onglet Sauvegardes dans la section Base de données de la console Firebase et l'assistant vous guidera dans la configuration de vos sauvegardes automatisées.

Pour économiser sur les coûts de stockage, nous activons la compression Gzip par défaut et vous pouvez choisir d'activer une politique de cycle de vie de 30 jours sur votre compartiment pour supprimer automatiquement les sauvegardes de plus de 30 jours.

Vous pouvez afficher 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 chronométrés spécifiques ou comme mesure de sécurité avant d'effectuer des modifications de code.

Une fois configuré, un nouveau bucket Cloud Storage sera créé pour vous avec l' autorisation WRITER pour Firebase. Vous ne devez pas stocker de données dans ce compartiment auquel vous n'êtes pas à l'aise avec l'accès de Firebase. Firebase n'aura aucun accès supplémentaire à vos autres buckets Cloud Storage ou à toute autre zone de Google Cloud.

Restauration à partir de sauvegardes

Pour restaurer votre Firebase à partir d'une sauvegarde, téléchargez d'abord le fichier depuis Cloud Storage sur votre disque local. Cela peut être fait en cliquant sur le nom du fichier dans la section d'activité de sauvegarde ou depuis l'interface du bucket Cloud Storage. Si le fichier est compressé Gzip, décompressez d’abord le fichier.

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

Méthode 1 : cliquez sur le bouton Importer JSON dans la section Données de votre base de données et sélectionnez le fichier JSON de données de votre application.

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

Récupérez d’abord un secret de votre Firebase, que vous pouvez obtenir en visitant la page 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

La sauvegarde de votre base de données est affectée à une heure spécifique chaque jour, ce qui garantit une charge uniforme et une disponibilité maximale pour tous les clients de sauvegarde. Cette sauvegarde planifiée se produira même si vous effectuez des sauvegardes manuelles au cours de la journée.

Dénomination du fichier

Les fichiers transférés vers votre bucket Cloud Storage seront horodatés (norme ISO 8601) et utiliseront les conventions de dénomination 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 sera ajouté aux noms de fichiers. Vous pouvez facilement trouver les sauvegardes à partir d'une date ou d'une heure spécifique à l'aide de la recherche par préfixe Cloud Storage.

Compression Gzip

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

Pour décompresser vos fichiers JSON gzippés, exécutez une commande de ligne de commande à l'aide du binaire gunzip 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 Cycle de vie de 30 jours

Nous proposons un commutateur de configuration facile à utiliser qui active une politique de cycle de vie des objets par défaut de 30 jours pour votre bucket Cloud Storage. Lorsqu'ils sont activés, les fichiers de votre compartiment seront automatiquement supprimés après 30 jours. Cela permet de réduire les anciennes sauvegardes indésirables, de vous faire économiser sur les coûts de stockage et de garder votre répertoire de compartiment propre. Si vous placez d'autres fichiers dans votre compartiment de sauvegardes automatisées, ils seront également supprimés avec la même politique.

Frais

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