Ce guide explique le fonctionnement des sauvegardes dans ClickHouse Cloud, les options disponibles pour configurer les sauvegardes de votre service, ainsi que la procédure de restauration à partir d’une sauvegarde.
Prérequis
Liste des statuts des sauvegardes
Votre service sera sauvegardé selon la planification définie, qu’il s’agisse de la planification quotidienne par défaut ou d’une planification personnalisée que vous avez choisi. Toutes les sauvegardes disponibles sont visibles dans l’onglet Sauvegardes du service. Vous pouvez y consulter le statut de la sauvegarde, sa durée ainsi que sa taille. Vous pouvez également restaurer une sauvegarde spécifique à l’aide de la colonne Actions.
Comprendre le coût des sauvegardes
Selon la politique par défaut, ClickHouse Cloud effectue une sauvegarde chaque jour, avec une rétention de 24 heures. Choisir une planification qui exige de conserver davantage de données ou entraîne des sauvegardes plus fréquentes peut générer des frais de stockage supplémentaires liés aux sauvegardes.
Pour comprendre le coût des sauvegardes, vous pouvez consulter le coût des sauvegardes par service depuis l’écran Utilisation (comme illustré ci-dessous). Une fois que vos sauvegardes s’exécutent depuis quelques jours selon une planification personnalisée, vous pouvez vous faire une idée du coût et l’extrapoler pour estimer le coût mensuel des sauvegardes.
Pour estimer le coût total de vos sauvegardes, vous devez définir une planification. Avant cela, vous pouvez utiliser le calculateur de tarification pour obtenir une estimation du coût mensuel en fournissant les informations suivantes :
- Taille des sauvegardes complètes et incrémentielles
- Fréquence de sauvegarde souhaitée
- Rétention des sauvegardes souhaitée
- Fournisseur cloud et région
Gardez à l’esprit que le coût estimé des sauvegardes évoluera à mesure que le volume de données du service augmentera au fil du temps.
Les sauvegardes sont restaurées dans un nouveau service ClickHouse Cloud, et non dans le service existant à partir duquel la sauvegarde a été effectuée.
Après avoir cliqué sur l’icône de sauvegarde Restore, vous pouvez indiquer le nom du nouveau service à créer, puis restaurer cette sauvegarde :
Le nouveau service apparaîtra dans la liste des services avec l’état Provisioning jusqu’à ce qu’il soit prêt :
Utiliser votre service restauré
Après la restauration d’une sauvegarde, vous disposez désormais de deux services similaires : le service d’origine qui devait être restauré, et un nouveau service restauré issu d’une sauvegarde du service d’origine.
Une fois la restauration de la sauvegarde terminée, vous devez effectuer l’une des opérations suivantes :
- Utiliser le nouveau service restauré et supprimer le service d’origine.
- Migrer les données du nouveau service restauré vers le service d’origine, puis supprimer le nouveau service restauré.
Utiliser le nouveau service restauré
Pour utiliser le nouveau service, procédez comme suit :
- Vérifiez que le nouveau service dispose des entrées de l’IP Access List requises pour votre cas d’utilisation.
- Vérifiez que le nouveau service contient les données dont vous avez besoin.
- Supprimez le service d’origine.
Migrer les données du service récemment restauré vers le service d’origine
Supposons que, pour une raison quelconque, vous ne puissiez pas utiliser le service récemment restauré, par exemple si des utilisateurs ou des applications se connectent encore au service existant. Vous pouvez alors décider de migrer les données récemment restaurées vers le service d’origine. Pour effectuer cette migration, suivez les étapes ci-dessous :
Autoriser l’accès à distance au service récemment restauré
Le nouveau service doit être restauré à partir d’une sauvegarde avec la même liste d’autorisation IP que le service d’origine. Cela est nécessaire, car les connexions vers d’autres services ClickHouse Cloud ne seront pas autorisées, sauf si vous avez autorisé l’accès depuis Anywhere. Modifiez temporairement la liste d’autorisation pour autoriser l’accès depuis Anywhere. Pour en savoir plus, consultez la documentation IP Access List.
Sur le service ClickHouse récemment restauré (le système qui héberge les données restaurées)
Vous devrez réinitialiser le mot de passe du nouveau service pour pouvoir y accéder. Vous pouvez le faire depuis l’onglet Paramètres dans la liste des services.
Ajoutez un utilisateur en lecture seule pouvant lire la table source (db.table dans cet exemple) :
Copiez la définition de la table :
Sur le système de destination ClickHouse Cloud (celui dont la table était endommagée) :
Créez la base de données de destination :
À partir de l’instruction CREATE TABLE de la source, créez la destination :
Remplacez ENGINE par ReplicatedMergeTree sans aucun paramètre lorsque vous exécutez l’instruction CREATE. ClickHouse Cloud réplique toujours les tables et fournit les paramètres corrects.
Utilisez la fonction remoteSecure pour rapatrier les données depuis le service ClickHouse Cloud nouvellement restauré vers votre service d’origine :
Après avoir correctement inséré les données dans votre service d’origine, assurez-vous de les vérifier dans celui-ci. Vous devez également supprimer le nouveau service une fois les données vérifiées.
Restauration de tables supprimées
La commande UNDROP est prise en charge dans ClickHouse Cloud via Shared Catalog.
Pour éviter qu’un utilisateur ne supprime accidentellement des tables, vous pouvez utiliser des instructions GRANT pour révoquer les autorisations liées à la commande DROP TABLE pour un utilisateur ou un rôle spécifique.
Pour éviter toute suppression accidentelle de données, notez que, par défaut, il n’est pas possible de supprimer des tables de plus de 1TB dans ClickHouse Cloud.
Si vous souhaitez supprimer des tables dépassant ce seuil, vous pouvez utiliser le paramètre max_table_size_to_drop :
Anciens forfaits : pour les clients utilisant d’anciens forfaits, les sauvegardes quotidiennes par défaut conservées pendant 24 heures sont incluses dans le coût du stockage.
Les durées de sauvegarde et de restauration dépendent de plusieurs facteurs, notamment de la taille de la base de données, de son schéma et du nombre de tables qu’elle contient.
Les sauvegardes incrémentielles se terminent généralement bien plus rapidement qu’une sauvegarde complète, car elles portent sur moins de données.
La restauration à partir d’une sauvegarde incrémentielle sera légèrement plus lente que la restauration à partir d’une sauvegarde complète, car elle inclut toutes les sauvegardes incrémentielles ainsi que la dernière sauvegarde complète de la chaîne, comme expliqué ci-dessus.
Lors de nos tests, nous avons constaté que des sauvegardes plus petites, d’environ 1 To, pouvaient prendre entre 10 et 15 minutes, voire davantage.
Les sauvegardes de moins de 20 To devraient se terminer en moins d’une heure, et la sauvegarde de 50 To de données devrait prendre environ 2 à 3 heures.
Les sauvegardes bénéficient d’économies d’échelle à mesure que leur taille augmente, et nous avons observé que des sauvegardes allant jusqu’à 1 Po pour certains services internes se terminaient en environ 10 heures.
Les sauvegardes vers des buckets externes peuvent être plus lentes que les sauvegardes vers des buckets ClickHouse
Les durées de restauration sont à peu près équivalentes à celles des sauvegardes.
Nous vous recommandons d’effectuer des tests avec votre propre base de données ou avec des données d’exemple afin d’obtenir de meilleures estimations, car la durée réelle dépend de plusieurs facteurs, comme indiqué ci-dessus.
Sauvegardes configurables
Si vous souhaitez définir une planification des sauvegardes différente de celle par défaut, consultez Sauvegardes configurables.
Exporter des sauvegardes vers votre propre compte cloud
Pour les utilisateurs qui souhaitent exporter des sauvegardes vers leur propre compte cloud, consultez cette page.