¿Pros y contras de bzip frente a gzip?

¿Pros y contras de bzip frente a gzip?

Conozco gzip desde hace años, recientemente vi cómo se utiliza bzip en el trabajo. ¿Son básicamente equivalentes o existen importantes ventajas y desventajas de uno de ellos sobre el otro?

Respuesta1

Gzip y bzip2, así como xz y lzop, son funcionalmente equivalentes. (Hubo una vez un bzip, pero parece haber desaparecido por completo de la faz del mundo). Otros formatos de compresión comunes son zip, rar y 7z; estos tres realizan tanto compresión como archivado (empaquetando varios archivos en uno). A continuación se muestran algunas clasificaciones típicas en términos de velocidad, disponibilidad y relación de compresión típica (tenga en cuenta que estas clasificaciones son algo subjetivas, no las tome como un evangelio):

decompression speed (fast > slow): lzop > gzip, zip > xz > 7z > rar > bzip2
compression speed (fast > slow): lzop > gzip, zip > xz > bzip2 > 7z > rar
compression ratio (better > worse): xz > 7z > rar, bzip2 > gzip > zip > lzop
availability (unix): gzip > bzip2 > xz > lzop > zip > 7z > rar
availability (windows): zip > rar > 7z > gzip > bzip2, lzop, xz

Como puede ver, no hay un ganador claro. Si desea confiar en programas que probablemente ya estén instalados, use zip en Windows (o si es posible, archivos autoextraíbles, ya que Windows no incluye ninguno de estos) y gzip en Unix. Si desea la máxima compresión, utilice 7z o xz.

Los formatos nativos que no son Unix (zip, rar, 7z) no conservan todos los metadatos de Unix (propiedad, permisos). Si lo necesita, use alquitrán comprimido.

Rar también tiene la desventaja de que, hasta donde yo sé, no existe ningún software de código abierto que cree archivos rar o que pueda descomprimir todos los archivos rar. Los otros formatos tienen implementaciones gratuitas y no tienen reclamaciones de patentes (serias).

Respuesta2

Por lo que puedo decir, gzip es en general más rápido, mientras que bzip en general produce una mejor (menor) compresión.

Respuesta3

Los algoritmos tienen diferentes compensaciones de tiempo, memoria y espacio. Tenga en cuenta que estos algoritmos se escribieron hace bastante tiempo y su teléfono inteligente tiene muchas veces más CPU que las computadoras de escritorio de esos días.

Tu elección es entre universalidad (.gz) y un poco más de compresión (.bz2). Sólo tú puedes decir cuál te importa más.

Una ventaja de .gz es que puede comprimir una secuencia, una secuencia en la que no se puede mirar atrás. Esto lo convierte en el compresor oficial de transmisiones http. Necesitaba usar gzip una vez por eso, pero es poco probable que tengas que pensar en ello.

Respuesta4

Porhttp://tukaani.org/lzma/benchmarks.html, gzip comprime dos veces más rápido que bzip2 y descomprime diez veces más rápido.

Por ejemplo, para usar con almacenamiento en caché s3, en travis, etc., donde desea velocidad de compresión/descompresión, no solo tamaños pequeños, gzip podría ser una buena compensación.

información relacionada