Soll ich meine SSD defragmentieren?

121

Ich habe gerade gelernt, dass man "Niemals die SSD defragmentieren" soll. Aber ich habe keine Ahnung, ob das stimmt.

Ich glaube, dass Windows 10 automatisch geplant wurde, um die Defragmentierung auf meiner SSD abzuschließen, aber ich habe sie abgebrochen. Würde dies zu Problemen bei zuvor durchgeführten Defragmentierungen führen?

Die SSD ist immer noch nicht partitioniert, da das SSD-Laufwerk im Ordner "Arbeitsplatz" nur im Systemhardwaremanager nicht angezeigt wird. Was sind die richtigen Schritte, um Windows auf einer SSD zu installieren (es ist meine erste SSD)?

Jerry
quelle
12
Der Rat, Ihre SSD niemals zu defragmentieren, ist veraltet und stammt aus einer Zeit, in der SSDs langsamer waren und eine wesentlich geringere Schreibsicherheit hatten als moderne SSDs. Moderne SSDs sind in der Regel auf IOPS beschränkt, und defragmentierte Dateisysteme benötigen weniger E / A-Vorgänge.
David Schwartz
5
Nach @DavidSchwartz ist die Anzahl der Schreib- / Löschvorgänge, die erforderlich sind, um eine moderne SSD spontan zu töten, lächerlich hoch. Sofern Sie nicht eine außergewöhnliche Menge an Informationen verarbeiten, hält Ihre SSD höchstwahrscheinlich länger als viele Ihrer anderen Komponenten, selbst wenn Sie herkömmliche Defragmentierungen durchführen.
DanK
29
Warum sollten Sie eine SSD defragmentieren? Bei der Defragmentierung müssen die Dateien auf der Festplatte zusammenhängend sein, damit die Leseköpfe nicht überall suchen müssen (was Zeit kostet, da es sich um physische Bewegungen handelt), um die Datei zu lesen. Ich bin kein Experte, aber AFAIK-SSDs sind Festkörper- und Direktzugriffsdatenträger. Alle Zugriffe dauern dieselbe Zeit, daher sollte es keine Rolle spielen, wie Dateiblöcke verteilt werden.
Jamesqf
6
Wie Ajedi32 feststellt, sind die Empfehlungen zu den beiden Fragen völlig entgegengesetzt. Das sollte die Richtung des Duplikats beeinflussen. Wenn die Empfehlungen für die andere Frage jetzt als falsch angesehen werden, können die Leser dort nur dann Antworten auf diese Frage finden, wenn diese Frage als Duplikat erstellt wird.
Fixer1234

Antworten:

135

Lassen Sie Windows seine Arbeit machen. Einmal im Monat wird eine echte vollständige Defragmentierung durchgeführt , auch auf einer SSD, um die internen Metadaten zu optimieren.

Die kurze Antwort lautet: Ja, Windows defragmentiert manchmal SSDs. Ja, es ist wichtig, SSDs intelligent und angemessen zu defragmentieren. Ja, Windows ist schlau, wie es mit Ihrer SSD umgeht.

Hier ist eine Antwort von Microsoft:

Storage Optimizer defragmentiert eine SSD einmal im Monat, wenn Volume-Snapshots aktiviert sind. Dies ist beabsichtigt und aufgrund der langsamen Volsnap-Kopie bei der Schreibleistung auf fragmentierten SSD-Volumes erforderlich . Es ist auch ein Missverständnis, dass Fragmentierung auf SSDs kein Problem darstellt. Wenn eine SSD zu fragmentiert wird, können Sie die maximale Dateifragmentierung erreichen (wenn die Metadaten keine weiteren Dateifragmente darstellen können), was zu Fehlern führt, wenn Sie versuchen, eine Datei zu schreiben oder zu erweitern. Darüber hinaus bedeutet mehr Dateifragmente, dass beim Lesen / Schreiben einer Datei mehr Metadaten verarbeitet werden müssen, was zu einer geringeren Leistung führen kann.

