No Unix/Linux existe algum limite máximo de tamanho de arquivo que um utilitário de compactação ( gzip/compress) pode compactar. Lembro que anos atrás foi mencionado na página do gzip que ele pode compactar arquivos de até 4 gb. Na verdade eu preciso comprimir potras de cerca de 512 GB regularmente. Eu testei alguns arquivos com o utilitário de compactação e encontrei o código hash (MD5) dos arquivos de banco de dados antes da compactação e após a descompactação são os mesmos.
gzip
hoje em dia pode compactar arquivos maiores que 4 GiB de tamanho e, na verdade, não tem nenhum limite próprio (você será limitado pelo sistema de arquivos subjacente). A única limitação com arquivos maiores que 4 GiB é quegzip -l
, na versão 1.11 ou anterior, não informará seu tamanho corretamente; veja Maneira mais rápida de calcular o tamanho descompactado de um arquivo GZIPPED grande para uma alternativa. Isso foi corrigido nagzip
versão 1.12;gzip -l
descompacta os dados para determinar o tamanho real dos dados originais, em vez de mostrar o tamanho armazenado.Existem muitas outras ferramentas de compactação que oferecem melhor compactação e/ou velocidade, que você pode achar mais apropriadas: XZ , 7-Zip ...
O Gzip é uma compressão de fluxo concatenavel (consulte "uso avançado" na página man) portanto, se o algoritmo atingir um limite de codificação rígido (*), ele pode simplesmente encerrar o fluxo atual e iniciar um novo fluxo.
Portanto, não há limite rígido no tamanho dos dados no próprio gzip
(* não sei o suficiente
Xflate
para dizer se há limite ou não)