Que fait réellement une défragmentation?

13

Que fait vraiment une défragmentation? Est-ce qu'il rapproche les fichiers qui s'exécutent en séquence?

user3183
la source

Réponses:

19

En fait, il rassemble toutes les différentes parties d'un fichier, donc si ce fichier particulier est nécessaire, le disque dur n'a pas à bouger son bras (qui est le véritable disjoncteur de performance ici) autant pour rassembler tous les bits du fichier . ==> d'où une meilleure performance (bien que ce ne soit pas toujours perceptible).

Notez que cela ne s'applique qu'aux disques durs avec des plateaux et des pièces mobiles. Pour les SSD, ce n'est pas un problème, car il faut du temps pour récupérer toutes les données indépendamment de leur emplacement sur le disque. Défragmenter les SSD est en fait une mauvaise idée car ils ont un nombre limité de fois où ils peuvent être écrits sur chaque `` secteur '' (je ne pense pas que `` secteur '' soit le bon terme ici, mais vous savez ce que je veux dire, j'espère).

fretje
la source
3
Non seulement ce n'est pas un problème pour les SSD, mais leur défragmentation est en fait une mauvaise idée en raison de leurs limites.
Jeff Yates
En effet, je mettrai à jour ma réponse.
fretje
13

Cela dépend du programme de défragmentation.

Au minimum, il visera à placer les clusters pour un seul fichier ou répertoire dans une séquence contiguë, à condition qu'il y ait de l'espace disponible pour ce faire.

Il peut également séquencer les fichiers et les répertoires en fonction des profils d'utilisation, s'il les collecte.

Il peut ne pas être en mesure de déplacer certains fichiers (certains fichiers ouverts et système généralement).

La défragmentation s'explique par le fait que les lectures aléatoires sont considérablement plus lentes que la lecture d'une séquence continue de blocs / grappes sur le disque. Cependant, tous les systèmes de fichiers ou systèmes d'exploitation n'ont pas les mêmes exigences pour les programmes de défragmentation (séparés).

mas
la source
La défragmentation regroupe également généralement l'espace libre sur le disque en blocs aussi gros que possible. Cela aide à empêcher les fichiers nouvellement créés d'être fragmentés en premier lieu et leur permet d'être écrits plus rapidement.
David Schwartz
3

La défragmentation peut faire deux choses:

  • Garantit que toutes les pièces d'un fichier se trouvent dans une partie continue du disque dur. La plupart des fichiers sont divisés en «fragments» plus petits qui sont bloqués partout où il y a de l'espace. Au début, ils seront stockés en continu, mais des lacunes / incontinences seront créées lorsque les fichiers seront supprimés / modifiés. Si un fichier est stocké en continu, il peut être lu plus rapidement.
  • Optimisez l'emplacement sur le disque dur (disques durs en rotation uniquement.) Les disques durs sont composés de plateaux en forme de disque en rotation. L'extérieur tourne plus vite, donc le disque dur fonctionnera mieux lors de l'écriture / lecture près de l'extérieur de ces plateaux car plus de données passeront sous la tête de lecture / écriture pendant une période de temps donnée.

Aussi, je voudrais ajouter quelque chose sur la défragmentation des SSD:

Défragmentation d'un SSD

Il y a longtemps, j'ai promis de publier pourquoi la défragmentation d'un SSD est toujours pertinente et nécessaire. Il est vrai qu'avec un SSD, il n'y a pas de plateaux physiques qui doivent tourner en place et pas de bras de lecture / écriture qui doivent se déplacer de manière extravagante sur la surface d'un disque. Pour cette raison, il semble que la défragmentation soit une perte de temps. Vous pouvez également affirmer que, comme les disques SSD finissent par s'user, vous ne devriez pas perdre les cycles de réécriture sur quelque chose d'aussi simple que de défragmenter votre disque.

L'un des faits concernant la technologie de mémoire flash NAND utilisée dans les SSD est que l'écriture des données prend beaucoup plus de temps que la lecture des données. Lorsqu'un fichier est effacé, tout comme la technologie de disque dur standard, seules les informations du répertoire sont effacées et les cellules de données sont à nouveau marquées «utilisables». Les données elles-mêmes sont toujours intactes jusqu'à ce que quelque chose de nouveau les écrase.

