Por que é excluir um grande número de arquivos (tamanho pequeno em média) mais do que um arquivo único (tamanho grande)

-1

Digamos que eu tenha dois casos de exclusão de arquivos:

  1. 150.000 arquivos com tamanho de 30 KB em média, o tamanho total é de 4 GB. - > terminou dentro de uma hora
  2. arquivo único com tamanho de 8 GB
    - > terminou em um piscar de olhos

O tamanho do arquivo no caso 2 é maior que o caso 1
Por que a exclusão no caso 1 levou muito mais tempo que o caso 2?

    
por nametal 24.06.2014 / 05:36

5 respostas

2

Desde que alguém pediu uma explicação visual (grosseiramente falando e exagerando):

(Clique para ver a imagem no tamanho completo)

    
por 24.06.2014 / 06:53
2

A exclusão de todos os arquivos inclui atualizações nos metadados do diretório (por exemplo, local onde as informações sobre o arquivo são armazenadas) e (geralmente) atualizações no bitmap de espaço livre. Cada um dos 150.000 arquivos é uma operação em metadados que pode estar em todo o disco.

A exclusão de um único arquivo, independentemente do tamanho, é alterada para uma única entrada de metadados.

Então, no primeiro caso, você está fazendo mais 150.000 operações do que no segundo.

    
por 24.06.2014 / 05:43
1

O caso 1 requer muitas, muitas mais operações de diretório. Cada arquivo é excluído individualmente, o que requer sua remoção do diretório em que ele está.

A exclusão de 150.000 arquivos requer a localização de cada arquivo na estrutura de diretórios e a remoção desse arquivo do diretório, mantendo a organização da estrutura de diretórios no processo.

    
por 24.06.2014 / 05:43
0

Cada arquivo é salvo em uma seção diferente no seu disco rígido. Os arquivos também podem ser divididos de forma que mais arquivos + mais fragmentos = mais tempo. Um arquivo maior terá menos fragmentos e o disco rígido gastará menos tempo para encontrá-los.

    
por 24.06.2014 / 05:40
0

Para apagar um arquivo, a maioria dos sistemas operacionais apenas marcará sua entrada de diretório como não usada, para depois ser substituída pela entrada de diretório em outro arquivo (além de marcar o espaço ocupado no disco como livre).

Na verdade, ele não está passando por todos os dados do arquivo e removendo-o; é por isso que os utilitários de undelete funcionam.

    
por 24.06.2014 / 05:43

Tags