Für Retrim sollte dieser Befehl nach dem in der Benutzeroberfläche von dfrgui angegebenen Zeitplan ausgeführt werden. Retrim ist erforderlich, da TRIM in den Dateisystemen verarbeitet wird. Aufgrund der unterschiedlichen Leistung der Hardware, die auf TRIM reagiert, wird TRIM vom Dateisystem asynchron verarbeitet. Wenn eine Datei gelöscht oder anderweitig Speicherplatz freigegeben wird, stellt das Dateisystem die zu verarbeitende Zuschneideanforderung in eine Warteschlange. Um die Auslastung der Peek-Ressourcen zu begrenzen, kann diese Warteschlange nur auf eine maximale Anzahl von Zuschneideanforderungen erweitert werden. Wenn die Warteschlange maximal ist, werden eingehende TRIM-Anforderungen möglicherweise gelöscht. Dies ist in Ordnung, da wir regelmäßig einen Retrim mit Storage Optimizer durchführen. Das Retrim wird mit einer Granularität ausgeführt, die das Erreichen der maximalen TRIM-Anforderungswarteschlangengröße beim Löschen von TRIMs vermeiden soll.

Also installieren Sie Windows auf der SSD und vergessen Sie es. Windows wird alles alleine machen.

magicandre1981
quelle
17
Manchmal schimpfen wir darüber, dass Microsoft so dumm und so ist. Aber manchmal wundere ich mich nur, wie durchdacht einige Windows-Elemente sind.
BlueWizard
1
AFAIK Linux / EXT muss dies jedoch überhaupt nicht tun.
Spraff
6
Die Fragmentierung wird in EXT auf ein Minimum beschränkt, kann jedoch in bestimmten Anwendungsfällen auftreten, zumindest in Ext3: en.wikipedia.org/wiki/Ext3#Disadvantages
Bret
6
EXT-Varianten fragmentieren und verlieren an Leistung. Wer etwas anderes sagt, der lügt die Linux-Überlegenheit. Quelle: Ich habe einen Treiber dafür implementiert und das tut es auch.
Imallett
1
@spraff das ist, weil EXT Leerzeichen zwischen den Blöcken lässt und die Datei nicht teilweise woanders geschrieben werden muss, wenn sie wächst. Wenn es wächst. Grundsätzlich benötigt eine Videodatei (die niemals wächst) immer noch mehr Speicherplatz als benötigt und verschwendet daher Speicherplatz. Kein System ist perfekt
BlueWizard
50

Ich habe gerade gelernt, dass man "Niemals die SSD defragmentieren" soll. Aber ich habe keine Ahnung, ob das stimmt.

Ein bisschen Wissen ist gefährlich. Es ist wahrscheinlich eine gute Idee, Ihre SSD niemals zu defragmentieren, wenn Ihr System völlig ahnungslos von dem ist, was eine SSD ist - sagen wir Windows XP. Und wenn SSDs zerbrechliche Schneeflocken waren, die sich wahrscheinlich abnutzen und in der rauen Hitze des normalen Gebrauchs schmelzen - ich habe eine detaillierte Antwort darauf, warum das nicht stimmt . Es ist ziemlich schwierig , ein Laufwerk im normalen Gebrauch zu "verschleißen". Es könnte praktisch sein, dies zu verlernen.

Berücksichtigen wir, dass, wenn Ihre Anwendung SSDs tötet oder sogar schwere Schreibvorgänge ausführt , wie dies Spotify tat , die Leute kippen würden. Und ziemlich oft sind die Leute, die Betriebssysteme schreiben, schlau.

Ich beziehe mich für den Rest dieser Antwort stark auf diesen Blog-Beitrag von Scott Hanselman. Die Antwort von Magicandre bezieht sich auch darauf, aber ich habe andere Lehren daraus gezogen. Es lohnt sich, die Details durchzulesen. Ich nehme mir ein paar Freiheiten bei der Darstellung der Informationen. Ich würde damit anfangen

Ich denke, das größte Missverständnis ist, dass die meisten Leute ein sehr veraltetes Modell des Disk \ File-Layouts haben und wie SSDs funktionieren.

SSDs fragmentieren und diese Fragmente müssen nachverfolgt werden . Auf einer grundlegenden Ebene hilft das Defragmentieren von SSDs Ihrem Dateisystem dabei, effizient zu arbeiten, auch wenn es sich von einem sich drehenden Rostlaufwerk unterscheidet. Der Beitrag, auf den ich verwiesen habe, weist darauf hin, dass Volume-Snapshots ohne Defragmentierung langsam sind.

