Les utilisateurs du forfait Blaze peuvent configurer des Firebase Realtime Database pour sauvegardes automatiques. Cette fonctionnalité en libre-service permet d'effectuer des sauvegardes quotidiennes des données de votre application de base de données et des Security Rules au format JSON dans un Cloud Storage bucket.
Configuration
Dans la console Firebase, accédez à Bases de données et stockage > Base de données Realtime.
Dans l'onglet Sauvegardes, utilisez le workflow intégré à la console pour configurer 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 d'activité de sauvegarde ou dans l'interfaceCloud Storage du bucket. Si le fichier est compressé au format Gzip, d'abord décompressez le fichier.
Vous disposez de deux options pour importer vos données :
Option 1 : Utilisez la Firebase console.
Accédez à l'onglet Bases de données et stockage > Realtime Database > Données.
Cliquez sur Importer JSON, puis sélectionnez le fichier JSON des données de votre application.
Option 2 : Envoyez une requête CURL depuis votre ligne de commande.
Récupérez un secret depuis Firebase. Pour ce faire, accédez à l'onglet Bases de données et stockage > Base de données Realtime > Paramètres.
Saisissez les éléments suivants dans votre terminal en remplaçant les champs
DATABASE_NAMEetSECRETpar vos propres valeurs :curl 'https://<DATABASE_NAME>.firebaseio.com/.json?auth=<SECRET>&print=silent' -X PUT -d @<DATABASE_NAME>.json
Si vous rencontrez des problèmes pour restaurer une sauvegarde à partir d'une base de données très volumineuse, contactez l'assistance Firebase.
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 tout au long 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 le temps de transfert de vos sauvegardes.
Pour décompresser vos fichiers JSON compressés au format Gzip, exécutez une commande en 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 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 buckets 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.