Perché lo spostamento di cartelle di grandi dimensioni richiede molto tempo?


10

Ho una grande cartella con> 100k file. L'ho spostato nella mia cartella di archivio e ci vuole un'eternità per spostarsi. Perché? So che su XP ci vuole meno di un secondo ma non su Windows 7. Sono sicuro che sia una cosa autorizzata, c'è un modo per disabilitarlo e renderlo più veloce?

Sto spostando la cartella in un'altra nella stessa unità / partizione. In XP. Per quanto ne so, sposta il file della cartella da un posto all'altro. In Windows 7, sembra che tocchi qualcosa in ogni file quando lo sposto.

Cosa posso fare per risolvere questo problema? Eliminare le proprietà dell'autorizzazione?


3
Non so perché saresti così sicuro che si tratti di un permesso. Dai un'occhiata alle altre variabili che potrebbero essere cambiate (ritardo di rete, copia su un'unità USB, ecc.) Quali altre informazioni dovremmo sapere su ciò che stai spostando, da dove stai spostando i file e dove stai spostando il File?
Chris Dwyer,

Aspetta SP1 ???
Lawrence Dol,

Mi chiedo anche questo, alcune cose che intendevo provare ma non ho ancora avuto il tempo: è specifico del filesystem; cioè importa se è FAT32 o NTFS? Disabilita l'indicizzazione per il filesystem (nel caso in cui passi il tempo ad aggiornare gli indici di ricerca).
user12889

@ user12889: Non sono sicuro di cosa ho fatto, ma ATM sui miei drive NTFS si muove istantaneamente. Non so se è perché ho disabilitato "Compressione differenziale remota" ( maximumpcguides.com/windows-vista/… ) o se era stato risolto qualcosa in uno degli aggiornamenti di Windows.

Risposte:


5

Succede quando uso Esplora risorse per spostare (o per tagliare e incollare).

L'unico modo per aggirare ciò che conosco è usare qualcosa di diverso da Explorer per spostare la directory. Ad esempio dal cmd.exe di Windows, l'uso move a bsposta istantaneamente anche le directory di grandi dimensioni. Lo stesso vale per il mvcomando di Cygwin .


1
Come risponde alla domanda nel titolo?
soandos,

1
La risposta implicita nel mio post è "Perché è stato utilizzato Explorer". La domanda originale "Perché lo spostamento di cartelle di grandi dimensioni richiede molto tempo?" manca di informazioni su come è stata eseguita la mossa. Per questo motivo, se ho risposto "succede quando si utilizza Explorer". Potrei essere fuori dal segno. So che Explorer è la causa del mio sistema e lo condivido con te. Per quanto sorprendente possa sembrare, prima di pubblicare, nessuno ha esplicitamente nominato Explorer il colpevole. Sì, mi piacerebbe sapere perché Explorer è così lento. Finché non ci sono correzioni conosciute, do una soluzione usando mezzi di bordo, rispondendo "Cosa posso fare per risolvere questo?".
Rainer Blome,

3

Quando una cartella sembra spostarsi istantaneamente, è perché il sistema operativo è stato in grado di aggiornare la tabella di allocazione dei file * senza spostare i dati dei file effettivi.

È più lento farlo con file di piccole dimensioni, poiché per ognuno è necessario apportare una modifica alla tabella. Se i file sono veramente piccoli, potrebbe essere necessario un tempo simile per spostare effettivamente i loro dati.

Non so esattamente in quali circostanze i dati del file debbano essere spostati quando si trovano sulla stessa partizione della destinazione, ma suppongo che non si possa fare nulla per evitarlo. Come hanno suggerito altri commentatori e risposte, la copia su un'unità diversa (disco diverso, partizione diversa, su una chiavetta USB, su un'unità in rete, ecc.) Significherebbe ovviamente che è necessario copiare tutti i dati, quindi le cose essere più lento. Sarai influenzato molto di più dalla larghezza di banda di ciò che stai copiando.

(* Pensa ai dati dei file come a libri in una biblioteca e alla tabella di allocazione dei file come a una serie di schede indicanti la sezione in cui si trovano i libri)


ho già visto il formato FAT32. Penso invece di spostare la cartella con le autorizzazioni di aggiornamento su ogni file perché la nuova cartella padre potrebbe avere nuove autorizzazioni. Non ho bisogno di alcuna autorizzazione qui e quindi se potessi spegnerlo e spostarmi velocemente lo farei.

1

Sembra che ogni volta che Esplora risorse tenta di spostare (o copiare) una cartella, richiede un ulteriore passaggio di convalida. Se l'operazione richiede più di un paio di secondi, è possibile visualizzare il messaggio di stato "Rilevamento di elementi". Questo sembra fare l'inventario di tutti i file nella cartella; allo stesso modo dell'apertura effettiva di quella cartella in Explorer.

Questo passaggio può essere necessario in alcuni casi, ma non dovrebbe essere necessario per la maggior parte delle operazioni "sposta questa cartella da qui a lì". Per speculare ulteriormente - sembra plausibile che fare questa convalida abbia risolto alcuni bug in un modo migliore per alcuni casi, e Microsoft non ha mai ritenuto importante migliorare le prestazioni per i casi dispari di avere "più di centinaia" di file in una cartella. Tali problemi potrebbero includere: quando si uniscono le cartelle; se la cartella di destinazione si trova su supporti / partizioni diversi; forse per verificare se i nuovi percorsi dei file saranno troppo lunghi per NTFS. IMO, tutti / tutti questi potrebbero essere stati controllati in anticipo, per evitare di fare questa ulteriore operazione di indicizzazione, ma so che le prestazioni del caso limite vengono spesso ignorate.


0

Non uso XP da anni, ma tieni presente che lo spostamento di grandi quantità di file di piccole dimensioni è molto più lento rispetto allo spostamento di piccole quantità di file di grandi dimensioni, almeno in Windows 7.

Inoltre, lo spostamento di file tra la stessa unità è molto più veloce rispetto allo spostamento di file tra unità diverse, a volte istantaneo.


modifico la domanda.

0

Questo non risponde necessariamente PERCHÉ succede.

http://www.codesector.com/teracopy.php

Ho usato TeraCopy negli ultimi tempi e ho notato che sembra copiare un po 'più velocemente.


un po 'più veloce o si muove istantaneamente come su XP?

Un po 'più veloce (se non del tutto). Non lo fa ancora da nessuna parte vicino all'istante.
user12889


0

Prova a utilizzare il comando prompt dei comandi

copy source destination.

Ho usato questo e 20k file copiati immediatamente.


Solo un FYI - SuperUser è per le risposte e nient'altro. Ho modificato la tua risposta per riflettere ciò. Buona risposta, però!
Jon,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.