stringtranslate.com

Compresión sólida

Un tar.gz se crea uniendo los archivos en tar y luego comprimiéndolos con gzip.

En informática , la compresión sólida es un método de compresión de datos de varios archivos, en el que todos los archivos sin comprimir se concatenan y se tratan como un único bloque de datos. Este tipo de archivo se denomina archivo sólido. Se utiliza de forma nativa en los formatos 7z [1] y RAR [2] , así como indirectamente enalquitrán- formatos basados ​​en.tar.gz​y.tar.bz2​Por el contrario, el formato ZIP no es sólido porque almacena archivos comprimidos por separado (aunque la compresión sólida se puede emular para archivos pequeños combinando los archivos en un archivo descomprimido y luego comprimiendo ese archivo dentro de un segundo archivo ZIP comprimido). [3] [4]

Explicación

Los formatos de archivos comprimidos suelen incluir tanto compresión (almacenamiento de datos en un espacio pequeño) como archivado (almacenamiento de varios archivos y metadatos en un solo archivo). Se pueden combinar de dos formas naturales:

El orden importa (estas operaciones no conmutan ) y esta última es una compresión sólida.

En Unix, la compresión y el archivado son operaciones tradicionalmente separadas, lo que permite comprender esta distinción:

Una representación gráfica aproximada

En este ejemplo, tres archivos tienen cada uno una parte común con la misma información, una parte única con información que no está en los otros archivos y una parte "aérea" con información de baja entropía y, por lo tanto, bien comprimible.

archivo original A

archivo original B

archivo original C

archivo no sólido:

archivo sólido:

Razón fundamental

Beneficios

La compresión sólida permite obtener tasas de compresión mucho mejores cuando todos los archivos son similares, lo que suele suceder si tienen el mismo formato de archivo . También puede resultar eficaz cuando se archiva una gran cantidad de archivos pequeños.

Costos

Por otro lado, para obtener un solo archivo de un archivo sólido es necesario procesar todos los archivos anteriores, por lo que modificar archivos sólidos puede resultar lento e inconveniente. En formatos más nuevos, como 7-zip, existe una opción de tamaño de bloque sólido que permite dividir el bloque de datos concatenado en bloques más pequeños comprimidos individualmente, de modo que solo se debe procesar una cantidad limitada de datos en el bloque para extraer un archivo. Los parámetros controlan el tamaño máximo de la ventana del bloque sólido, la cantidad de archivos en un bloque y si los bloques están separados por extensión de archivo. [5]

Además, si el archivo se daña incluso levemente, algunos de los datos (a veces incluso todos los datos) después de la parte dañada en el bloque pueden quedar inutilizables (dependiendo del formato de compresión y archivo), mientras que en un formato de archivo no sólido, normalmente solo un archivo queda inutilizable y los archivos subsiguientes normalmente aún se pueden extraer.

Referencias

  1. ^ "Página de manual de 7za". Archivado desde el original el 10 de enero de 2010. Consultado el 24 de enero de 2010. -ms =on[:] archivo sólido en
  2. ^ "Preguntas frecuentes (FAQ) sobre RAR". 15 de agosto de 1994. Archivado desde el original el 15 de mayo de 2011. Consultado el 24 de enero de 2010 .
  3. ^ "CAFxXcrossway - Emulación de archivado sólido con ZIP". cafxx.strayorange.com .
  4. ^ "Archivos ZIP y sólidos". PC Review . 15 de marzo de 2006.
  5. ^ "HISTORIA del 7-Zip". www.7-zip.org . Consultado el 9 de septiembre de 2019 .