O que seria mais rápido, transferir um arquivo zipado para a unidade flash e depois descompactar ou transferir os arquivos descompactados?

2

Levando em consideração o tempo que levaria para descompactar as pastas zip depois de copiadas para uma unidade flash, o que seria mais rápido? Copiando as pastas compactadas para uma unidade flash USB, em seguida, descomprimi-los na unidade flash ou apenas copiando as pastas descompactadas para a unidade flash.

Não leve em consideração o tempo necessário para compactar os arquivos, pois os arquivos já estão compactados antes da cópia. Eu posso copiar a partir de um HDD USB ou de um SSD para uma unidade flash USB (ambos suportando USB 3.0).

Neste caso específico eu quero transferir 9 arquivos zip que têm 115.518 arquivos no total, a maioria dos arquivos são realmente pequenos arquivos de imagem (os 9 arquivos no total para 15Gb não compactados e 10 Gb compactados).

    
por Suco 10.09.2017 / 23:14

3 respostas

2

Taking in consideration the time it would take to decompress the zip folders once copied to a flash drive, what would be faster? Copying the compressed folders to a usb flash drive then decompress them on the flash drive or just copying the uncompressed folders to the flash drive.

Provavelmente o último.

Lembre-se de que a descompressão e outras coisas desse tipo são feitas pela CPU do computador. Você pode copiar dados em um drive (seja flash ou HDD), e você pode copiar os dados, mas você não pode dizer ao próprio drive para descompactá-lo - ou fazer qualquer outra coisa, na verdade.

Então, seu primeiro plano envolveria:

  1. Copiando 10 GB de dados do disco para o flash
  2. Lendo os 10 GB de volta do flash para a RAM
  3. Descompactando
  4. Escrevendo 15 GB dos dados descompactados da RAM para o flash
  5. Excluindo os arquivos compactados inúteis deixados após a etapa 1

O segundo:

  1. Lendo 10 GB diretamente do disco interno para a RAM
  2. Descompactando
  3. Escrever 15 GB de dados descompactados para flash

Observe como o primeiro plano envolve o dobro de leitura e escrita. Mas não apenas isso: na realidade, os passos 2-3-4 não aconteceriam em ordem, mas em paralelo - o que torna o processo mais rápido ao ler de uma unidade e gravar em outra, mas muito mais lento quando a mesma unidade está fazendo as duas leituras. e escreve.

    
por 10.09.2017 / 23:38
1

What would be faster, transferring a zipped file to flash drive then decompress there or transferring the unzipped files?

Inquestionavelmente, a resposta correta é "transferir os arquivos compactados un " .

É claro que transferir um arquivo zipado de todos os arquivos seria mais rápido, mas você estipulou a etapa adicional de "e depois descompactou" .

Aparentemente, você não está ciente de que não é possível "descomprimir" localmente na unidade ou no dispositivo de armazenamento.
O arquivo de origem deve ser lido (a partir de onde ele estiver armazenado) e a descompressão será executada na memória principal pela CPU.

Portanto, para descompactar o arquivo já transferido para a unidade flash, o arquivo deve ser lido na unidade flash, descompactado e, em seguida, os arquivos individuais gravados na unidade flash.

Esse último passo (de escrever os arquivos individuais) por si só é equivalente à última escolha. Portanto, as etapas adicionais de primeiro escrever o (s) arquivo (s) zip e, em seguida, lê-los novamente (mas possivelmente otimizados pelo armazenamento em cache) devem fazer da sua primeira escolha a operação mais longa.

Outra maneira de analisar sua pergunta é assumir uma certa quantidade de simultaneidade entre as operações e adivinhar em um prazo.

Portanto, para o caso 1, a cópia do arquivo zip para a unidade flash requer operações de leitura simultâneas com a operação de gravação (mas com algum atraso de bloco). Escrever também requer mais tempo para executar do que ler (por exemplo, ver Por que copiar a mesma quantidade de dados demora mais se for distribuído por vários arquivos separados? ).
Quando a cópia estiver completa, ela poderá ser lida, descompactada e gravada novamente na unidade flash. Apesar da simultaneidade das operações de leitura, descompactação e gravação, a linha do tempo geral é dominada pela hora de gravar todos os arquivos descomprimidos.

RRRRRRRRR  
 WWWWWWWWWW  
           rrr    rrr   rrr  
            DDDD   DDDD  DDDDD
              WWWWWWWWWWWWWWWWWWWWW  
time-->

Caso 2 é uma leitura direta, descomprimir e escrever.
Este caso deve exigir o mesmo tempo para gravar todos os arquivos descomprimidos.

RRR    RRR   RRR  
 DDDD   DDDD  DDDDD
   WWWWWWWWWWWWWWWWWWWWW

Como você pode esperar que o Caso 1 seja concluído mais rapidamente do que o Caso 2 quando o primeiro estágio das operações de leitura for para a mesma quantidade de dados do mesmo dispositivo e o último estágio das gravações for para a mesma quantidade de dados? mesmo dispositivo
e
Caso 1 é deficiente por ter que primeiro fazer uma cópia?

    
por 11.09.2017 / 03:06
0

Se você deseja descompactar na mesma unidade - não se preocupe em compactar. Se você descompactar a outra unidade - considere zipar, já que ele fará menos chamadas de E / S para o sistema de arquivos (menos dados e menos entidades de arquivo)

    
por 11.09.2017 / 11:05