SSDs haben auch das Konzept von TRIM. TRIM (retrim) ist zwar ein von der Fragmentierung getrenntes Konzept, wird jedoch weiterhin vom Windows Storage Optimizer-Subsystem verwaltet und der Zeitplan wird aus Benutzersicht von derselben Benutzeroberfläche verwaltet.

TRIM ist gut. Das Zuschneiden spart Schreibvorgänge, da es einen Mechanismus zum Markieren von Blöcken als gelesen darstellt, ohne sie zu löschen, und zum Löschen nach Bedarf.

Wer immer gesagt hat, dass Sie ein Laufwerk niemals defragmentieren sollen, hat keine Ahnung, dass moderne Betriebssysteme für SSDs entwickelt wurden und dass die erforderlichen Reinigungsprozesse eingeleitet wurden.

Es ist zwar verlockend anzunehmen, dass Sie es besser wissen, aber in diesem Fall haben die Leute, die das Betriebssystem geschrieben haben, die Dinge für Sie optimiert. Bleiben Sie ruhig und lassen Sie Ihr Laufwerk von Windows defragmentieren.

Geselle Geek
quelle
8
Ich denke, diese Antwort würde durch die Erwähnung von logischen Blockadressen gegenüber physikalischen Blockadressen erheblich verbessert. Es ist nicht möglich, eine SSD zu defragmentieren. Die Prozedur auf Dateisystemebene, die zu sequentiellen logischen Adressen führt, führt aufgrund der Flash-Zuordnung weiterhin zu Datenstreuungen auf der gesamten physischen Festplatte.
Ben Voigt
Um ehrlich zu sein, das ist ein Konzept, das ich immer noch nicht im Kopf habe. Ich glaube, eine vollständige Behandlung davon würde eine großartige Antwort auf eine meiner Fragen geben, und ich habe einen Repräsentanten, der in meinem Testkonto herumschwirrt. Ich würde es gerne als Kopfgeld dafür auszeichnen.
Geselle Geek
22

Der Vollständigkeit halber:

Die Fragmentierung hängt vom Dateisystem (FS) ab , nicht von der Disc oder dem Betriebssystem.

Dies bedeutet, dass die Beantwortung Ihrer Frage nicht unbedingt für Windows * erforderlich ist. SSD ist ein Sonderfall - es funktioniert anders als eine gewöhnliche Disc.

Mit einem FS können Sie Ihre Dateien auf der Disc organisieren. Die gängigsten Windows-Formate sind NTFSund FAT32. Der am häufigsten verwendete FSs auf Linux ist ext3/ ext4, aber es gibt viele andere ( zfs, xfs, jfs, ReiserFS, btrfs, und mehr).

Eine Disc ist in Blöcke unterteilt . Sie können es sich als ein langes Band vorstellen, auf das Sie einige Daten schreiben können. Wenn Sie etwas auf die Disc schreiben, verwenden Sie diese Blöcke. Natürlich möchten Sie, dass verwandte Dateien nebeneinander und eine einzelne Datei in einem einzigen Block geschrieben werden, damit Sie nicht um das Band herumspringen müssen. Wenn alles verstreut ist, nennen wir das Fragmentierung . Die Defragmentierung organisiert sie.

Offensichtlich bestimmt die Art und Weise, wie Sie Dinge organisieren (FS), wie gut sie organisiert sind (ob Fragmentierung vorliegt). Wenn Sie Ihre Dateien von Anfang an organisieren, entsteht keine Fragmentierung. Das passiert in einigen Dateisystemen (zB der extFamilie). Diese Dateisysteme organisieren Ihre Dateien im laufenden Betrieb (vor dem Schreiben), so dass Sie sie nur unter besonderen Umständen defragmentieren müssen, wenn keine andere Wahl bleibt, als eine kleine Störung einzuführen.

Weitere Informationen zu ext4und zur Verhinderung von Fragmentierung finden Sie auf dieser Seite

Jetzt funktioniert eine SSD anders. Es ist kein Band. Sie können überall sofort zugreifen. Der springende Punkt bei der Defragmentierung ist, dass Sie Ihre Dateien ordentlich organisieren, damit Sie nicht herumspringen müssen. Es gibt keine Möglichkeit, in einer SSD herumzuspringen. Es ist dir egal, ob du zum anderen Ende des Bandes hin und her musst; Es gibt kein Band.

