Restic: Imprima el tamaño de la copia de seguridad al enumerar las instantáneas (mejora)

Creado en 10 dic. 2016  ·  20Comentarios  ·  Fuente: restic/restic

Salida de restic version

Ningún.

Comportamiento esperado

Agregar una columna adicional para enumerar el tamaño de la copia de seguridad (en bytes) puede ser muy útil.
Ayudará a distinguir entre diferentes copias de seguridad con solo verificar su tamaño.

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

Comportamiento real

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

Comentario más útil

El problema con el tamaño de los blobs "nuevos" (agregados por esa instantánea en particular) se vuelve menos relevante con el tiempo, porque esos blobs serán referenciados por instantáneas posteriores. Además, cuando se eliminan instantáneas anteriores, aumentará la cantidad de manchas a las que hace referencia una instantánea en particular.

Creo que es valioso imprimir esta información inmediatamente después de que se completa la copia de seguridad, y también podemos registrarla en la estructura de datos de la instantánea en el repositorio. He planeado agregar algún tipo de vista de 'detalle' para una instantánea en particular, y creo que es una buena idea mostrar el número y el tamaño de los blobs nuevos allí, pero en la descripción general (comando snapshots ) no es lo suficientemente relevante. Allí, creo que restic debería mostrar el tamaño completo de una instantánea en particular (lo que obtienes si la restauraras), porque eso no cambia.

Todos 20 comentarios

Gracias por la sugerencia. ¿Cuál esperarías que fuera el tamaño? Dado que todos los datos se deduplican, el "tamaño" de una instantánea en particular no es tan fácil de determinar. ¿Sería ese el tamaño de todos los datos a los que se hace referencia en esa instantánea? ¿O los datos que aún no estaban almacenados en el repositorio cuando se tomó la instantánea (datos nuevos)?

Esta es una muy buena propuesta. El número de la derecha debe ser el tamaño acumulativo de los blobs agregados al repositorio. Es el parámetro cuantitativo más interesante de cualquier ejecución de copia de seguridad.

¿Cuánto espacio desperdició mi incremental esta noche? Vaya, es 10 veces más que anoche, dejé algo de basura en alguna parte (o me olvidé de poner algunas exclusiones), mejor lo limpio. ;)

+1 por sugerencia de @zcalusic

El problema con el tamaño de los blobs "nuevos" (agregados por esa instantánea en particular) se vuelve menos relevante con el tiempo, porque esos blobs serán referenciados por instantáneas posteriores. Además, cuando se eliminan instantáneas anteriores, aumentará la cantidad de manchas a las que hace referencia una instantánea en particular.

Creo que es valioso imprimir esta información inmediatamente después de que se completa la copia de seguridad, y también podemos registrarla en la estructura de datos de la instantánea en el repositorio. He planeado agregar algún tipo de vista de 'detalle' para una instantánea en particular, y creo que es una buena idea mostrar el número y el tamaño de los blobs nuevos allí, pero en la descripción general (comando snapshots ) no es lo suficientemente relevante. Allí, creo que restic debería mostrar el tamaño completo de una instantánea en particular (lo que obtienes si la restauraras), porque eso no cambia.

