
En la prensa tecnológica informal (es decir, periodística) y en los blogs y foros de discusión sobre tecnología en línea, uno comúnmente encuentra consejos anecdóticos para dejar cierta cantidad de espacio libre en las unidades de disco duro o de estado sólido. Se dan varias razones para ello o, a veces, ninguna. Como tales, estas afirmaciones, aunque quizás razonables en la práctica, tienen un aire mítico. Por ejemplo:
-
"Una vez que sus discos estén llenos al 80%, debe considerarloslleno, y deberías eliminar cosas o actualizarlas inmediatamente. si golpean90%lleno, debes considerar que tus pantalones personales están en llamas reales y reaccionar con la cantidad adecuada de inmediatez para remediarlo”. (Fuente.)
-
"Para mantener la recolección de basura con la máxima eficiencia, el consejo tradicional es mantener entre el 20 y el 30 por ciento del disco vacío". (Fuente.)
-
"Me han dicho que debería dejar aproximadamente un 20 % libre en un HD para obtener un mejor rendimiento, que un HD realmente se ralentiza cuando está casi lleno". (Fuente.)
-
“Deberías dejar espacio para los archivos de intercambio y los archivos temporales. Actualmente dejo un 33% libre y prometo no tener menos de 10 GB de espacio libre en el disco duro”. (Fuente.)
-
"Yo diría que normalmente el 15%, sin embargo, con el tamaño de los discos duros hoy en día, siempre que tenga suficiente para sus archivos temporales y de intercambio, técnicamente está a salvo". (Fuente.)
-
"Recomendaría más del 10% en Windows porque la desfragmentación no se ejecutará si no hay esa cantidad libre en la unidad cuando la ejecutas". (Fuente.)
-
"Por lo general, conviene dejar alrededor del 10% libre para evitar la fragmentación". (Fuente.)
-
"Si su disco está constantemente lleno en más del 75 u 80 por ciento, vale la pena considerar la actualización a un SSD más grande". (Fuente.)
¿Se ha realizado alguna investigación, preferiblemente publicada en una revista revisada por pares, sobre el porcentaje o la cantidad absoluta de espacio libre requerido por combinaciones específicas de sistemas operativos, sistemas de archivos y tecnología de almacenamiento (por ejemplo, plato magnético versus estado sólido)? (Idealmente, dicha investigación también explicaría la razón para no exceder la cantidad específica de espacio utilizado, por ejemplo, para evitar que el sistema se quede sin espacio).intercambiar espacio, o para evitar la pérdida de rendimiento.)
Si conoce alguna investigación de este tipo, le agradecería que pudiera responder con un enlace y un breve resumen de los hallazgos. ¡Gracias!
Respuesta1
¿Ha habido alguna investigación, preferiblemente publicada en una revista revisada por pares […]?
Para ello hay que retroceder mucho más de 20 años, ya sea en materia de administración de sistemas o de otro tipo. Este era un tema candente, al menos en el mundo de los sistemas operativos de computadoras personales y estaciones de trabajo, hace más de 30 años; la época en la que la gente de BSD estaba desarrollando el Berkeley Fast File System y Microsoft e IBM estaban desarrollando el High Performance File System.
La literatura sobre ambos escrita por sus creadores analiza las formas en que se organizaron estos sistemas de archivos para que elpolítica de asignación de bloquesprodujo un mejor rendimiento al intentar hacer contiguos bloques de archivos consecutivos. Puede encontrar discusiones sobre esto y sobre el hecho de que la cantidad y ubicación del espacio libre que queda para asignar bloques afecta la ubicación de los bloques y, por lo tanto, el rendimiento, en artículos contemporáneos sobre el tema.
Debería ser bastante obvio, por ejemplo, a partir de la descripción del algoritmo de asignación de bloques del FFS de Berkeley que, si no hay espacio libre en el grupo de cilindros actual y secundario y el algoritmo alcanza así el cuarto nivel de retroceso ("aplicar un análisis exhaustivo buscar en todos los grupos de cilindros"), el rendimiento de la asignación de bloques de disco se verá afectado al igual que la fragmentación del archivo (y, por tanto, el rendimiento de lectura).
Son estos y otros análisis similares (que están lejos de ser los únicos diseños de sistemas de archivos que apuntaban a mejorar las políticas de diseño de los diseños de sistemas de archivos de la época) sobre los que se ha basado la sabiduría recibida de los últimos 30 años.
Por ejemplo: La máxima del artículo original de que los volúmenes FFS deben mantenerse a menos del 90% de su capacidad, para que no se vea afectado el rendimiento, que se basó en experimentos realizados por los creadores, se puede encontrar repetida acríticamente incluso en libros sobre sistemas de archivos Unix publicados este siglo (p. ej. , Paté 2003 pág . Pocas personas lo cuestionan, aunque Amir H. Majidimehr realmente lo hizo el siglo anterior, diciendo que en la práctica no se ha observado un efecto notable; sobre todo debido al mecanismo habitual de Unix que reserva ese 10% final para uso de superusuario, lo que significa que un disco lleno al 90% está efectivamente lleno al 100% para los que no son superusuarios.de todos modos (Majidimehr1996 p. 68) . Lo mismo hizo Bill Calkins, quien sugiere que en la práctica se puede llenar hasta el 99%, con tamaños de disco del siglo XXI, antes de observar los efectos en el rendimiento del poco espacio libre porque incluso el 1% de los discos de tamaño moderno es suficiente para tener mucho espacio libre no fragmentado. Todavía para jugar (Calkins2002 p. 450) .
Este último es un ejemplo de cómo la sabiduría recibida puede volverse errónea. Hay otros ejemplos de esto. Así como los mundos SCSI y ATA dedireccionamiento de bloque lógicoygrabación de bits por zonasmás bien arrojó por la ventana todos los cuidadosos cálculos delatencia rotacionalen el diseño del sistema de archivos BSD, por lo que la mecánica física de los SSD más bien tira por la ventana el espacio libre recibido con sabiduría que se aplica a los discos Winchester.
Con los SSD, la cantidad de espacio libreen el dispositivo en su conjunto, es decir, en todos los volúmenes del disco.y entre ellos, tiene un efecto tanto sobre el rendimiento como sobre la vida útil. Y la base misma de la idea de que un archivo debe almacenarse en bloques con direcciones de bloque lógicas contiguas se ve socavada por el hecho de que los SSD no tienen platos que rotar ni cabezales que buscar. Las reglas vuelven a cambiar.
Con los SSD, la cantidad mínima recomendada de espacio libre es en realidadmásque el tradicional 10% que surge de experimentos con discos Winchester y Berkeley FFS hace 33 años. Anand Lal Shimpi da el 25%, por ejemplo. Esta diferencia se ve agravada por el hecho de que tiene que ser espacio libre.en todo el dispositivo, mientras que la cifra del 10% esdentro de cada volumen FFSy, por lo tanto, se ve afectado por si el programa de partición sabe RECORTAR todo el espacio que la tabla de particiones no asigna a un volumen de disco válido.
También se ve agravado por complejidades como los controladores del sistema de archivos compatibles con TRIM que pueden TRIM liberar espacio.dentrovolúmenes de discos y el hecho de que los propios fabricantes de SSD tambiényaasignar distintos grados deespacio reservadoeso ni siquiera es visible fuera del dispositivo (es decir, para el host) para diversos usos, como recolección de basura y nivelación de desgaste.
Bibliografía
- Marshall K. McKusick, William N. Joy, Samuel J. Leffler y Robert S. Fabry (1984-08). Un sistema de archivos rápido para UNIX. Transacciones ACM en sistemas informáticos. Volumen 2, número 3. págs.181–197. Archivado en cornell.edu.
- Ray Duncan (1989-09).Objetivos de diseño e implementación del nuevo sistema de archivos de alto rendimiento.. Revista de sistemas de Microsoft. Volumen 4, número 5. págs. 1–13. Archivado en wisc.edu.
- Marshall Kirk McKusick, Keith Bostic, Michael J. Karels y John S. Quarterman (30 de abril de 1996). "El sistema de archivos rápido de Berkeley".El diseño y la implementación del sistema operativo 4.4 BSD. Profesional de Addison-Wesley. ISBN 0201549794.
- Puentes Dan (1996-05).Dentro del sistema de archivos de alto rendimiento: Parte 4: Fragmentación, mapas de bits del espacio en disco y páginas de códigos. Bits significativos. Archivado en la revista Electronic Developer para OS/2.
- Keith A. Smith y Margo Seltzer (1996). Una comparación de las políticas de asignación de discos FFS. Actas de la Conferencia Técnica Anual de USENIX.
- Steve D. Paté (2003). "Análisis de desempeño de la FFS". Sistemas de archivos UNIX: evolución, diseño e implementación. John Wiley amplificador; Hijos. ISBN 9780471456759.
- Amir H. Majidimehr (1996).Optimización de UNIX para el rendimiento. Prentice Hall. ISBN 9780131115514.
- Bill Calkins (2002). "Gestión de sistemas de archivos". Dentro de Solaris 9. Que Editorial. ISBN 9780735711013.
- Anand Lal Shimpi (4 de octubre de 2012).Explorando la relación entre el área libre y la consistencia del rendimiento en los SSD modernos. AnandTech.
- Henry Cook, Jonathan Ellithorpe, Laura Keys y Andrew Waterman (2010).IotaFS: Explorando optimizaciones del sistema de archivos para SSD. Transacciones IEEE sobre electrónica de consumo. Archivado en stanford.edu.
- https://superuser.com/a/1081730/38062
- Accela Zhao (10 de abril de 2017).Un resumen sobre SSD y FTL. github.io.
- ¿Windows recorta el espacio sin particionar (sin formatear) en un SSD?
Respuesta2
Aunque no puedo hablar de "investigación" publicada en "revistas revisadas por pares" (y no me gustaría tener que depender de ellas para el trabajo diario), sí puedo hablar de las realidades de cientos de publicaciones servidores bajo una variedad de sistemas operativos durante muchos años:
Hay tres razones por las que un disco lleno reduce el rendimiento:
- Falta de espacio libre: piense en archivos temporales, actualizaciones, etc.
- Degradación del sistema de archivos: la mayoría de los sistemas de archivos sufren en su capacidad para distribuir archivos de manera óptima si no hay suficiente espacio disponible.
- Degradación a nivel de hardware: los discos SSD y SMR sin suficiente espacio libre mostrarán un rendimiento reducido y, peor aún, una mayor latencia (a veces en muchos órdenes de magnitud).
El primer punto es trivial, especialmente porque ningún sistema de producción en su sano juicio utilizaría jamás el espacio de intercambio para expandir y contraer archivos dinámicamente.
El segundo punto difiere mucho entre los sistemas de archivos y la carga de trabajo. Para un sistema Windows con carga de trabajo mixta, un umbral del 70% resulta bastante utilizable. Para un sistema de archivos ext4 de Linux con pocos archivos pero grandes (por ejemplo, sistemas de transmisión de video), esto podría llegar hasta más del 90%.
El tercer punto depende del hardware y el firmware, pero especialmente los SSD con un controlador Sandforce pueden recurrir al borrado de bloques libres en cargas de trabajo de alta escritura, lo que lleva a que las latencias de escritura aumenten en miles de por ciento. Normalmente dejamos un 25 % libre en el nivel de partición y luego observamos una tasa de llenado inferior al 80 %.
Recomendaciones
Me doy cuenta de que mencionécómoasegúrese de que se aplique una tasa de cumplimiento máxima. Algunos pensamientos aleatorios, ninguno de ellos "revisado por pares" (pagados, falsos o reales), pero todos ellos provenientes de sistemas de producción.
- Utilice los límites del sistema de archivos:
/var
no pertenece al sistema de archivos raíz. - Seguimiento, seguimiento, seguimiento. Utilice una solución ya preparada si le conviene; de lo contrario, analice el resultado
df -h
y deje que suenen las alarmas por si acaso. Esto puede ahorrarle 30 kernels en un root fs con actualizaciones automáticas instaladas y ejecutándose sin la opción de eliminación automática. - Sopese la posible interrupción de un desbordamiento de fs con el costo de hacerlo más grande en primer lugar: si no está en un dispositivo integrado, podría simplemente duplicar esos 4G para root.
Respuesta3
¿Se ha realizado alguna investigación... sobre el porcentaje o la cantidad absoluta de espacio libre requerido por combinaciones específicas de sistemas operativos, sistemas de archivos y tecnología de almacenamiento...?
En 20 años de administración de sistemas, nunca encontré investigaciones que detallen los requisitos de espacio libre de varias configuraciones. Sospecho que esto se debe a que las computadoras están configuradas de manera tan variada que sería difícil hacerlo debido a la gran cantidad de configuraciones posibles del sistema.
Para determinar cuánto espacio libre requiere un sistema, se deben tener en cuenta dos variables:
El espacio mínimo requerido para evitar comportamientos no deseados,que a su vez puede tener una definición fluida.
Tenga en cuenta que no es útil definir el espacio libre requerido solo con esta definición, ya que eso equivale a decir que es seguro conducir a 80 mph hacia una pared de ladrillos hasta el mismo punto en el que choca con ella.
La velocidad a la que se consume el almacenamiento,lo que dicta que se reserve una cantidad variable adicional de espacio, para que el sistema no se degrade antes de que el administrador tenga tiempo de reaccionar.
La combinación específica de sistema operativo, sistemas de archivos, arquitectura de almacenamiento subyacente, junto con el comportamiento de la aplicación, configuración de la memoria virtual, etc., crea todo un desafío para quien desea proporcionar requisitos definitivos de espacio libre.
Es por eso que existen tantos "pepitas" de consejos. Notarás que muchos de ellos hacen recomendaciones sobre una configuración específica. Por ejemplo, "Si tiene un SSD que está sujeto a problemas de rendimiento cuando se acerca a su capacidad, manténgase por encima del 20 % de espacio libre".
Debido a que no existe una respuesta simple a esta pregunta, el enfoque correcto para identificarsuEl requisito mínimo de espacio libre del sistema es considerar las diversas recomendaciones genéricas a la luz de la configuración específica de su sistema, luego establecer un umbral, monitorearlo y estar dispuesto a ajustarlo según sea necesario.
O simplemente podrías conservar al menos un 20% de espacio libre.A menos, por supuesto, que tengas un volumen RAID 6 de 42 TB respaldado por una combinación de SSD y discos duros tradicionales y un archivo de intercambio preasignado... (eso es una broma para la gente seria).
Respuesta4
Para los SSD debería quedar algo de espacio porque la tasa de reescritura aumenta y afecta negativamente el rendimiento de escritura del disco. El 80% de capacidad es un valor seguro probablemente para todos los discos SSD; algunos modelos más recientes pueden funcionar bien incluso con un 90-95% de capacidad ocupada.
https://www.howtogeek.com/165542/why-solid-state-drives-slow-down-as-you-fill-them-up/