Cela signifie que si l'espace mémoire est utilisé avec un fichier «supprimé», il doit d'abord être effacé avant de pouvoir être reprogrammé. Si l'espace libre est fragmenté, un nouveau fichier doit être divisé en plusieurs petites commandes d'écriture au lieu d'une plus grande commande d'écriture. Cela entraînera une baisse des performances pour les SSD car la vitesse d'écriture est lente, en particulier pour les transferts d'écriture de petits blocs. Oui, la mémoire cache permet de masquer ce problème de performances, mais quelle que soit la technologie, une commande d'écriture longue est toujours meilleure que plusieurs commandes d'écriture courtes.

Net, défragmentez votre disque régulièrement si vous souhaitez des performances maximales.

source: Blog Inside the Box Lenovo

Leftium
la source
3
Ce gars que vous citez est faux. Le SSD combine en interne plusieurs écritures sur différents blocs logiques en une seule écriture flash. Comme les lectures, les écritures aléatoires sont tout aussi rapides que séquentielles sur un SSD.
psusi
4
Vous ne pouvez pas non plus contrôler où les données sont placées sur la plupart des SSD, en raison des algorithmes de nivellement de l'usure. Bien qu'il soit possible de surmonter ces algorithmes en utilisant un logiciel spécial, la plupart des logiciels "standard" ne le couperont pas.
Percée
Vous pouvez réaliser ce que ce type décrit en lisant simplement toutes les données plusieurs fois. Cela permettra au SSD lui-même de déterminer si le fichier doit être déplacé. Des outils tels que SpinRite 6run avec les paramètres corrects peuvent être utilisés pour cela.
Ramhound
1

Matériel

Comme d'autres l'ont mentionné, il garantit que les fichiers sont stockés dans des unités d'allocation numérotées de manière contiguë.

Sur les supports en rotation comme les disques durs, cela permet un accès plus rapide aux données car le plateau n'a pas à tourner plus et les têtes n'ont pas à se déplacer d'avant en arrière. Sur les SSD, cela n'a aucun avantage en termes de performances.

Récupération de données

Une chose à noter à propos de la défragmentation est qu'en plaçant les fichiers dans des unités d'allocation consécutives, la récupération de données devient plus facile et plus susceptible de réussir. Lorsque vous supprimez accidentellement un fichier, avez un crash de lecteur ou êtes touché par un virus, les fichiers fragmentés ont beaucoup moins de chances de réussir.

En effet, si le fichier est divisé en plusieurs morceaux dispersés sur le lecteur, il devient difficile (souvent impossible) de déterminer quelles parties vont où et à quels fichiers. C'est encore plus problématique avec des disques plus gros contenant plus de fichiers. Pour récupérer avec succès un fichier fragmenté, vous devez savoir où se trouve chaque partie de celui-ci et son ordre, mais si vous l'aviez, vous n'auriez pas besoin de le récupérer .

Si les fichiers ne sont pas fragmentés, il vous suffit de trouver le début du fichier et de connaître sa taille ou de détecter la fin (par exemple, en connaissant le format du fichier ou en détectant quand un nouveau fichier commence).

Une façon d'aider à la récupération de données consiste à utiliser un système de fichiers plus tolérant à la corruption et contenant de meilleures fonctions de sauvegarde et de récupération telles que NTFS sur FAT32. Malheureusement, aucun système de fichiers n'est parfait et même les meilleurs sont toujours sujets à la perte de données et nécessitent de temps en temps une récupération des données.

Recommandations

