Itens repetíveis são armazenados em um dicionário e um código é atribuído como um substituto.
ISSO É UMA SIMPLIFICAÇÃO EXCLUSIVA
aaaaaaaaaaaaaaaaaaaaaaaa 0001
bbbbbbbbbbbbbbbbbbbbbbbb 0002
alsdjl;asjdfkl;asdfjkljj 0003
em vez de toda a linha, basta colocar o código em seu lugar. Quanto maior o dicionário, mais códigos ele pode manipular. Normalmente, quando um dicionário fica cheio, ele inicia um novo em tempo real. Quando ele inicia um novo, ele fica em branco e novos códigos são atribuídos aos padrões detectados.
Geralmente, quanto maior, melhor a um ponto. O dicionário inteiro é mantido na memória, então você precisa de mais RAM do que o tamanho do dicionário.
O tamanho do dicionário depende da compressibilidade dos seus dados, do número de arquivos, do tamanho e do tamanho geral.
Geralmente, 32mb é mais do que suficiente, mas se você estiver compactando vários arquivos multi-gig, poderá ser usado um número muito maior. Dicionários maiores geralmente tornam o processo mais lento, mas resultam em um arquivo menor.