Restic: Imprimer la taille de la sauvegarde lors de la liste des instantanés (amélioration)

Créé le 10 déc. 2016  ·  20Commentaires  ·  Source: restic/restic

Sortie de restic version

Quelconque.

Comportement attendu

L'ajout d'une colonne supplémentaire pour lister la taille de la sauvegarde (en octets) peut être très utile.
Cela vous aidera à distinguer les différentes sauvegardes simplement en vérifiant leur taille.

$ restic snapshots
ID        Date                 Host        Tags        Directory    Size
--------------------------------------------------------------------------
5b969a0e  2016-12-09 15:10:32  localhost               myfile       390865

Comportement réel

$ restic snapshots
ID        Date                 Host        Tags        Directory
----------------------------------------------------------------------
5b969a0e  2016-12-09 15:10:32  localhost               myfile
stats user interface feature enhancement

Commentaire le plus utile

Le problème avec la taille des "nouveaux" blobs (ajoutés par cet instantané particulier) devient moins pertinent au fil du temps, car ces blobs seront référencés par des instantanés ultérieurs. De plus, lorsque des instantanés antérieurs sont supprimés, le nombre de blobs référencés par un instantané particulier augmente.

Je pense qu'il est utile d'imprimer ces informations juste après la fin de la sauvegarde, et nous pouvons également les enregistrer dans la structure de données d'instantané du référentiel. J'ai prévu d'ajouter une sorte de vue "détaillée" pour un instantané particulier, et je pense que c'est une bonne idée d'y afficher le nombre et la taille des nouveaux blobs, mais dans la vue d'ensemble (commande snapshots ) ce n'est pas assez pertinent. Là, je pense que restic devrait afficher toute la taille d'un instantané particulier (ce que vous obtenez si vous le restaurez), car cela ne change pas.

Tous les 20 commentaires

Merci pour la suggestion. Quelle serait la taille selon vous ? Étant donné que toutes les données sont dédupliquées, une "taille" pour un instantané particulier n'est pas si facile à déterminer. Serait-ce la taille de toutes les données référencées dans cet instantané ? Ou les données qui n'étaient pas encore stockées dans le référentiel au moment de la prise de l'instantané (nouvelles données) ?

C'est une très bonne proposition. Le nombre sur la droite doit être la taille cumulée des blobs ajoutés au dépôt. C'est le paramètre quantitatif le plus intéressant de toute exécution de sauvegarde.

