¿Cómo afecta la compresión del sistema de archivos al rendimiento de escritura en un NAS doméstico?

Eva Wong es la Redactora técnica y manitas residente en ZimaSpace. Una geek de toda la vida con pasión por los homelabs y el software de código abierto, se especializa en traducir conceptos técnicos complejos en guías accesibles y prácticas. Eva cree que el autoalojamiento debe ser divertido, no intimidante. A través de sus tutoriales, empodera a la comunidad para desmitificar las configuraciones de hardware, desde construir su primer NAS hasta dominar los contenedores Docker.

La compresión del sistema de archivos puede hacer que un NAS doméstico escriba más rápido cuando elimina más trabajo de almacenamiento del que añade en trabajo de CPU, pero también puede aumentar la latencia.

El resultado depende de lo que almacene el NAS, qué algoritmo y nivel de compresión use, y si el cuello de botella activo es el procesador, el grupo de discos o la ruta de escritura síncrona. Este artículo se centra en la compresión transparente del sistema de archivos, no en archivos ZIP o compresión SMB, porque cada uno actúa en una etapa diferente del camino de datos.

La compensación principal: menos bytes escritos, más trabajo de CPU

La compresión transparente se sitúa dentro de la ruta de escritura del sistema de archivos. Las aplicaciones envían datos lógicos, el sistema de archivos divide esos datos en registros o extensiones, y el motor de compresión intenta codificar cada unidad en menos bytes antes de la asignación. Cuando tiene éxito, menos bloques llegan al grupo de almacenamiento. Una explicación detallada de la compresión transparente del sistema de archivos muestra por qué el tamaño del registro, la relación de compresión y el tamaño físico del bloque influyen en la cantidad de E/S realmente ahorrada.

Esto crea un intercambio en lugar de un aumento universal de velocidad. La CPU pasa tiempo encontrando patrones repetidos, pero los discos, SSD, la capa de paridad y el bus de almacenamiento manejan una carga física menor. Si el tiempo de dispositivo ahorrado es mayor que el tiempo de compresión, el rendimiento de escritura visible para la aplicación aumenta. Si la CPU ya estaba ocupada o los datos apenas se reducen, la etapa adicional puede aumentar la latencia de escritura sin eliminar suficiente E/S para compensar.

La velocidad reportada también puede ser malinterpretada. Una herramienta de copia mide los bytes lógicos aceptados del cliente, mientras que las estadísticas del disco muestran los bytes físicos escritos después de la compresión. Por lo tanto, un NAS puede reportar 500 MB/s de progreso lógico mientras que sus discos reciben mucho menos de 500 MB/s. La compresión del sistema de archivos no reduce automáticamente el tráfico SMB entrante; la compresión de red tendría que actuar antes en el camino.

La compresibilidad decide cuánto trabajo de almacenamiento desaparece

La compresión solo elimina trabajo cuando la entrada contiene patrones reutilizables. Texto, registros, código fuente, campos repetidos de bases de datos y regiones llenas de ceros a menudo tienen suficiente redundancia para reducirse sustancialmente. JPEG, video HEVC, archivos ZIP y archivos encriptados ya han eliminado u ocultado esos patrones. La relación entre la redundancia de datos y la compresión explica por qué dos carpetas NAS de igual tamaño pueden producir resultados opuestos en el rendimiento de escritura.

Un NAS doméstico rara vez tiene una carga de trabajo uniforme, por lo que la pregunta útil no es si la compresión es rápida en aislamiento. Es si el conjunto de datos activo se vuelve lo suficientemente pequeño para reducir la parte más lenta de su propia ruta de escritura.

Carga de trabajo de NAS doméstico Probable compresibilidad Trabajo desplazado por la compresión Resultado probable de escritura
Registros, JSON, código fuente y documentos Alto Muchos bloques de almacenamiento reemplazados por trabajo de CPU A menudo mayor rendimiento lógico
Imágenes VM y archivos de bases de datos Variable Los ceros y páginas repetidas pueden reducirse; las actualizaciones aleatorias permanecen Dependiente de la carga de trabajo y tamaño de bloque
Fotos RAW y activos de proyectos sin comprimir De bajo a moderado Se elimina algo de tráfico de disco Pequeña ganancia o resultado neutral
JPEG, HEVC, MP3 y archivos ZIP Bajo La CPU prueba datos pero elimina pocos bytes Usualmente neutral o ligeramente más lento
Copias de seguridad encriptadas y volúmenes encriptados Muy bajo después de la encriptación Se elimina poco I/O físico La sobrecarga de CPU es más visible

El orden también importa. Los datos comprimidos antes de la encriptación pueden seguir ahorrando espacio, pero el texto cifrado normalmente parece de alta entropía para una capa posterior del sistema de archivos. De manera similar, una imagen VM dispersa o parcialmente vacía puede comprimirse bien aunque el sistema operativo dentro de ella almacene contenido mixto. Las extensiones de archivo son pistas útiles, no mediciones fiables de los bloques que ve el sistema de archivos.

El algoritmo y el nivel de compresión establecen la tasa de intercambio CPU–E/S

Los algoritmos rápidos favorecen un tiempo de procesamiento bajo y una reducción de tamaño moderada, mientras que los algoritmos más pesados dedican más tiempo de CPU buscando una mejor proporción. Esta es la misma frontera entre velocidad y tamaño visible en comparaciones independientes de métodos de compresión. Para un NAS siempre activo, la mejor proporción no es automáticamente el mejor rendimiento de escritura porque todos los escritores en primer y segundo plano comparten el mismo procesador.

