Les utilisateurs du forfait Blaze peuvent configurer leur Firebase Realtime Database pour des sauvegardes automatiques, une fonctionnalité en libre-service qui permet de sauvegarder quotidiennement les données et les règles de votre application de base de données 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 à des heures spécifiques ou comme mesure de sécurité avant d'effectuer des modifications de code.
Une fois la configuration terminée, un 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 effectuiez des sauvegardes manuelles tout au long de la journée ou non.
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 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.