Compactação sem perdas usando rsync

0

Ao usar o modo -z para compactar dados ao executar o rsync, a compactação é sem perdas?

sudo rsync -az /path_to/A /path_to/B

Como se pode garantir que qualquer compressão seja sem perdas?

    
por user75798 17.11.2014 / 20:43

2 respostas

1

A resposta curta é sim.

A resposta longa é que toda a compactação de dados genérica é sem perdas e quase toda a codificação de mídia é com perdas. Vou tentar explicar porquê abaixo.

Existem dois tipos de compressão, sem perdas e com perdas. Na compactação sem perdas, nenhuma informação é perdida e, portanto, os dados originais podem ser reconstruídos perfeitamente a partir da versão compactada. Na compactação com perdas, algumas informações são perdidas e, portanto, os dados originais não podem ser reconstruídos perfeitamente a partir da versão compactada. Nesse caso, a versão reconstruída é uma aproximação do original, mas o tamanho do arquivo será menor do que seria possível com um algoritmo sem perdas.

A compactação com perdas é comumente usada para mídia, como JPG (imagens), MP3 (áudio) e MP4 (vídeo). Usar a compactação com perdas resulta em arquivos muito menores, porque podemos nos livrar de dados de tal forma que o olho ou ouvido humano não perceba sua ausência. Isso é realmente muito interessante e geralmente envolve uma transformação de frequência, como a Discrete Cosine Transform (DCT), mas isso está além do escopo desta questão.

No caso de compactação de dados genéricos, quando você estiver compactando arquivos de texto ou executáveis, até onde eu saiba, a compactação com perdas NUNCA é usada. Se você compactasse um arquivo de texto de uma maneira com perdas, perderia algumas informações e, assim, perderia para sempre parte do texto. Se você compactou um arquivo executável de uma maneira com perdas, ele não funcionaria da mesma maneira (se for o caso) depois que você o descompactou.

Dando um passo adiante, digamos que você tenha um arquivo MP3. O áudio dentro já sofreu compressão com perdas. No entanto, o arquivo MP3 em si é organizado de uma maneira muito específica para que os players de áudio entendam como reproduzir seus dados. Se você comprasse com perda um arquivo MP3, perderia a informação, a organização seria destruída e, com toda a probabilidade, não seria possível jogá-la.

    
por TheSchwa 17.11.2014 / 21:13
1

Em man rsync :

CREDITS
       ...
       This program uses the excellent zlib compression library written 
       by Jean-loup Gailly and Mark Adler.

Na zlib homepage :

% bl0ck_qu0te%

Além de verificar a zlib , que é uma biblioteca de compactação muito conhecida e amplamente usada , há nada que você possa fazer.

    
por muru 17.11.2014 / 20:49