El nivel de compresión hace ese límite más granular. Las mediciones publicadas de niveles Zstandard muestran que la velocidad de compresión cae a medida que aumenta la relación solicitada, mientras que la descompresión sigue siendo comparativamente rápida. Eso hace que un nivel alto sea atractivo para escrituras de archivo en hardware inactivo pero potencialmente disruptivo para bases de datos en vivo, registros de contenedores o varios clientes escribiendo a la vez.

Ninguna etiqueta de algoritmo ofrece un resultado universal. La generación del procesador, núcleos disponibles, ancho de banda de memoria, implementación, tamaño de fragmento y conjunto de datos importan. Un algoritmo rápido en una CPU de baja potencia puede seguir siendo el cuello de botella detrás de un grupo NVMe rápido, mientras que un algoritmo más fuerte puede permanecer efectivamente gratuito cuando discos lentos dominan el mismo NAS.

El medio de almacenamiento y el patrón de escritura mueven el cuello de botella.

Los discos rotativos suelen ofrecer más oportunidad para que la compresión ayude porque cada bloque eliminado evita un trabajo relativamente costoso del dispositivo. Un grupo NVMe puede absorber mucha más data antes de que el almacenamiento se convierta en el límite, por lo que el tiempo de CPU para compresión es más fácil de exponer. El principio más amplio es que el trabajo de CPU puede reemplazar la E/S de almacenamiento, pero el recurso mejor para gastar depende del equilibrio real del hardware.

La forma de escritura también cambia la respuesta. Grandes flujos asíncronos dan al sistema de archivos espacio para agrupar y paralelizar el trabajo. Las actualizaciones pequeñas y síncronas aún esperan confirmaciones de durabilidad, por lo que reducir el tamaño de la carga útil puede no eliminar la latencia fija de un vaciado o compromiso de diario. Las implementaciones del sistema de archivos también comprimen en unidades específicas: el comportamiento actual de compresión Btrfs, por ejemplo, usa fragmentos limitados, procesamiento paralelo y reglas específicas de implementación que pueden cambiar el uso de metadatos y la latencia de escritura.

La concurrencia añade otro límite. Varias copias de seguridad, bases de datos de aplicaciones, importaciones de medios y escritores de contenedores pueden saturar colectivamente la CPU incluso cuando cada flujo se beneficia por sí solo. Por lo tanto, la compresión debe interpretarse junto con los cuellos de botella de red, memoria, disco y tareas en segundo plano, especialmente cuando el rendimiento cae solo durante trabajos programados o actividad multiusuario.

Los benchmarks de compresión deben comparar el trabajo lógico y físico

Un benchmark lleno de ceros o bytes repetidos puede hacer que un sistema de archivos comprimido parezca más rápido de lo que sus unidades podrían escribir. Ese resultado puede ser matemáticamente correcto para la carga lógica pero inútil para un archivo de fotos o una copia de seguridad cifrada. Errores comunes en benchmarks de almacenamiento incluyen datos de prueba altamente comprimibles, lecturas en caché, escrituras no vaciadas y no comparar el rendimiento de la aplicación con la actividad del dispositivo.

Una prueba significativa en un NAS doméstico usa el mismo hardware, conjunto de datos, ruta del cliente y carga de fondo con la compresión activada y desactivada. Registra el rendimiento lógico, bytes físicos del dispositivo, utilización de CPU, ratio de compresión y latencia de escritura. Para cargas de trabajo síncronas o multi-cliente, la latencia percentil es más informativa que un solo número pico de MB/s porque las pausas cortas pueden ocultarse dentro de un promedio alto.

La interpretación final es condicional. Si las escrituras físicas caen drásticamente mientras la CPU permanece por debajo de la saturación, la compresión actúa como un amplificador de rendimiento. Si la proporción se mantiene cerca de 1:1 y la CPU o la latencia aumentan, es principalmente trabajo extra. Si la red ya es el límite, el almacenamiento puede volverse más eficiente sin que la copia del cliente termine antes.

Preguntas Frecuentes

¿La compresión del sistema de archivos siempre ralentiza las escrituras en NAS?

No. Puede aumentar el rendimiento lógico de escritura cuando los datos son comprimibles y un cuello de botella en el almacenamiento permite que el ahorro de E/S supere el costo de la CPU. Puede ser neutral o más lento con datos de alta entropía, poca capacidad de CPU, niveles agresivos de compresión o escrituras sensibles a la latencia.

¿Qué archivos de un NAS doméstico se benefician más de la compresión?

Los registros, textos, código fuente, datos estructurados repetidos y discos virtuales parcialmente vacíos son candidatos comunes. Los medios ya comprimidos, archivos y datos cifrados suelen ofrecer menos beneficio, aunque el resultado real depende del contenido del bloque y no solo del nombre del archivo.

¿Puede la compresión del sistema de archivos reducir el desgaste del SSD?

Puede reducir los datos del host escritos en el SSD cuando los bloques se comprimen bien, lo que puede disminuir parte de la carga de trabajo del dispositivo. No elimina la recolección de basura a nivel de controlador ni la amplificación de escritura, por lo que las ganancias en durabilidad dependen del sistema de archivos, la carga de trabajo, el espacio libre y el firmware del SSD.

Centro de Tecnología e IA

Más para leer

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.