A taxa de compressão gz melhora com o tempo?

7

Eu tenho um processo que cria um fluxo de milhões de linhas altamente semelhantes. Estou canalizando isso para gz . A taxa de compressão melhora com o tempo em tal configuração? Ou seja é a taxa de compressão melhor para 1 milhão de linhas semelhantes, que dizem 10.000?

    
por Gx1sptDTDa 01.07.2015 / 10:23

3 respostas

8

Faz até certo ponto e isso se equilibra. Os algoritmos de compactação têm uma restrição no tamanho dos blocos que eles observam ( bzip2 ) e / ou nas tabelas que eles mantêm com informações sobre padrões anteriores ( gzip ).

No caso do gzip, uma vez que uma tabela esteja cheia, as entradas antigas são removidas e a compactação não melhora mais. Dependendo do seu fator de qualidade de compactação ( -0 to -9 ) e da repetitividade de sua entrada, esse preenchimento pode, é claro, levar um tempo e você pode não notar.

    
por 01.07.2015 / 10:56
4

Não muito. A "distância" coberta pelo algoritmo DEFLATE que gzip usa está limitada a 32 KB.

Link da Wikipedia - > DEFLATE

Vale a pena comparar com os vários níveis de compressão gzip e também considerando bzip2 e xz .

    
por 01.07.2015 / 11:06
0

Aqui está uma visão geral do link

do gzip

Resposta curta é que não irá melhorar significativamente depois que os dados iniciais necessários para os hashes forem levados em consideração.

    
por 01.07.2015 / 13:54