Rendimiento e impacto de du frecuente en btrfs

Rendimiento e impacto de du frecuente en btrfs

Estoy analizando el impacto de programar un cron para que se ejecute duen varias carpetas grandes (10-20 TB de archivos en total, # archivos es menos de 100.000) cada hora.

Por lo que tengo entendido, dulos usos statsleen información de inodos que se almacenan en caché en la RAM. ¿Es esto correcto? ¿O es caché de disco? ¿O ambos?

Si lo anterior es correcto, ¿puedo asumir que ejecutarlo ducon frecuencia hará lo siguiente?

  • no afecta negativamente el rendimiento de mi sistema y
  • ¿No supone un desgaste innecesario en los husillos?Esto podría ser un punto discutible pero solo hazme el favor.

Leí sobre varias herramientas que ofrecen algún tipo de almacenamiento en caché para dulos resultados, pero mi objetivo es detectar diferencias, por lo que no estoy seguro de que sean relevantes para la discusión.

¡Muchas gracias!

Respuesta1

Por lo que tengo entendido, du usa estadísticas que leen información de inodos que se almacenan en caché en la RAM. ¿Es esto correcto? ¿O es caché de disco? ¿O ambos?

"almacenado en caché en RAM": sí, hasta cierto punto. No del todo, ya que los buffers del sistema de archivos también consumen RAM, y 100000 inodos/listas de extensión también necesitan RAM, por lo que "ambos". ("caché de disco" tiene poco sentido: la estructura de datos está en el disco, por lo que no es un caché, son los datos subyacentes).

Si lo anterior es correcto, ¿puedo asumir que ejecutar du con frecuencia:

  • no afecta negativamente el rendimiento de mi sistema y

No puedes asumir eso. Incluso si todo el sistema de archivos estuviera en la RAM, esta sigue siendo una operación con uso intensivo de datos y utilizará tanto la CPU como la RAM y el ancho de banda de la interfaz de la unidad.

¿No supone un desgaste innecesario en los husillos? Esto podría ser un punto discutible pero solo hazme el favor.

Nunca he visto desgaste del husillo, entonces, ¿no? Además, mientras el disco duro está en uso, gira, por lo que no estoy seguro de que esta pregunta esté bien pensada.

Leí sobre varias herramientas que ofrecen algún tipo de almacenamiento en caché para la salida, pero mi objetivo es detectar diferencias, por lo que no estoy seguro de que sean relevantes para la discusión.

Si busca cambios, probablemente esté abordando esto al revés. dues probableno¡Entonces la herramienta preferida!

  1. De hecho, podría utilizar inotify para recibir notificaciones sobre cambios en las propiedades del archivo. ¡Eso supone menos carga que atravesar todo el sistema de archivos sólo para realizar algunos cambios!
  2. duen btrfste engañará sobre el almacenamiento utilizado. Btrfs es inteligente: los archivos copiados no necesitan almacenamiento adicional hasta que los escriba, las regiones de archivos dispersas tampoco, y la noción de instantáneas y subvolúmenes hace que todo esto sea un poco difícil conceptualmente. dusimplemente suma todos los tamaños de archivos. No es lo mismo que!

Le propongo que haga una nueva pregunta (publicación nueva, no en comentarios) en la que describa duen detalle el problema que está tratando de resolver y describa su enfoque actual. Su pregunta aquí parece referirse a un pequeño aspecto de un enfoque muy específico y no estoy seguro de que este enfoque resuelva su problema real.

información relacionada