Présentation de la récupération à un moment précis

La récupération à un moment précis de Spanner offre une protection contre les suppressions ou les écritures accidentelles. Par exemple, si un opérateur écrit par inadvertance des données ou si un déploiement d'application corrompt la base de données, la récupération à un moment précis vous permet de récupérer facilement les données à un moment précis (jusqu'à sept jours maximum). Si vous avez besoin de conserver les données à plus long terme, vous pouvez utiliser Sauvegarde et restauration ou Exporter et importer.

Par défaut, votre base de données conserve toutes les versions de ses données et de son schéma pendant une heure. Vous pouvez augmenter cette limite de temps jusqu'à sept jours via l'option version_retention_period. Pour savoir comment procéder, consultez Définir la durée de conservation. Spanner stocke les anciennes versions des données à une précision de l'ordre de la microseconde, et la base de données conserve un earliest_version_time, qui représente la première fois dans le passé où vous pouvez récupérer d'anciennes versions des données.

Méthodes de récupération des données

Il existe deux façons de récupérer des données :

  • Pour récupérer une partie de la base de données, effectuez une lecture non actualisée en spécifiant une condition de requête et un code temporel antérieurs, puis écrivez les résultats dans la base de données active. Elle est généralement utilisée pour les opérations chirurgicales sur une base de données active. Par exemple, si vous supprimez accidentellement une ligne particulière ou si vous mettez à jour de manière incorrecte un sous-ensemble de données, vous pouvez la récupérer à l'aide de cette méthode. Pour obtenir des instructions, consultez la section Récupérer une partie de votre base de données.

  • Pour récupérer l'intégralité de la base de données, sauvegardez ou exportez la base de données en spécifiant un code temporel antérieur, puis restaurez-la ou importez-la dans une nouvelle base de données. Elle est généralement utilisée pour corriger les problèmes de corruption de données lorsque vous devez rétablir la base de données à un moment précis antérieur à la corruption. Notez que la sauvegarde ou l'exportation d'une base de données peut prendre plusieurs heures, et que vous ne pouvez pas restaurer ni importer une base de données existante. Pour obtenir des instructions, consultez la section Récupérer l'intégralité de la base de données.

Considérations sur les performances

Les bases de données dont les durées de conservation sont plus longues, en particulier celles qui écrasent fréquemment des données, utilisent davantage de ressources système. Cela peut affecter les performances de votre base de données, en particulier si votre instance n'est pas provisionnée avec une capacité de calcul suffisante. Si votre base de données a un taux d'écrasement très élevé (par exemple, si elle est écrasée plusieurs fois par jour), vous pouvez envisager d'augmenter progressivement la durée de conservation et de surveiller le système Voici quelques points à noter :

  • Augmentation de l'utilisation de l'espace de stockage Nous vous recommandons de configurer des alertes de stockage pour vous assurer de ne pas dépasser la limite de stockage. Lorsque vous augmentez la durée de conservation, gardez à l'esprit que l'utilisation de l'espace de stockage augmentera progressivement à mesure que la base de données accumule des versions plus anciennes des données. Cela est dû au fait que les anciennes données qui auraient expiré en vertu de la période de conservation précédente ne sont plus expirées. Ainsi, si vous augmentez la durée de conservation de trois à sept jours, vous devez attendre quatre jours pour que l'utilisation de l'espace de stockage de la base de données se stabilise. Nous fournissons également des instructions pour estimer l'augmentation de l'espace de stockage.

  • Augmentation de l'utilisation du processeur et de la latence Spanner utilise des ressources de calcul supplémentaires pour compacter et gérer les anciennes versions des données. Surveillez votre instance et votre base de données pour vous assurer que la latence et l'utilisation du processeur restent à des niveaux acceptables.

  • Augmentation du temps nécessaire aux mises à jour de schéma. Une durée de conservation plus longue signifie que les versions de schéma doivent être conservées pendant des durées plus longues, ce qui peut entraîner un throttled des mises à jour de schéma en attente des ressources du serveur. Assurez-vous de suivre les bonnes pratiques concernant les mises à jour de schéma et de respecter les limites applicables aux mises à jour de schéma.

Tarification

L'utilisation de la fonctionnalité PITR n'entraîne aucuns frais supplémentaires. Toutefois, si vous augmentez la durée de conservation de la version de votre base de données au lieu de la valeur par défaut d'une heure, les coûts de stockage et de capacité de calcul de votre base de données peuvent augmenter. Votre coût de sauvegarde à la demande n'est pas affecté, car une seule version de votre base de données est stockée. Pour en savoir plus, consultez la section Considérations sur les performances. Avant d'augmenter la durée de conservation des versions d'une base de données, vous pouvez estimer l'augmentation prévue de l'espace de stockage de la base de données.

Pour obtenir des informations générales sur la facturation de Spanner, consultez la page Tarifs de Spanner.

Étapes suivantes