Wie oft können Daten von einem USB-Stick gelesen werden?

Wie oft können Daten von einem USB-Stick gelesen werden?

Mir ist bewusst, dass Schreibvorgänge auf einem USB-Flash-Laufwerk die Lebensdauer des Geräts verkürzen. Ich habe gehört, dass die Anzahl der Schreibvorgänge zwischen 100.000 und 10 Millionen liegt, aber ich habe nichts über die Anzahl der Lesevorgänge gehört. Zählt das Lesen vom Gerät zu dieser Gesamtzahl?

Ich möchte nur einmal auf einen USB-Stick schreiben und ihn auf schreibgeschützt setzen. Dann sollen Dateien tausend oder mehr Mal am Tag vom Gerät gelesen werden, aber ich frage mich, ob (bei etwa 1.000 Lesevorgängen am Tag) der USB-Stick innerhalb von 100 Tagen ausgetauscht werden muss (bei einer angenommenen Lebensdauer von 100.000 Schreib-/Lesezyklen)?

Antwort1

Aus praktischen Gründen gibt es kein Leselimit. Es gibt auch kein Schreiblimit, sondern ein Löschlimit. (Und wenn Sie zuvor in einen Block geschrieben haben, müssen Sie ihn löschen, um neue Daten hineinschreiben zu können.)

Antwort2

Die Antwort von David Schwartz deckt alle „praktischen Zwecke“ ab. Diese Antwort konzentriert sich auf die „unpraktischen Zwecke“. Es gibt eine theoretische Ausnahme von der Regel der unbegrenzten Lesevorgänge, für die es jedoch eine einfache Lösung gibt.

Beim Schreiben in den Flash-Speicher gibt es eine Lebensdauerbeschränkung, aber auch das Lesen wirkt sich darauf aus. Eine seiner Schwächen sind die sogenannten „Read Disturb Errors“ 1. Das Lesen des Flash-Speichers verschlechtert die umliegenden gespeicherten Werte leicht, was schließlich zu Fehlern führen kann.

Die Fehler werden dadurch vermieden, dass der Controller die Anzahl der Lesevorgänge verfolgt und Blöcke kopiert, bevor die Verschlechterung zum Problem wird. Durch einfaches Kopieren des Blocks an einen anderen Ort und anschließendes Löschen des Originalblocks wird alles zurückgesetzt und der Originalblock kann erneut verwendet werden. Quelle

Die Faustregel für MLC lautet 100.000 Lesevorgänge; für SLC sind es 1.000.000 Lesevorgänge 2 (Multi-Level Cell, oder MLC, und Single-Level Cell, oder SLC, sindzwei Arten von Flash-Speicher). Bei „normaler“ Nutzung stellen diese Schwellenwerte also möglicherweise nicht einmal ein Problem dar, mit dem sich der Controller befassen muss.

Damit kommen wir zum unpraktischen Szenario. Angenommen, Sie verwenden Flash-Speicher für einen Zweck wie in dieser Frage (einmal schreiben und dann über einen langen Zeitraum massiv lesen). Solange mindestens ein Block frei ist, kann der Controller mit den Daten Reise nach Jerusalem spielen. Wenn Sie jedoch jeden letzten Block mit Daten füllen würden, könnten Sie irgendwann einen Punkt erreichen, an dem der Controller Lesestörungsfehler nicht mehr vermeiden kann.

In diesem weit hergeholten Fall würde der Controller eine Beschädigung wahrscheinlich dadurch vermeiden, dass er die Karte oder den Flash-Speicher einfriert, sodass es keine kostengünstige Möglichkeit gäbe, sie zu lesen. Bei den in dieser Frage beschriebenen Nutzungsstufen könnte dies je nach Art des Flash-Speichers innerhalb weniger Monate oder Jahre passieren.

Natürlich könnte man das auch einfach mit einem Backup-Laufwerk erledigen, da diese billig sind und Sie keine neuen Daten geschrieben haben. Oder Sie könnten sicherstellen, dass Sie zumindest ein wenig freien Speicherplatz lassen.


Hinweis: Bei den beiden folgenden Quellen handelt es sich um direkte Download-Links. Sobald Sie darauf klicken, wird eine PDF-Datei heruntergeladen.
1 http://users.ece.cmu.edu/~omutlu/pub/flash-read-disturb-errors_dsn15.pdf
2 http://www.dslreports.com/r0/download/1507743~59e7b9dda2c0e0a0f7ff119a7611c641/flash_mem_summit_jcooke_inconvenient_truths_nand.pdf

Antwort3

Das ist nicht so einfach zu beantworten. Wenn Sie eine Datei schreiben, werden neue Blöcke geschrieben. Die verwendeten Blöcke werden als „schmutzig“ markiert. Wenn Sie also eine 10 KB große Datei auf ein 1 MB großes Gerät geschrieben haben, ist es wahrscheinlich, dass die 10 KB große Datei über alle Blöcke des 1 MB großen Geräts geschrieben wird. Erst wenn keine „sauberen“ Blöcke mehr vorhanden sind, wird der Flash-Controller wahrscheinlich die „schmutzigen“ Blöcke löschen.

Ihr Flash-Laufwerk hält deutlich länger als 100.000 Schreibvorgänge der 10K-Datei auf einem 1MB-Gerät.

Antwort4

Die Lebensdauer eines Flash-Laufwerks (SSD oder USB) zu messen, ist nicht so einfach wie die Angabe einer Zahl oder der mittleren Betriebsdauer zwischen Ausfällen (MTBF). Denn das Problem mit dem Ausfall ist nicht linear.

Bei Festplatten (magnetischen Datenträgern) treten Fehler auf, die (1) mit der Controllerplatine, (2) den Lese-/Schreibköpfen des Laufwerks oder (3) mit Lagerermüdung zusammenhängen. In seltenen Fällen sind sie jedoch mit dem Datenträger selbst verbunden.

Random Access Memory Drives, oft auch Flash-Laufwerke genannt, verlieren an Leistung, weil Speicherblöcke nur X-mal gelöscht/beschrieben werden können, bevor der Block vollständig ausfällt. Entwickler von „Flash-RAM“-Laufwerken verringern diesen Verlust, indem sie die Nutzung der Blöcke „nivellieren“. Im Grunde verteilen sie den eventuellen Verlust auf alle verfügbaren Blöcke und reduzieren so die Überbeanspruchung eines einzelnen Blocks.

Hier ist ein Artikel darüber, was Forscher beim Testen verschiedener Flash-RAM-Laufwerke herausgefunden haben. Und wie ich bereits sagte ... Es hängt von einigen Schlüsseldaten und dem Herstellungsansatz ab.

Und zum Schluss: Denken Sie einfach an das Enddatum Ihres Magnet- oder RAM-Laufwerks, denn beide werden irgendwann den Geist aufgeben. Führen Sie häufiger Backups durch, wenn sich die Tage, Monate und Jahre häufen.

http://www.zdnet.com/article/usb-drive-life-fact-or-fiction/

verwandte Informationen