É mais rápido compactar arquivos antes de copiar? [duplicado]

2

Eu tenho cerca de 80 GB de dados que eu preciso copiar em um disco rígido externo. Seria mais rápido compactar todos os arquivos primeiro e depois copiar? Ou seria o tempo necessário para comprimir e descomprimir demorar mais do que o tempo de cópia que vai economizar?

Vou estar a reinstalar o Windows, basicamente, documentos, imagens, vídeos, etc. E um ficheiro de backup do Outlook .pst. E existem 28.284 arquivos.

Além disso, quaisquer indicadores que eu deva desconfiar antes de começar podem acelerar o processo?

    
por tysonsmiths 08.11.2014 / 01:46

4 respostas

-2

Responda por você: não. Só é mais rápido se você deixar apenas um arquivo compactado em formato compactado no arquivo externo. Mas se você descompactar o arquivo no mesmo disco, será lento. By the way, quais arquivos você tem, e quantos arquivos você tem?

    
por 08.11.2014 / 02:04
5

Suponho que sua unidade externa esteja conectada via USB, eSATA, Firewire ou similar. Em qualquer um desses casos, a unidade aparecerá no computador host como um dispositivo de bloco e o host "falará" no disco rígido como se fosse um disco rígido interno. Esse é o objetivo de ter a classe de dispositivo "armazenamento em massa USB".

Isso também significa que os dados precisam ser colocados na rede na maneira exata em que eles devem aparecer no disco rígido. Não há um esquema que comprime dados no host, envia os dados compactados pela conexão USB e, em seguida, é descompactado de forma transparente logo antes que os dados não compactados agora sejam armazenados na mídia física. Portanto, você precisa compactar os dados antecipadamente, no disco de origem, ou passar por truques (por exemplo, colocando um NAS entre e usando um protocolo de rede de compactação).

Acrescente-se que, a menos que você tenha dados muito específicos e bem compactáveis, é provável que obtenha taxas de compactação muito ruins. Se a maior parte dos 80 GB forem feitos de vídeos, imagens e afins, você pode até obter proporções negativas, pois eles já são altamente compactados usando algoritmos muito especializados.

Em qualquer caso, obter uma taxa de compactação significativa incorre em quantidades pesadas de tempo de CPU. Você pode obter uma estimativa aproximada de quanto custará a você por meio de uma experiência simples: tente compactar qualquer arquivo de 1 GB com 7zip nas configurações mais altas e medir o tempo. Em seguida, avalie quanto tempo leva para descomprimir o resultado.

A maioria dos algoritmos de compactação é otimizada para a velocidade de descompressão, já que isso geralmente é feito com muito mais frequência. Ainda assim, haverá uma penalidade de desempenho perceptível ou mesmo significativa, e você estará pagando essa penalidade toda vez que acessar os dados compactados.

Or would the time it takes to compress and decompress take longer that the amount of copying time it will save?

Also any pointers I should be wary of before I begin that could maybe speed up the process?

Se tudo o que você deseja realizar é obter os dados de sua unidade de origem em sua unidade externa, a cópia provavelmente já estará concluída quando você receber a resposta aqui. : o) Especialmente desde que 80 GB não são mais tão importantes; assumindo um número de 10 MB / s, você esperará menos de três horas. A compactação de 80 GB levará muito mais tempo.

Algo que mérito considere, embora seja transferências interrompidas . Ter que reiniciar essa transferência de 80 GB na marca de 95% e ter que reiniciar do zero é… irritante, para dizer o mínimo. A ferramenta canônica, nesse caso, é rsync , o que pode economizar muito tempo, muito mais do que a compactação pode oferecer. O preço é um pequeno investimento em como usá-lo, mas você não terá uma penalidade de desempenho na leitura dos dados depois, o que é uma grande vantagem.

TL; DR: Pelo que eu recebi da sua pergunta, rsync (ou similar) é o caminho a ser seguido. Exceto por circunstâncias muito específicas, a compressão será um grande desperdício de tempo.

    
por 08.11.2014 / 02:52
1

Sim e não. Isso realmente depende do que você está compactando e qual é o método de compactação. Talvez valesse a pena compactar 80 GB de dados para que permanecesse nesse estado compactado. Se você estiver procurando ter acesso rápido a esses dados, não, a compactação só prejudicaria essa capacidade. Realmente a compactação não é tanto software quanto hardware, pois depende do desempenho do servidor ou do computador em que você está compactando.

Realmente, no final, você economizaria o tempo apenas copiando os dados brutos e não compactados, o que não é exatamente o que a compactação foi projetada.

    
por 08.11.2014 / 02:15
1

Isso depende totalmente do tipo de dados que você está fazendo backup e do dispositivo que você está fazendo backup também. Tenho uma grande quantidade de dados altamente compressíveis que faço backup em uma unidade USB 2 regularmente. A compactação dos dados acelera bastante a transferência porque o USB 2 é substancialmente mais lento que o tempo necessário para compactar os dados e a economia é grande.

Por outro lado, se você tiver uma unidade USB3 rápida ou dados compactados, terá menos vantagens.

O tipo de compactação que você usa também precisa ser considerado, assim como seu processador. Zip e similares são relativamente leves, portanto, a compactação é rápida, no entanto, alguns algoritmos de compactação exigem muito mais CPU.

Sou um linux, por isso não o usei, mas você poderá obter o melhor dos dois mundos (ou seja, documentos facilmente acessíveis, tempos de gravação mais rápidos) usando NTFS compression no seu sistema de arquivos.

    
por 08.11.2014 / 02:31