Me recordó instantáneamente el indicador de estadísticas de rdiff-backup (consulte https://www.systutorials.com/docs/linux/man/1-rdiff-backup-statistics/). a veces es bueno ver una especie de delta entre 2 instantáneas.

De hecho, pero eso es algo diferente: se calcula en vivo y compara dos instantáneas. Podemos agregar algo así, pero hacer eso para la lista general snapshots es demasiado costoso (al menos con la información que tenemos disponible en las estructuras de datos en este momento).

Podría ser útil conocer el tamaño de los datos "únicos" de la instantánea frente al tamaño total (incluidos los datos dedupd) de la instantánea.

En mi opinión, sería muy útil tener una idea de cuánto espacio adicional se utilizó para una nueva instantánea. Esto podría ser incluso solo espacio de almacenamiento físico calculado durante la copia de seguridad y almacenado en los metadatos de la instantánea. Si se elimina alguna instantánea, estos metadatos deben invalidarse en todas las instantáneas futuras.

Creo que agradecería esta característica incluso si no se hace nada más en esta dirección. Sin embargo, una opción de recalcular este "tamaño extra" después de que se hayan eliminado algunas copias de seguridad anteriores también sería buena. Creo que esto es lo que hace BackupLoupe para Time Machine en Mac OS. (La deduplicación en Time Machine es muy básica, pero el problema de definir el "tamaño de una instantánea" es el mismo).

Lo más fundamental que me gustaría saber desde el principio es cuánto espacio en disco consumiría el contenido de la instantánea X en el disco de destino si lo restaurara.

Preferiblemente, también podría obtener esta información solo para un subconjunto de los archivos, por ejemplo, si hubiera un comando size que tomara el mismo tipo de opciones de inclusión / exclusión que el comando restore . O si el comando restore tiene una opción que hace que solo informe estadísticas como esta en lugar de restaurarlas.

Gracias @rawtaz por señalarme este problema.

Estoy almacenando copias de seguridad en almacenamiento medido (Backblaze B2). Quiero saber cuántos datos nuevos estoy creando cada vez que ejecuto una copia de seguridad. Parece que esto debería ser fácil de calcular durante el proceso de copia de seguridad; Me alegraría si restic simplemente registrara eso como parte de la conclusión de una copia de seguridad ... pero parece que también podría ser útil almacenar esto como un atributo de la instantánea (para que pueda consultarse en el futuro).

Realmente no estoy interesado en nada que requiera un escaneo extenso del repositorio, ya que eso simplemente incurrirá en cargos adicionales.

¿Hay noticias?

Hola

Me gustaría respaldar esta sugerencia. Además de '¿Qué tan grande sería esta instantánea si la restaurara' para cualquier instantánea existente y 'cuánto agregó esta instantánea' cuando se crea una instantánea, tengo una tercera sugerencia:

También ayudaría poder responder la pregunta: "¿En cuánto se reduciría el tamaño de mi repositorio si elimino las siguientes instantáneas?" Esto sería útil en restic forget --prune --dry-run al decidir si se deben descartar instantáneas. Por ejemplo, recientemente coloqué 20 de las 40 instantáneas en un repositorio y reduje el tamaño de 1,1 GB a 1,0 GB. Si hubiera sabido que esto solo habría ahorrado 100 MB, probablemente habría guardado las instantáneas más antiguas.

@mholt hizo # 1729 para mostrar algunas estadísticas. Tal vez pueda intervenir para decir algo sobre el progreso de este RP.

@dimejo Está hecho, solo esperando a que se revise / fusione. :)

Saltando sobre un problema realmente antiguo aquí, pero para mí hay 2 campos de tamaño importantes cuando pienso en instantáneas

  • El tamaño de la instantánea almacenada
  • El tamaño de restauración

p.ej

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

Al menos entonces podría decir cuánto espacio está usando una sola instantánea y cuánto espacio necesito para realizar una restauración.

Como ya señaló @ fd0 , imprimir el tamaño en cada invocación de restic snapshots sería un comando bastante caro. Pero puede usar estadísticas restic para imprimir el tamaño de instantáneas individuales o el repositorio completo.

Creo que es valioso imprimir esta información inmediatamente después de que se completa la copia de seguridad, y también podemos registrarla en la estructura de datos de la instantánea en el repositorio. He planeado agregar algún tipo de vista de 'detalle' para una instantánea en particular, y creo que es una buena idea mostrar el número y el tamaño de los blobs nuevos allí, pero en la descripción general (comando snapshots ) no es lo suficientemente relevante. Allí, creo que restic debería mostrar el tamaño completo de una instantánea en particular (lo que obtienes si la restauraras), porque eso no cambia.

¡Gran idea! ¿Está esta mejora en la cola? El tamaño total de los datos deduplicados en el repositorio también sería útil en dicha sinopsis.

¿Alguna actualización para esta función? Es muy útil poder ver el tamaño de cada instantánea y su tamaño de restauración.

+1

No en este momento. Si hay alguna actualización, se mostrará en este número.

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

kontakm picture kontakm  ·  4Comentarios

christian-vent picture christian-vent  ·  3Comentarios

TheLastProject picture TheLastProject  ·  3Comentarios

shibumi picture shibumi  ·  3Comentarios

axllent picture axllent  ·  4Comentarios