Es gibt jedoch auch andere Möglichkeiten, eine SSD zu optimieren. Weitere Informationen finden Sie in diesem Thema .

*Fast; Die Wahl des Dateisystems hängt mit dem Betriebssystem zusammen. Die meisten Linux-Benutzer verwenden andere FS als Windows- oder OS X-Benutzer.

MatthewRock
quelle
3
Genau das. Die Fragmentierung erfolgt unabhängig vom Speichermedium auf FS-Ebene. Einige Medien sind stärker davon betroffen als andere, aber es gibt immer einige Auswirkungen, und sie verschwinden nicht, nur weil Sie über eine SSD verfügen.
Dmitry Grigoryev
1
Der Hauptunterschied ist wirklich Ext3 und FAT gegen Ext4 und NTFS; aber selbst dann, Anwendungen, das Betriebssystem und sogar die Hardware tragen , oft deutlich. Windows organisiert Dateien, die beim Start verwendet werden, in der Reihenfolge, in der sie beispielsweise verwendet werden. Auf diese Weise kann der Großteil des Starts Blocklesevorgänge anstelle von Suchvorgängen verwenden. Man könnte dies als Defragmentierung bezeichnen. Abgesehen von der Defragmentierung auf FS-Ebene (Reduzierung der Dateifragmentierung) werden auch Dateigruppen "defragmentiert", um den Zugriff auf eine Weise zu optimieren, die der FS nicht wirklich unterstützen kann. Sie können sich viele ähnliche Optimierungen vorstellen, z. B. das Verschieben von DLLs in die Nähe von EXEs.
Luaan
Es gibt viele verschiedene Ebenen, die alle auf ihre Weise von Bedeutung sind. Striping ist beispielsweise eine Methode zur absichtlichen Fragmentierung, mit der die Leistung verbessert werden kann. Die physische Organisation einer Festplatte kann dies auch nutzen, wenn die Festplatte über mehrere Köpfe verfügt, die gleichzeitig von mehreren Platten lesen können. SSDs müssen nicht den Plattenteller drehen und die Köpfe bewegen, um zu suchen, aber sie haben immer noch ein IOPS-Limit - und bei der heutigen Geschwindigkeit von SSDs ist dies oft wichtiger als reine Bandbreite. SSD-Suchvorgänge sind nicht mehr schnell genug, um die Bandbreite zu überlasten. Fragmentierung ist ein kleiner Teil des grundlegenden Problems - Caching.
Luaan
@Luaan: Es gibt keine "SSD-Suche". Ich denke, Sie sprechen tatsächlich über den Verarbeitungsaufwand pro Befehl.
Ben Voigt
1
@BenVoigt Ich denke, Luaan bedeutet, dass nicht konsolidierte Dateien auch auf SSDs noch länger zum Lesen brauchen. Es gibt keine Suchverzögerung, aber es gibt einen signifikanten Unterschied zwischen sequentiellen und zufälligen Lesevorgängen auf SSDs.
user1306322
7

Die vorhandenen Antworten sind großartig, aber ich habe einige Dinge zu ergänzen ...
Ich defragmentiere meine SSD und deaktiviere das automatische TRIM , aber aus ganz anderen Gründen als den genannten:

  1. Ich möchte Dateien oder Partitionen wiederherstellen können, wenn und wenn ich versehentlich etwas lösche.
    Nein, es kommt nicht oft vor, aber die wenigen Male, in denen es passiert ist, war es ziemlich frustrierend, Dinge nicht wiederherstellen zu können, die ich auf einer Festplatte hätte wiederherstellen können, selbst wenn ich versucht hätte, sie sofort nach dem Löschen wiederherzustellen .

  2. Ich erweitere, verkleinere und verschiebe Partitionen sogar alle paar Monate. Durch die Defragmentierung und Konsolidierung von Dateien wird dieser Vorgang weitaus schneller und weniger riskant. Man könnte meinen, man kann Partitionsmanagern heutzutage vertrauen, aber noch im Dezember 2015 sind bei einfachen Verschiebungs- / Größenänderungsvorgängen Fehler (Beschädigungen) aufgetreten. Und die intelligenteren Partitionsmanager versuchen zu vermeiden, dass sie auf Datenträgern ausgeführt werden, die stark fragmentiert sind, bevor ein Schaden verursacht wird (und dies ist normalerweise, wenn auch nicht immer, erfolgreich).

  3. Ich verwende Linux manchmal und habe mich vor etwa einem Jahr an der Beschädigung von NTFS-Volumes verbrannt. Dies liegt nicht speziell an der Fragmentierung, aber da nicht einmal unfragmentierte Dateien ordnungsgemäß verarbeitet werden können, bin ich in der Defensive und versuche, ein möglichst sauberes Volume zu präsentieren (und selbst dann vermeide ich das Schreiben der meisten der ganzen Zeit).

