Quase todos os arquivadores modernos fazem exatamente isso, a única diferença é que eles se referem a ele como um arquivo "sólido", pois em todos os arquivos são concatenados em um único fluxo antes de serem alimentados pelo algoritmo de compactação. Isso é diferente da compactação zip padrão, que compacta cada arquivo um por um e adiciona cada arquivo compactado ao arquivo morto.
O 7-zip, por sua própria natureza, efetivamente alcança a desduplicação. O 7-Zip, por exemplo, pesquisará arquivos, os classificará por tipos e nomes de arquivos semelhantes e, portanto, dois arquivos do mesmo tipo e dados serão colocados lado a lado no fluxo, indo para os algoritmos do compressor. O compressor verá muitos dados que viu muito recentemente e esses dois arquivos verão um grande aumento na eficiência da compactação em comparação com a compactação dos arquivos um por um.
O Linux tem visto um comportamento semelhante por um longo tempo através da prevalência de seu formato ".tgz" (ou ".tar.gz" para usar sua forma completa), pois o tar simplesmente mescla todos os arquivos em um único fluxo (embora sem classificação e agrupamento de arquivos) e depois a compactação com o gzip. O que falta é a classificação que o 7-zip está fazendo, o que pode diminuir um pouco a eficiência, mas ainda é muito melhor do que simplesmente misturar vários arquivos compactados individualmente da mesma maneira que o zip.
.tar.gz
compacta apenas blocos relativamente pequenos (como 900 KB) por vez de maneira completamente independente um do outro e, portanto, não tem a capacidade de desduplicar dois arquivos grandes, mas idênticos (por exemplo, duas imagens de 4 MB)?Não faz sentido usar a desduplicação com um processo de compactação. A maioria dos algoritmos de compactação cria o que é chamado de 'dicionário' que procurará bits de dados mais comuns ou reutilizados. a partir daí, apenas fará referência à entrada do dicionário em vez de escrever a "palavra" inteira novamente. Dessa maneira, a maioria dos processos de compactação já remove dados redundantes ou duplicados de todos os arquivos.
Por exemplo, se você pegar um arquivo de 1 MB e copiá-lo 100 vezes com um nome diferente a cada vez (totalizando 100 MB de espaço em disco), compactá-lo em um arquivo 7zip ou zip, você terá um arquivo zip total de 1 MB. Isso ocorre porque todos os seus dados foram colocados em uma entrada do dicionário e referenciados 100 vezes, o que ocupa muito pouco espaço.
Essa é uma explicação muito simples do que acontece, mas o ponto ainda é bem transmitido.
fonte
O 7-Zip, zip, gzip e todos os outros arquivadores não detectam áreas idênticas distantes umas das outras, como apenas alguns megabytes ou mais, dentro do mesmo arquivo ou colocadas em posições diferentes dentro de arquivos diferentes.
Portanto, não, arquivadores normais não têm um desempenho tão bom quanto o exdupe e outros, em algumas situações. Você pode ver isso se compactar algumas máquinas virtuais ou outras coisas.
fonte