Présentation de la restauration

Vous pouvez restaurer une sauvegarde d'une base de données Spanner dans une nouvelle base de données. La base de données restaurée contiendra toutes les données ainsi que le schéma de la base de données d'origine, à l'instant de création version_time de la sauvegarde, y compris toutes les options de base de données définies avec la commande ALTER DATABASE SET OPTIONS. Elle ne comprendra pas d'autorisations IAM (à l'exception de celles héritées de l'instance contenant la base de données restaurée), et vous devez donc appliquer les autorisations IAM appropriées une fois la restauration terminée. Il n'inclut pas les données internes de tous les flux de modifications. Lorsque vous effectuez une restauration à partir d'une sauvegarde, la sauvegarde restaurée se trouve dans la même instance, région et projet que la sauvegarde source. Si vous devez effectuer une restauration à partir de la sauvegarde dans une autre région ou un autre projet pour des raisons de conformité ou de continuité d'activité, vous pouvez copier la sauvegarde sur une instance dans une région ou un projet distincts, puis effectuer une restauration à partir de la sauvegarde copiée.

Vous pouvez restaurer à partir d'une sauvegarde de l'une des manières suivantes:

Fonctionnement de la restauration de la base de données à partir d'une sauvegarde

Lorsque vous restaurez une base de données Spanner, vous devez spécifier une sauvegarde source et une nouvelle base de données cible. Vous ne pouvez pas restaurer une sauvegarde vers une base de données existante. La base de données nouvellement restaurée doit se trouver dans le même projet que la sauvegarde, sur une instance ayant la même configuration d'instance et la même édition Spanner (ou de niveau supérieur) que la sauvegarde. Par exemple, si une sauvegarde se trouve sur une instance configurée dans la région us-west3 et utilise l'édition Enterprise, elle peut être restaurée sur toute instance du projet qui est également configurée dans la région us-west3 et utilise l'édition Enterprise. Si vous restaurez une sauvegarde dans une instance de l'édition Enterprise dans une instance de l'édition Standard, la restauration risque d'échouer si la base de données utilise des fonctionnalités de l'édition Enterprise. La capacité de calcul des instances n'a pas besoin d'être identique.

Le processus de restauration est conçu pour la haute disponibilité. La base de données peut être restaurée à condition que le quorum majoritaire des régions et des zones de l'instance soit disponible.

Pour restaurer une sauvegarde avec CMEK activé, la clé et la version de clé doivent être disponibles pour Spanner. La base de données restaurée utilise par défaut les mêmes configurations de chiffrement que la sauvegarde. Vous pouvez ignorer ce comportement en spécifiant une autre configuration de chiffrement lors de la restauration de la base de données. Pour en savoir plus, consultez la section Restaurer à partir d'une sauvegarde avec CMEK activé.

Restaurer une sauvegarde dans une autre région ou un autre projet

Si vous devez restaurer la sauvegarde dans une autre région ou un autre projet, commencez par copier la sauvegarde dans la région ou le projet de votre choix. Les sauvegardes copiées peuvent être restaurées dès que la copie est terminée. Vous pouvez restaurer la sauvegarde dans l'instance de destination (à condition qu'elle utilise la même édition que l'instance de sauvegarde source) ou dans n'importe quelle instance ayant la même configuration d'instance et la même édition (ou une édition supérieure) que l'instance de destination. Avant de restaurer, assurez-vous que l'instance de destination dispose de suffisamment de nœuds ou d'unités de traitement provisionnés pour prendre en charge la taille de la base de données conformément à la limite de stockage de 10 To par nœud (c'est-à-dire que vous avez besoin d'au moins deux nœuds pour restaurer une sauvegarde de 20 To). Si vous avez copié la sauvegarde dans un autre projet et que vous souhaitez la restaurer, assurez-vous que votre projet de destination dispose d'un nombre suffisant de quotas de nœuds pour la restauration. La restauration d'une sauvegarde copiée fonctionne de la même manière qu'une restauration normale.

États de restauration

Une base de données restaurée passe par trois états, suivis par deux opérations de longue durée.

  • CREATING: Spanner commence la restauration en créant une base de données et en montant des fichiers à partir de la sauvegarde. Au cours de cet état CREATING initial, la base de données restaurée n'est pas encore prête à être utilisée. Cet état prend généralement une heure. Une fois l'état CREATING terminé, votre base de données est prête à l'emploi.

    Pour suivre la progression de cet état, vous pouvez interroger l'opération de restauration de longue durée que Spanner met à disposition au cours de ce processus. Elle renvoie un objet RestoreDatabaseMetadata.

    Notez les mises en garde suivantes concernant l'état CREATING:

    • Si vous effectuez une restauration sur une autre instance, l'opération de restauration appartient à l'instance contenant la base de données restaurée, et non à l'instance contenant la sauvegarde.
    • Spanner ne vous permet pas de supprimer la sauvegarde pendant qu'elle est en cours de restauration. Vous pouvez le supprimer une fois la restauration terminée et que la base de données passe à l'état READY.
    • Une instance ne peut pas avoir plus de dix bases de données associées à l'état CREATING en raison de la restauration à partir de sauvegardes. Vous ne pouvez pas restaurer une autre sauvegarde sur l'instance tant qu'une des dix bases de données restaurées n'est pas passée à l'état READY_OPTIMIZING ou READY.
  • READY_OPTIMIZING: une fois que Spanner a installé la sauvegarde, il commence à copier les données de sauvegarde dans la nouvelle base de données tout en optimisant sa taille de stockage. Votre base de données est prête à l'emploi pendant ce processus. Cette phase de la restauration prend généralement quelques heures pour les bases de données de moins de 100 To.

    Bien que vous puissiez utiliser votre base de données comme d'habitude pendant READY_OPTIMIZING, les mises en garde suivantes s'appliquent:

    • Les latences de lecture peuvent être légèrement supérieures à la normale.
    • Les métriques de stockage affichent la taille de la nouvelle base de données, et non de la sauvegarde. Par conséquent, tant que le transfert de données est en cours, les métriques de stockage Spanner peuvent afficher des résultats qui ne reflètent pas la taille totale de toutes vos données.
    • Comme pour l'état CREATING, Spanner ne vous permet pas de supprimer la sauvegarde installée.

    Spanner met à disposition une autre opération de restauration de longue durée pendant cet état, cette fois en renvoyant un objet de métadonnées OptimizeRestoredDatabaseMetadata.

  • READY: une fois l'opération de copie et d'optimisation terminée, la base de données passe à l'état READY. La base de données est entièrement restaurée et ne fait plus référence à la sauvegarde ni n'en a plus besoin.

Contrôle des accès (IAM)

Le rôle spanner.restoreAdmin vous autorise à effectuer une restauration à partir d'une sauvegarde. Pour en savoir plus, consultez la page Contrôle des accès avec IAM.

Les rôles suivants ont également accès aux opérations de restauration Spanner:

  • spanner.admin: dispose d'un accès complet à la restauration. Ce rôle dispose d'un accès complet à toutes les ressources Spanner.
  • owner: dispose d'un accès complet à la restauration.
  • editor: dispose d'un accès complet à la restauration.
  • viewer: peut afficher les restaurations et les opérations de restauration. Ce rôle ne peut pas créer, mettre à jour, supprimer ni copier une sauvegarde.

Tarifs

Aucuns frais ne s'appliquent pour la restauration d'une sauvegarde.

Étape suivante