Sauvegarde et restauration périodiques dans Azure Cosmos DB

S’APPLIQUE À : NoSQL MongoDB Cassandra Gremlin Table

Azure Cosmos DB sauvegarde automatiquement vos données à intervalles réguliers. Les sauvegardes automatiques sont effectuées sans affecter les performances ou la disponibilité des opérations de base de données. Toutes les sauvegardes sont stockées séparément dans un service de stockage, et ces sauvegardes sont répliquées globalement pour garantir la résilience contre les sinistres régionaux. Avec Azure Cosmos DB, vos données et leurs sauvegardes sont rendues hautement redondantes et résilientes aux sinistres régionaux.

Comment Azure Cosmos DB effectue une sauvegarde de données

Les étapes suivantes montrent comment Azure Cosmos DB sauvegarde les données :

  • Azure Cosmos DB effectue automatiquement une sauvegarde complète de votre base de données toutes les 4 heures, quel que soit le moment. Par défaut, seules les deux dernières sauvegardes sont stockées. Si les intervalles par défaut sont insuffisants pour vos charges de travail, vous pouvez modifier l’intervalle de sauvegarde et la période de rétention à partir du portail Azure. Vous pouvez modifier la configuration de la sauvegarde pendant ou après la création du compte Azure Cosmos DB. En cas de suppression du conteneur ou de la base de données, Azure Cosmos DB conserve les captures instantanées d’une base de données à débit partagé ou d’un conteneur à débit approvisionné donné pendant 30 jours. Si le débit est approvisionné au niveau de la base de données, le processus de sauvegarde et de restauration se produit sur l’ensemble de l’étendue de la base de données.

  • Azure Cosmos DB stocke ces sauvegardes dans Stockage Blob Azure, tandis que les données réelles résident localement dans Azure Cosmos DB.

  • Pour garantir une latence faible, la capture instantanée de votre sauvegarde est stockée dans le Stockage Blob Azure, dans la région d’écriture actuelle (ou dans l’une des régions d’écriture si vous avez une configuration d’écriture multirégion). Pour assurer la résilience contre les sinistres régionaux, chaque capture instantanée de vos données de sauvegarde dans le stockage blob Azure est à nouveau répliqué vers une autre région par le biais du stockage géoredondant (GRS). La région vers laquelle la sauvegarde est répliquée dépend de votre région source et de la paire régionale associée à la région source. Pour plus d’informations, consultez la liste des paires de régions Azure géoredondantes. Vous ne pouvez pas accéder directement à cette sauvegarde. L’équipe Azure Cosmos DB restaure votre sauvegarde lorsque vous la demandez via une demande de support.

    L’image suivante montre la façon dont un conteneur Azure Cosmos DB l’effectue avec les trois partitions physiques principales dans la région USA Ouest. Le conteneur est sauvegardé dans un compte Stockage Blob Azure distant dans la région USA Ouest, puis répliqué vers la région USA Est :

    Diagramme des sauvegardes complètes périodiques effectuées de plusieurs entités Azure Cosmos DB dans un Stockage Azure géoredondant.

  • Les sauvegardes sont effectuées sans affecter les performances ou la disponibilité de votre application. Azure Cosmos DB effectue la sauvegarde des données en arrière-plan sans consommer de débit (RU) approvisionné supplémentaire et sans affecter les performances ou la disponibilité de votre base de données.

Avec le mode de sauvegarde périodique, les sauvegardes sont effectuées uniquement dans la région d’écriture de votre compte Azure Cosmos DB. L’action de restauration restaure toujours les données dans un nouveau compte qui se trouve dans la région d’écriture du compte source.

Quels éléments sont-ils restaurés dans un nouveau compte ?

  • Vous pouvez choisir de restaurer le compte entier ou toute combinaison de conteneurs de débit provisionnés ou de bases de données de débit partagées.
  • L’action de restauration restaure toutes les données et leurs propriétés d’index dans un nouveau compte.
  • La durée de la restauration dépend de la quantité de données qui doit être restaurée.
  • Le paramètre de cohérence du compte de base de données récemment restauré sera identique aux paramètres de cohérence du compte de base de données source.

Qu’est-ce qui n’est pas restauré ?

Les configurations suivantes ne sont pas restaurées après la restauration à un instant dans le passé.

  • Il n’est pas possible de restaurer un sous-ensemble de conteneurs sous une base de données de débit partagée. La base de données entière peut être restaurée dans son ensemble.
  • Clés de compte de base de données. Le compte restauré est généré avec de nouvelles clés de compte de base de données.
  • Paramètres de pare-feu, de réseau virtuel, de RBAC de plan de données ou de point de terminaison privé.
  • Régions. Le compte restauré est uniquement un compte de région unique, qui est la région d’écriture du compte source.
  • Procédures stockées, déclencheurs, fonctions définies par l’utilisateur.
  • Affectations de contrôle d’accès en fonction du rôle. Ceux-ci devront être réaffectés.
  • Documents supprimés en raison de l’expiration de la TTL.
  • Données analytiques lorsque le lien synapse est activé.
  • Vues matérialisées

Certaines de ces configurations peuvent être ajoutées au compte restauré une fois la restauration terminée.

Pour les comptes avec Azure Synapse Link, les données du magasin analytique ne sont pas incluses dans les sauvegardes et les restaurations. Lorsque la fonctionnalité Azure Synapse Link est activée, Azure Cosmos DB continue à effectuer automatiquement des sauvegardes de vos données dans le magasin transactionnel à un intervalle de sauvegarde planifié. La sauvegarde et la restauration automatiques de vos données dans le magasin analytique ne sont pas prises en charge pour le moment.

Comprendre le coût de sauvegardes

Deux sauvegardes sont effectuées gratuitement, et les sauvegardes supplémentaires sont facturées selon la tarification régionale pour le stockage de sauvegarde décrite dans Tarification du stockage de sauvegarde.

Par exemple, envisagez un scénario où la rétention des sauvegardes est configurée sur 240 heures (ou 10 jours) et l’intervalle de sauvegarde est configuré sur 24 heures. Cette configuration implique qu’il existe 10 copies des données de sauvegarde. Si vous avez 1 To de données dans une région Azure USA Ouest, le coût du stockage de sauvegarde d’un mois donné s’élève à : 0.12 * 1000 * 8

Autorisations requises pour gérer les rétentions ou les restaurations

Les principaux qui font partie du rôle CosmosdbBackupOperator, propriétaire ou contributeur sont autorisés à demander une restauration ou à modifier la période de rétention.

Gestion manuelle des sauvegardes périodiques dans Azure Cosmos DB

Avec les comptes d’API Azure Cosmos DB for NoSQL, vous pouvez également tenir à jour vos propres sauvegardes en adoptant l’une des approches suivantes :

Azure Data Factory

Utilisez Azure Data Factory pour déplacer régulièrement des données vers une solution de stockage de votre choix.

Azure Cosmos DB - Flux de modification

Utilisez le flux de modification d’Azure Cosmos DB pour lire périodiquement les données pour des sauvegardes complètes ou des modifications incrémentielles, et les stocker dans votre propre stockage.

Étapes suivantes