A method and a system are presented for generating differentially
compressed output from binary sources. Given two versions of the same file
as input streams, a compact encoding of one of the input streams is
generated, by representing it as a set of changes with respect to the
other input stream. Algorithms for differencing files requiring time
linear in the size of the input and a constant amount of space for
execution are presented. In addition, advanced techniques for improving
existing differencing algorithms are developed and applied to previous
methods. These techniques allow algorithms to increase their efficiency
without a loss of compression and to accept arbitrarily large inputs
without sacrificing correctness or degrading the compression data rate.
The differential compression methods provide a computationally efficient
compression technique for applications that generate versioned data.
Um método e um sistema são apresentados gerando saída diferencial comprimida das fontes binárias. Dado duas versões da mesma lima que córregos de entrada, um encoding compacto de um dos córregos de entrada é gerado, representando a como um jogo das mudanças com o respeito ao outro córrego de entrada. Os algoritmos para as limas differencing que requerem a hora linear no tamanho da entrada e de uma quantidade de espaço constante para a execução são apresentados. Além, as técnicas avançadas para melhorar algoritmos differencing existentes são desenvolvidas e aplicadas aos métodos precedentes. Estas técnicas permitem que os algoritmos aumentem sua eficiência sem uma perda da compressão e aceitem arbitrariamente entradas grandes sem sacrificar a exatidão ou degradar a taxa de dados da compressão. Os métodos diferenciais da compressão fornecem uma técnica computacionalmente eficiente da compressão para as aplicações que geram versioned dados.