Avec un disque dur, vous assurer que le disque est défragmenté (par exemple, le faire défragmenter automatiquement chaque fois que le système est inactif - ce qui devient de moins en moins une tâche à mesure qu'il nettoie les choses) aide à améliorer vos chances de récupérer les fichiers perdus. Étant donné que les disques SSD ne sont pas adaptés à la défragmentation, vous devrez évaluer les risques et les avantages de la défragmentation et épuiser le disque, effectuer des sauvegardes régulières ou stocker des données critiques sur un disque dur.

Synetech
la source
0

La défragmentation d'un lecteur peut faire plusieurs choses différentes. En règle générale, le processus de défragmentation recherche les fichiers qui ont été divisés en morceaux pour une raison quelconque. Dans de nombreux cas, cela se produit lors de la lecture et de l'écriture sur un lecteur au fil du temps. Le programme de défragmentation assemble tous les fragments, puis trouve un emplacement sur le disque où tout le fichier pourra tenir. Dans certains cas, cela finit par être un jeu de shell pour déplacer les choses en créant des emplacements pour tous les fichiers les plus volumineux.

Maintenant, quelque chose à dire sur la compilation de tous ces fichiers concerne le temps de "recherche" typique de la tête de lecture / écriture sur le disque. Chaque fois que vous devez déplacer la tête de lecture / écriture ailleurs sur le disque, vous subissez généralement un retard d'un certain nombre de millisecondes. Lors de la lecture d'un fichier qui se trouve au même endroit, la tête de lecture / écriture n'a pas du tout besoin d'aller très loin pour continuer la lecture du fichier. C'est beaucoup plus rapide que d'aller à un autre endroit entièrement sur le disque. Dans certains cas, une défragmentation peut être effectuée pour optimiser le système d'exploitation en plaçant les fichiers système accédés le plus souvent plus près de la "zone d'atterrissage" pour la tête de lecture / droite lorsqu'elle n'effectue aucune lecture / écriture. Dans de nombreux cas, cela peut accélérer considérablement les choses.

Je n'ai pas vu d'outil de défragmentation qui a la capacité de garder des statistiques sur le nombre de fois où un fichier a été consulté, mais s'il y en avait un, il pourrait empiler le disque en premier avec les fichiers les plus fréquemment consultés.

Axxmasterr
la source
0

Votre système de fichiers place parfois des parties d'un fichier à différents emplacements sur le disque. Lorsque vous accédez à ce fichier plus tard, cela prend plus de temps car il doit aller à chacun de ces emplacements pour accéder au fichier. C'est ce qu'on appelle la fragmentation. Fondamentalement, vous avez des fragments de vos fichiers à différents endroits du disque.

Lorsque vous défragmentez le disque, vous réorganisez les fichiers sur le disque afin que le plus de fichiers possible soient stockés dans leur intégralité.

Jack
la source
0

Cela dépend du système de fichiers, du défragmenteur et du disque dur / SSD.

La plupart des fichiers seront consolidés en un bloc chacun. C'est l'exigence minimale et la définition de "défragmenteur".

Les défragmenteurs plus avancés déplaceront les répertoires en premier (car ils sont, en moyenne par mégaoctet, consultés plus fréquemment que les fichiers ordinaires), suivis des fichiers consultés récemment. Les fichiers qui n'ont pas été consultés depuis longtemps (généralement 90 jours) sont parfois activement placés plus près de la fin, pour permettre des recherches plus courtes pour les fichiers auxquels il est possible d'accéder.

Les NTF semblent se fragmenter légèrement moins que les FAT mais se dégrader plus lentement s'il l'est. Certains des fichiers importants ne se trouvent pas à l'avant de la partition mais près du milieu, évidemment pour réduire de moitié le temps d'accès au pire cas. Pas sûr, cependant.

Les temps de "recherche" sur les SSD sont minimes, de l'ordre des microsecondes. Vous recherchez les mauvais endroits si vous défragmentez les SSD pour les recherches. (Un contrôleur SSD intelligent pourrait simplement mettre à jour OERE les données sont déplacées, plutôt que de les déplacer, chaque fois qu'il détecte le modèle "lire les anciennes données + les mêmes données + TRIM les anciennes données", économisant sur les deux cycles d'écriture ET défragmenter le temps d'exécution. Pas sûr si un contrôleur le fait encore.)

Dans un second temps, oui, les SSD distribuent volontairement les écritures sur les puces, car c'est ainsi qu'elles sont plus rapides, et une forte fragmentation peut ralentir les modèles d'écriture en rendant les écritures MOINS dispersées. Cela pourrait être un facteur à considérer si c'est vrai.

Effectuez toujours et régulièrement vos sauvegardes. Si vous défragmentez des disques pour faciliter la récupération de données, vous le faites mal!

wurst
la source