Sauvegardes automatisées

Les utilisateurs du forfait Blaze peuvent configurer des sauvegardes automatiques pour leur Firebase Realtime Database . Cette fonctionnalité en libre-service permet d'effectuer 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.

Configuration

Pour commencer, accédez à l'onglet Backups tab de la section "Database" (Base de données) de la console Firebase. L'assistant vous guidera dans la configuration de vos sauvegardes automatiques.

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

Vous pouvez afficher l'état et l'activité de sauvegarde directement dans la console Firebase où vous pouvez également lancer une sauvegarde manuelle. Cela peut être utile pour prendre des instantanés à des moments précis ou comme mesure de sécurité avant d'apporter des modifications au code.

Une fois la configuration terminée, un nouveau bucket Cloud Storage est créé pour vous avec l' autorisation WRITER pour Firebase. Vous ne devez pas stocker dans ce bucket des données auxquelles vous ne souhaitez pas que Firebase ait accès. Firebase n'aura aucun accès supplémentaire à vos autres Cloud Storage buckets ni à d'autres zones 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. Pour ce faire, cliquez sur le nom de fichier dans la section "Backup activity" (Activité de sauvegarde) ou dans l'interface du bucket Cloud Storage. Si le fichier est compressé au format Gzip, d'abord décompressez le fichier.

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

Méthode 1 : Cliquez sur le bouton "Import JSON" (Importer JSON) dans votre section "Data" (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 envoyer une requête CURL à partir de la ligne de commande.

Commencez par récupérer un secret depuis votre Firebase en accédant à la page des paramètres de la base de données.

Saisissez ensuite les informations suivantes 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 base de données très volumineuse, veuillez contacter notre équipe d'assistance.

Planification

La sauvegarde de votre base de données est attribué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 aura lieu, que vous effectuiez ou non des sauvegardes manuelles au cours de la journée.

Attribution de noms aux fichiers

Les fichiers transférés vers votre Cloud Storage bucket 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 la base de données : YYYY-MM-DDTHH:MM:SSZ_<DATABASE_NAME>_rules.json

Si Gzip est activé, le 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 Cloud Storage préfixe.

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 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 à un tiers de leur taille d'origine, ce qui vous permet de réduire les coûts de stockage et de diminuer le temps de transfert de vos sauvegardes.

Pour décompresser vos fichiers JSON compressés au format Gzip, exécutez une commande à l'aide du gunzip binaire, 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 commutateur de configuration facile à utiliser qui active une règle de cycle de vie des objets par défaut de 30 jours pour votre Cloud Storage bucket. 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 le nombre de sauvegardes anciennes indésirables, de réduire les coûts de stockage et de garder votre répertoire de bucket propre. Si vous placez d'autres fichiers dans votre bucket de sauvegardes automatiques, ils seront également supprimés conformément à la même règle.

Coûts

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