Questão Prós e contras do bzip vs gzip?


Eu conheço o gzip há anos, recentemente vi o bzip sendo usado no trabalho. Eles são basicamente equivalentes, ou existem vantagens e desvantagens significativas para um deles sobre o outro?


102


origem


Embora essa seja uma pergunta antiga com uma resposta válida e correta, gostaria de direcionar as pessoas para este resultado do Google: tukaani.org/lzma/benchmarks.html como ele decompõe ainda mais - Mayhem
Não é o bzip para compactação e o gzip para arquivamento? - juniorRubyist
fonte @juniorRubyist? - ripper234
Eu acabei de ouvir isso. Eu esqueci onde. - juniorRubyist


Respostas:


Gzip e bzip2 são funcionalmente equivalentes. (Era uma vez um bzip, mas parece ter desaparecido completamente da face do mundo.) Outros formatos comuns de compactação são zip, rar e 7z; esses três fazem compactação e arquivamento (compactando vários arquivos em um). Aqui estão algumas classificações típicas em termos de velocidade, disponibilidade e taxa de compactação típica (observe que essas classificações são um pouco subjetivas, não as leve como gospel):

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

Como você pode ver, não há um vencedor claro. Se você quiser confiar em programas que provavelmente já estarão instalados, use o zip no Windows (ou, se possível, arquivos auto-extraíveis, pois o Windows não é fornecido com nenhum deles) e gzip no unix. Se você quiser máxima compactação, use 7z.

Rar também tem desvantagens que, até onde eu sei, não existe software livre que crie arquivos rar ou que possa descompactar todos os arquivos rar. Os outros formatos têm implementações gratuitas e nenhuma reivindicação de patente (séria).


128



Tanto quanto eu posso dizer, todas as versões do Windows desde o XP, pode abrir o arquivo zip nativamente usando o arquivo explorern - Lie Ryan
bzip2 está menos disponível do que gzip? Quais sistemas UNIX não faça venha com bzip2? - new123456
@ new123456 No OpenBSD, o gzip está no sistema básico, mas o bzip2 deve ser instalado a partir de um pacote. Muitos roteadores * WRT incluem o gzip, mas não o bzip2. - Gilles
@Gilles Eu posso confirmar que o meu DD-WRT Release: 08/12/10 (revisão SVN: 14929) não tem bzip2, mas tem gzip. - Urda
Pesquisa original @mlainz. Isto não é a Wikipedia. - Gilles


Até onde eu sei, o gzip é mais rápido, enquanto o bzip produz uma compressão melhor (menor).


22



Além disso, o gzip parece ser um pouco melhor suportado, especialmente no Windows. - Dentrasi
@Dentrasi: winrar / 7zip suporta ambos, qual é o problema? - whitequark
@whitequark: ser amplamente suportado é mais importante para o unix, pois os usuários podem não ter acesso root e devem trabalhar com o que já está instalado. Também se aplica a ambientes Windows em que o usuário não possui acesso administrativo (escolas / bibliotecas / etc). - Matthew
@ Mateus, você não precisa de direitos de administrador para usar um monte de software livre portado, incluindo 7zip. - whitequark
@IQAndreas: alguns benchmarks: 1, 2, 3 - Lie Ryan


Os algoritmos têm tempos, memória e compensações de espaço diferentes. Lembre-se de que esses algoritmos foram escritos há algum tempo e seu smartphone tem muitas vezes mais CPU do que os desktops desses dias.

Sua escolha é entre universalidade (.gz) e um pouco mais de compactação (.bz2). Só você pode dizer com o que você se importa mais.

Uma vantagem do .gz é que ele pode compactar um fluxo, uma sequência na qual você não pode olhar para trás. Isso faz com que seja o compressor oficial de fluxos http. Eu precisava usar o gzip uma vez por causa disso, mas é improvável que você precise pensar sobre isso.


4





Aqui está uma lista de sites que testam algoritmos de compressão, para encontrar apenas bzip e gzip você terá que fazer algumas pesquisas, mas a maioria dos sites listará as características dos algoritmos. Desta forma, você pode comparar o que é importante para você, tamanho (taxa de compressão), tempo, memória, CPU.
http://www.maximumcompression.com/benchmarks/benchmarks.php


3





Na minha experiência, o bzip oferece proporções de compressão consistentemente melhores do que o gzip. Além disso, com 7zip como gerenciador e algoritmo bzip, o 7zip pode fazer uso de processadores multi-core.


1





Por http://tukaani.org/lzma/benchmarks.html , o gzip compacta duas vezes mais rápido que o bzip2 e descompacta dez vezes mais rápido.

Por exemplo, para uso com caching s3, travis, etc., onde você deseja velocidade de compactação / descompactação, não apenas tamanhos pequenos, o gzip pode ser uma boa alternativa.


1