Por que o meu .tar.gz é maior que a soma dos arquivos compactados separadamente?

2

Eu observei a seguinte situação que é um pouco inesperada para mim:

Eu tenho um arquivo csv e um arquivo txt correspondente. Descomprimidos, seus tamanhos são 375MB e 5KB.

  • Quando eu comprimir o arquivo csv usando gzip com configurações padrão, seu tamanho é reduzido para 95MB. Então, juntos, eu tenho ~ 95MB.
  • Quando eu empacoto os dois arquivos em um tarball e os comprime com gzip configurações padrão, acabo com 189MB.

Pelo que eu sei, o tarball comprimido deve ser menor que o arquivo csv compactado + o arquivo txt porque gzip pode procurar redundâncias em todos os arquivos do arquivo. Eu sei que isso não importa para o meu caso específico, pois o arquivo txt é muito pequeno.

No entanto, não deve ser o arquivo .tar.gz com aproximadamente o mesmo tamanho que o arquivo compactado csv + txt? No meu caso, é mais que o dobro do tamanho ...

Eu gostaria de evitar várias camadas de arquivamento / compactação, mas ainda quero conseguir uma boa compactação. Estou esquecendo de algo?

der_grund
fonte
4
É quase como se o arquivo de 95 MB fosse incluído duas vezes - você confirmou que isso não aconteceu?
Andrew Morton
Precisamos de um registro da sua sessão para entender o que aconteceu.
harrymc
@AndrewMorton Você estava certo. Eu criei o arquivo em um script, com o objetivo de agrupar três arquivos. Na verdade, eu coloquei três arquivos no arquivo, mas em vez de outro pequeno arquivo de texto, a expressão regular encontrou o csv já compactado, então acabou duas vezes no arquivo. Eu só verifiquei por três arquivos, mas eu perdi que o errado estava lá. Obrigado por me fazer olhar duas vezes!
der_grund