Das Traurige an # 2 und # 3 ist, dass Leute, die diese Probleme nicht mit eigenen Augen gesehen haben, immer denken, ich bin verrückt und erfinde das alles, oder dass mein System irgendwie kaputt sein muss. Aber ich habe diese ziemlich oft auf mehreren Systemen reproduziert, und als jemand, der seine eigenen NTFS-Reader geschrieben hat, weiß ich ein oder zwei Dinge über Dateisysteme und Kernel-Programmierung ... wobei NTFS im Mittelpunkt steht. Ich kenne also Fehler, wenn ich sie sehe. Niemand glaubt mir, aber ich warne die Leute trotzdem, da ich gesehen habe, dass dies mit meinen eigenen Augen passiert. Wenn Sie also mit Partitionen herumspielen oder überhaupt Linux verwenden, empfehle ich, dass Sie Ihre Laufwerke defragmentieren. YMMV.

Oh, und vergessen Sie nicht, TRIM von Zeit zu Zeit manuell auszuführen, wenn Sie nichts wiederherstellen müssen. Obwohl, wenn ich ehrlich bin, ich noch keinen Nutzen davon zu sehen habe ...

Mehrdad
quelle
1
Ausgezeichnet, es ist aus den gleichen Gründen eine gute Vorgehensweise, Flash-Laufwerke zu defragmentieren (und sogar "Null"), insbesondere für die Fotografie. Aneinandergrenzende Dateien lassen sich auch teilweise leichter wiederherstellen. Nehmen Sie sich etwas Zeit und profitieren Sie auch vom Pre-Fetch (Vorauslesen), wenn das Betriebssystem clever genug ist. SSDs sind in der Regel langsamer als der Speicher (obwohl dies nicht immer der Fall ist).
McKenzm
Ist Ihr Linux-Rat nicht tatsächlich "wenn Sie Linux verwenden und das NTFS-Dateisystem damit lesen / schreiben", nicht tatsächlich "wenn Sie überhaupt Linux verwenden"? Die Verwendung von Linux mit ext4 oder XFS auf SSD ist absolut sicher. (Und FAT, was das betrifft, so dass Sie bei Bedarf eine FAT-Partition für den Datenaustausch erstellen können.)
mattdm
@mattdm: Ja, ich denke. (Seltsam, ich dachte, ich habe darauf schon geantwortet ...)
Mehrdad
0

Sie können Ihre SSD defragmentieren. Sollten Sie? Sicher nicht sehr oft, aber es gibt einige Fälle, in denen es vorteilhaft sein kann, dies selten zu tun.

a) Sie haben ein Samsung Evo 840, das vom langsamen Lesen alter Dateien betroffen ist. Durch die Defragmentierung werden sie effektiv neu geschrieben und es handelt sich nicht mehr um alte Dateien.

b) Während die Auswirkungen der Fragmentierung auf SSDs äußerst gering sind, muss der Controller dennoch Dateien neu zusammensetzen, die über viele Flash-Chips verteilt sind. Die Auswirkung auf die Leistung ist sehr gering. Durch eine erneute Defragmentierung sollten die Dateien jedoch neu organisiert und für den Controller einfacher zusammenzusetzen sein.