Combien d'espace mon incrémentiel a-t-il perdu cette nuit ? Oups, c'est 10x plus qu'hier soir, j'ai laissé de la camelote quelque part (ou j'ai oublié de mettre des exclus), je ferais mieux de tout nettoyer. ;)

+1 pour la suggestion de @zcalusic

Le problème avec la taille des "nouveaux" blobs (ajoutés par cet instantané particulier) devient moins pertinent au fil du temps, car ces blobs seront référencés par des instantanés ultérieurs. De plus, lorsque des instantanés antérieurs sont supprimés, le nombre de blobs référencés par un instantané particulier augmente.

Je pense qu'il est utile d'imprimer ces informations juste après la fin de la sauvegarde, et nous pouvons également les enregistrer dans la structure de données d'instantané du référentiel. J'ai prévu d'ajouter une sorte de vue "détaillée" pour un instantané particulier, et je pense que c'est une bonne idée d'y afficher le nombre et la taille des nouveaux blobs, mais dans la vue d'ensemble (commande snapshots ) ce n'est pas assez pertinent. Là, je pense que restic devrait afficher toute la taille d'un instantané particulier (ce que vous obtenez si vous le restaurez), car cela ne change pas.

On m'a immédiatement rappelé l'indicateur de statistiques de rdiff-backup (voir https://www.systutorials.com/docs/linux/man/1-rdiff-backup-statistics/ ). parfois il est agréable de voir une sorte de delta entre 2 instantanés.

En effet, mais c'est une autre chose : il est calculé en direct et compare deux instantanés. Nous pouvons ajouter quelque chose comme ça, mais faire cela pour la liste d'aperçu snapshots est trop cher (au moins avec les informations dont nous disposons actuellement dans les structures de données).

il peut être utile de connaître la taille des données « uniques » pour l'instantané par rapport à la taille totale (y compris les données dédupliquées) de l'instantané.

OMI, il serait très utile d'avoir une idée de l'espace supplémentaire utilisé pour un nouvel instantané. Il peut s'agir même d'un espace de stockage physique calculé lors de la sauvegarde et stocké dans les métadonnées de l'instantané. Si un instantané est supprimé, ces métadonnées devraient alors être invalidées dans tous les futurs instantanés.

Je pense que j'apprécierais une telle fonctionnalité même si rien d'autre n'est fait dans ce sens. Cependant, une option permettant de recalculer cette "taille supplémentaire" après la suppression de certaines sauvegardes précédentes serait également intéressante. Je pense que c'est ce que fait

La chose la plus fondamentale que j'aimerais savoir d'emblée est la quantité d'espace disque que le contenu de l'instantané X consommerait sur le disque cible si je le restaurais.

De préférence, je serais également en mesure d'obtenir ces informations uniquement pour un sous-ensemble de fichiers, par exemple s'il y avait une commande size qui prenait le même type d'options d'inclusion/exclusion que la commande restore . Ou si la commande restore a une option qui lui permet de simplement rapporter des statistiques comme celle-ci au lieu de réellement restaurer.

Merci @rawtaz de m'avoir signalé ce problème.

Je stocke les sauvegardes dans un stockage mesuré (Backblaze B2). Je veux savoir combien de nouvelles données je crée à chaque fois que j'exécute une sauvegarde. Il semble que cela devrait être facile à calculer pendant le processus de sauvegarde ; Je serais heureux si restic enregistre simplement cela dans le cadre de la conclusion d'une sauvegarde... mais il semble qu'il pourrait également être utile de stocker cela en tant qu'attribut de l'instantané (afin qu'il puisse être interrogé à l'avenir).

Je ne suis pas vraiment intéressé par tout ce qui nécessite une nouvelle analyse approfondie du référentiel, car cela entraînera simplement des frais supplémentaires.

Des nouvelles?

Bonjour

Je voudrais appuyer cette suggestion. En plus de « Quelle serait la taille de cet instantané si je le restaurais » pour tout instantané existant et « combien cet instantané a-t-il ajouté » lorsqu'un instantané est créé, j'ai une troisième suggestion :

Il serait également utile de pouvoir répondre à la question : « De combien la taille de mon dépôt serait-elle réduite si je supprimais le ou les instantanés suivants ? » Cela serait utile dans restic forget --prune --dry-run pour décider de supprimer ou non les instantanés. Par exemple, j'ai récemment supprimé 20 des 40 instantanés dans un dépôt, et cela a réduit la taille de 1,1 Go à 1,0 Go. Si j'avais su que cela n'aurait économisé que 100 Mo, j'aurais probablement conservé les anciens instantanés.

@mholt a créé le #1729 pour montrer quelques statistiques. Peut-être qu'il peut intervenir pour dire quelque chose sur les progrès de ce PR.

@dimejo C'est fait -- j'attends juste qu'il soit révisé/fusionné. :)

Sauter sur un très vieux problème ici, mais pour moi, il y a 2 champs de taille importants lorsque l'on pense aux instantanés

  • La taille de l'instantané dans le stockage
  • La taille de restauration

par exemple

$ restic snapshots
ID        Date                 Host        Tags        Directory    Snapshot Size   Restore Size 
--------------------------------------------------------------------------------------------------
5b969a0e  2016-12-09 15:10:32  localhost               myfile       10 MB           57 GB

Au moins, je pourrais dire combien d'espace un seul instantané utilise et de combien d'espace j'ai besoin pour effectuer une restauration.

Comme @fd0 l'a déjà souligné, l'impression de la taille à chaque invocation de restic snapshots serait une commande assez coûteuse. Mais vous pouvez utiliser les statistiques restic pour imprimer la taille des instantanés individuels ou l'ensemble du référentiel.

Je pense qu'il est utile d'imprimer ces informations juste après la fin de la sauvegarde, et nous pouvons également les enregistrer dans la structure de données d'instantané du référentiel. J'ai prévu d'ajouter une sorte de vue "détaillée" pour un instantané particulier, et je pense que c'est une bonne idée d'y afficher le nombre et la taille des nouveaux blobs, mais dans la vue d'ensemble (commande snapshots ) ce n'est pas assez pertinent. Là, je pense que restic devrait afficher toute la taille d'un instantané particulier (ce que vous obtenez si vous le restaurez), car cela ne change pas.

Bonne idée! Cette amélioration est-elle dans la file d'attente ? La taille totale des données dédupliquées dans le référentiel serait également utile dans un tel synopsis.

Une mise à jour pour cette fonctionnalité ? Il est très utile de pouvoir voir chaque taille de snapshot et sa taille de restauration.

+1

Pas à ce stade. S'il y a des mises à jour, cela apparaîtra dans ce numéro.

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

fbartels picture fbartels  ·  3Commentaires

viric picture viric  ·  5Commentaires

ikarlo picture ikarlo  ·  4Commentaires

shibumi picture shibumi  ·  3Commentaires

reallinfo picture reallinfo  ·  4Commentaires