Seit den AnfÀngen von Multitasking-Betriebssystemen war Fragmentierung ein Problem. Es beeintrÀchtigt die Lese- und Schreibgeschwindigkeit auf herkömmlichen magnetischen Festplatten und hat auch heute noch negative Auswirkungen auf Solid-State-Medien. Wie können wir Fragmentierung reduzieren und sollten wir sie auf SSD-Laufwerken bekÀmpfen? Lesen Sie weiter, um es herauszufinden!

Inhalt
Wie entsteht Fragmentierung?
Jede Datei, die Sie auf der Festplatte speichern möchten, wird in den gröĂten zusammenhĂ€ngenden Speicherbereich platziert. Wenn Sie eine neue Festplatte mit viel freiem Speicherplatz haben, ist der gröĂte zusammenhĂ€ngende Speicherbereich gröĂer als die Datei, die Sie speichern möchten. Nach einigen Tagen, Wochen und Monaten des Speicherns von Dateien, Löschen und erneutem Speichern haben Sie jedoch nicht mehr so viel freien Speicherplatz auf Ihrer Festplatte. Und selbst wenn Sie es tun, ist es wahrscheinlich in Form von mehreren kleineren freien Speicherbereichen auf der Festplatte verstreut. Jede Datei, die Sie jetzt schreiben möchten, wird immer noch in den gröĂten freien Speicherbereich platziert, nur dass die Datei diesmal tatsĂ€chlich gröĂer sein kann als der gröĂte verfĂŒgbare freie Block.
Wenn dies geschieht, speichert das Betriebssystem Teile der Datei in verschiedenen Blöcken, unabhĂ€ngig von ihrer physischen Position auf der Festplatte. Wenn Sie eine wirklich groĂe Datei und eine stark fragmentierte Festplatte haben, kann die Datei in so viele wie mehrere hundert Fragmente aufgeteilt werden. Beim Lesen einer solchen Datei muss das System auf jeden Block nacheinander zugreifen. Die Festplatte muss SuchvorgĂ€nge durchfĂŒhren, magnetische Köpfe an einen neuen Ort bewegen und warten, bis sie sich stabilisiert haben. Dies geschieht fĂŒr jeden einzelnen Block und verlangsamt die Leseleistung von Dateien erheblich. Anstatt eines einzigen, zusammenhĂ€ngenden Lesevorgangs mit der maximalen Ăbertragungsrate, die Ihre Festplatte leisten kann (vielleicht 100-150 MB/s), erhalten Sie eine viel, viel langsamere Rate von etwa 10-30 MB/s (abhĂ€ngig davon, wie groĂ und wie fragmentiert die Datei ist). Klingt schon schlimm genug? Der schlimmste Teil kommt noch.
Ein groĂer Bestand an stark fragmentierten Dateien auf Ihrer Festplatte reduziert nicht nur die Lese- und Schreibgeschwindigkeit, sondern kann auch die Lebensdauer der Festplatte selbst beeintrĂ€chtigen. StĂ€ndige Bewegungen der magnetischen Köpfe belasten die Mechanik des Laufwerks zusĂ€tzlich und verursachen vorzeitigen VerschleiĂ und reduzieren seine effektive Lebensdauer.
Wenn das nicht genug ist, haben wir noch eine letzte schlechte Nachricht fĂŒr Sie. Fragmentierte Dateien sind viel schwieriger wiederherzustellen, wenn etwas mit Ihren Daten passiert. Eine winzige Korruption im Dateisystem, ein versehentlich gelöschtes Dokument oder ein aufregendes Experiment mit Ubuntu können Ihre Daten leicht plötzlich verschwinden lassen.
Wenn Sie unserem Blog schon eine Weile folgen, kennen Sie vielleicht bereits kontextsensitive Wiederherstellungsalgorithmen, die auf der Suche nach Signaturen basieren. Kontextsensitive Wiederherstellung funktioniert durch Scannen der Festplatte auf niedriger Ebene in dem Versuch, Dateien bekannter Typen zu erkennen, indem rohe Daten analysiert und mit einer Datenbank bekannter Muster abgeglichen werden. Mit anderen Worten, die kontextsensitive Wiederherstellung liest die OberflĂ€che der Festplatte Sektor fĂŒr Sektor und analysiert ihren Inhalt, um herauszufinden, ob der Sektor einen Dateikopf enthĂ€lt oder nicht.
Nachdem ein Dateikopf gefunden wurde, analysiert der Algorithmus ihn, um die LÀnge der Datei zu bestimmen (diese Information ist oft im Kopf enthalten oder kann durch Analyse nachfolgender Daten anderweitig bestimmt werden). Jetzt, da bekannt ist, wo die Datei beginnt und wie lang die Datei ist, kann der kontextsensitive Algorithmus versuchen, festzustellen, welche Sektoren auf der Festplatte zu dieser Datei gehören.
Es gibt mehrere Möglichkeiten, dies zu tun. Der dumme Weg besteht darin, einfach anzunehmen, dass eine bestimmte Anzahl von Sektoren nach demjenigen, der den Dateikopf enthĂ€lt, zu dieser Datei gehören. Diese Methode ist dumm wegen, nun ja, Fragmentierung. Wenn jedoch kein Dateisystem verfĂŒgbar ist, muss selbst der intelligenteste Datenwiederherstellungsalgorithmus die „dumme“ Methode verwenden, da fortgeschrittenere Techniken nicht verfĂŒgbar sind.
Die intelligentere Methode ĂŒberprĂŒft das Dateisystem, bevor Annahmen getroffen werden. Wenn wir Sektoren 1, 2, 3 und 4 haben, Sektor 1 als „verfĂŒgbar“ aufgefĂŒhrt ist und ein JPEG-Dateikopf mit einer DateilĂ€nge von genau 2 Sektoren erkannt wurde, welche sollten wir wĂ€hlen? Der dumme Algorithmus wĂ€hlt immer Sektoren 1 und 2, unabhĂ€ngig von allem anderen. Der intelligentere wird das Dateisystem ĂŒberprĂŒfen, um festzustellen, ob Sektor 2 als „freier Speicherplatz“ aufgefĂŒhrt ist oder ob er bereits Teil einer anderen Datei ist. Wenn Sektor 2 zu einer anderen Datei gehört, wird der Algorithmus Sektoren 3 und 4 ĂŒberprĂŒfen. Wenn beispielsweise Sektor 3 als „freier Speicherplatz“ aufgefĂŒhrt ist, geht der intelligente Algorithmus davon aus, dass die betreffende JPEG-Datei in den Sektoren 1 und 3 lag.
NatĂŒrlich können beide Algorithmen falsch sein. Aber Sie verstehen die Idee. Je weniger Fragmente die Datei hat, desto höher ist die Wahrscheinlichkeit einer erfolgreichen Wiederherstellung.
Reduzierung der Fragmentierung
Wie reduziert man die Fragmentierung auf ein absolutes Minimum? Vor allem gibt es Defragmentierungstools. Windows hat ein anstĂ€ndiges Festplattenoptimierungs- und Defragmentierungstool, das in Windows 7 integriert ist. In Windows 8 erschien ein wirklich gutes Tool und in Windows 10 ist ein groĂartiges Defragmentierungsdienstprogramm verfĂŒgbar. UnabhĂ€ngig von der Windows-Version, die Sie verwenden, ist die Einrichtung des Festplattenoptimierungs- und Defragmentierungsdienstprogramms zur regelmĂ€Ăigen AusfĂŒhrung auf allen Festplatten und Partitionen eine groĂartige Möglichkeit, die Fragmentierung zu reduzieren.
Auf stark genutzten Festplatten mit wenig freiem Speicherplatz kann die Defragmentierung möglicherweise nicht effektiv sein. Es gibt wirklich keine Lösung auĂer sicherzustellen, dass jeder einzelne Partition auf Ihrer Festplatte ein bestimmter Prozentsatz ihres Speicherplatzes nicht verwendet wird. Im Allgemeinen reicht es aus, etwa 20 bis 40 Prozent des Speicherplatzes frei zu halten, um einen reibungslosen Betrieb der Defragmentierungstools zu gewĂ€hrleisten. DarĂŒber hinaus ermöglicht das Freihalten von möglichst viel freiem Speicherplatz Windows, jedes Mal, wenn Sie eine neue Datei speichern möchten, gröĂere zusammenhĂ€ngende Blöcke auszuwĂ€hlen und Fragmentierung von Anfang an zu verhindern.
Also: lassen Sie einen Defragmentierer regelmĂ€Ăig laufen und stellen Sie sicher, dass Ihre Festplatte genĂŒgend freien Speicherplatz hat, und Sie sind gut. Aber gilt dieser Rat auch fĂŒr Solid-State-Medien wie USB-Flash-Laufwerke, Speicherkarten und vor allem SSD-Laufwerke?
Solid-State Drives und Fragmentierung
Es ist allgemein bekannt, dass SSD-Laufwerke nicht defragmentiert werden sollten (oder sogar nicht dĂŒrfen). TatsĂ€chlich haben SSD-Laufwerke keine beweglichen mechanischen Teile. Es gibt keine beweglichen Köpfe, die zu einem neuen Sektor springen mĂŒssen und Zeit benötigen, um sich zu stabilisieren. Ein SSD-Laufwerk liest genauso schnell eine Reihe aufeinanderfolgender Sektoren wie eine Reihe zufĂ€lliger Sektoren (nun ja, bis zu einem gewissen Grad und vorausgesetzt, dass die GröĂe eines Festplattensektors mit der GröĂe des SSD-Minimaldatenblocks ĂŒbereinstimmt und ausgerichtet ist).
Wenn das nicht genug Argument ist, bedenken Sie, dass SSD-Laufwerke auf NAND-Flash-Speicher basieren und eine begrenzte Lebensdauer haben. Ihre Lebensdauer ist begrenzt durch die Anzahl der Schreiboperationen auf jede Flash-Zelle. Das Verschieben von Daten (was ein Defragmentierungstool fĂŒr Festplatten tut) belastet die Flash-Zellen unnötig und bietet keine sichtbaren Vorteile fĂŒr Lese- oder Schreibgeschwindigkeiten.
SchlieĂlich speichern SSD-Laufwerke Daten nicht intern in einer zusammenhĂ€ngenden oder aufeinanderfolgenden Weise. Stattdessen remappen eingebaute Controller in SSD-Laufwerken stĂ€ndig logische und physische Datenblöcke, um die Abnutzung gleichmĂ€Ăig auf die vielen Flash-Zellen zu verteilen.
Wie vermeiden Sie also Fragmentierung auf SSD-Laufwerken, wenn keine Defragmentierung möglich ist? Der einzige Weg, um Fragmentierung auf SSD-Laufwerken zu vermeiden, besteht darin, eine ausreichende Menge an freiem Speicherplatz zu haben. Stellen Sie sicher, dass Sie mindestens 30 Prozent freien Speicherplatz auf Ihrem SSD-Laufwerk haben. Ich weiĂ, das ist nicht einfach, da SSD-Laufwerke typischerweise viel kleiner sind als ihre mechanischen Pendants. Aber das Vorhalten von dediziertem freiem Speicherplatz auf einer SSD hilft der Festplatte, interne Wartungsaufgaben wie Wear-Leveling und vorbeugendes Block-Löschen (TRIM und Garbage Collection) viel schneller und effizienter auszufĂŒhren als bei einer fast vollstĂ€ndigen Einheit.