c) Wenn Sie etwas in der Nähe einer modernen SSD haben, wirkt sich eine gelegentliche Defragmentierung nicht auf die Lebensdauer aus. Im Jahr 2018 führte eine Website von hw tech einen Test der SSD-Ausdauer durch, und das Samsung evo 840 500GB, das 2D-TLC verwendet (was eine sehr schlechte Ausdauer hat), schlug bei etwa 600 TB Schreibzugriff fehl. Alles, was besser ist, ist wahrscheinlich mit 3D-TLC (von einigen Unternehmen als VNAND bezeichnet), das viel mehr Ausdauer hat. Größere Modelle haben auch mehr Zellen zum Schreiben, wodurch die Lebensdauer weiter erhöht wird. Und wenn Sie eine große Pro-Drive-Ausdauer haben, ist dies kein Problem (in dem Test, den ich zuvor erwähnt habe, hat die Samsung Pro 512 GB für 9 Schreibvorgänge gedauert ... größere / neuere Modelle sollten sogar noch länger halten). Diese Zahlen sind praktisch nicht zu erreichen, wenn Sie es nicht mit Absicht versuchen. Schreibt verwendet, um zu töten (billige sowieso,

orange_juice6000
quelle
-3

Durch das Defragmentieren einer SSD wird der frühzeitige Ausfall der Speicherblöcke mit der niedrigsten Adressierung gefördert.

Siehe: http://techreport.com/review/27909/the-ssd-endurance-experiment-theyre-all-dead

"Selbst wenn die Algorithmen zur Abnutzungskorrektur die Schreibvorgänge gleichmäßig über den Flash-Speicher verteilen, fallen möglicherweise alle Zellen aus oder sind nicht mehr einsatzfähig. In diesem Fall werden sie aus dem überlasteten Bereich der SSD entfernt und durch einen Flash-Speicher ersetzt. Dieser NAND-Ersatz sorgt dafür, dass die Die vom Benutzer zugängliche Kapazität des Laufwerks wird durch den Krieg der Abnutzung, der seine Zellen verwüstet, nicht beeinträchtigt. "

"Die Verluste werden letztendlich die Kompensationsfähigkeit des Laufwerks übersteigen und unbeantwortete Fragen hinterlassen. Wie viele Schreibvorgänge sind erforderlich? Was passiert am Ende mit Ihren Daten? Verlieren SSDs an Leistung oder Zuverlässigkeit, wenn sich die Schreibvorgänge häufen?"

jwzumwalt
quelle
5
Dies ist ein extremer Fall, in dem auf dem Laufwerk große Datenmengen geschrieben und überschrieben werden. Was hat das mit regelmäßigem Defragmentieren zu tun?
Geselle Geek
Nein, es ist kein Extremfall ... Es ist ein Test, der die inhärente oder eventuelle Schwäche des Produkts zeigt. Tests sollen Grenzen aufzeigen.
Jwzumwalt
-6

Jede Zelle auf einer SSD wird mit jedem Überschreiben langsamer. Die Disk verbirgt sich, indem sie verfolgt, auf welche Zellen geschrieben wurde, und zuerst auf wenig benutzte Zellen schreibt. Defragmentierung bedeutet, dass viele Zellen massiv umgeschrieben werden, was die SSD abnutzt. HDs profitieren vom Defragmentieren, da die Leistung dadurch verbessert wird, dass der Servoarm nicht häufig bewegt werden muss, SSDs jedoch durch zufällige Platzierung von Daten nicht so stark verlangsamt werden.

Christopher Geisel
quelle
10
Hat nicht abgelehnt, wäre aber daran interessiert, Quellen dafür zu sehen.
Brichins
3
Sie verwechseln die Schreibverstärkung mit der Abnutzungskorrektur . SSDs müssen gelöscht werden, bevor sie schreiben können, aber sie löschen größere Blöcke als sie schreiben können. Dies bedeutet, dass ein einzelner Schreibvorgang möglicherweise mehrere Schreibvorgänge ausführt, um Daten zu verschieben und einen Block zum Löschen freizugeben. Je mehr Schreibvorgänge stattfinden, desto komplizierter wird dieser Vorgang. Das ist Schreibverstärkung. Es gibt verschiedene Möglichkeiten, um damit umzugehen, z. B. TRIM und Over-Provisioning. Die Verschleißkorrektur verteilt die Zellen, in die Sie schreiben, so dass sie nicht vollständig versagen.
Schwern