Prós e contras do bzip vs gzip?

108

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

    
por ripper234 30.10.2010 / 19:01

6 respostas

133

O gzip e o 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 evangelho):

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.

O 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).

    
por 02.11.2010 / 00:43
23

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

    
por 30.10.2010 / 19:14
4

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

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.

    
por 31.10.2010 / 03:04
3

Aqui está uma lista de sites que testam algoritmos de compressão, para encontrar apenas o bzip e o 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.
link

    
por 30.10.2010 / 22:00
1

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.

    
por 30.10.2010 / 19:06
1

Por link , o gzip é compactado 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.

    
por 28.11.2016 / 13:42