Ile razy można odczytać dane z dysku flash USB?

13

Chociaż zdaję sobie sprawę, że wykonywanie zapisów na dysku flash USB zmniejsza żywotność urządzenia. Słyszałem, że liczba zapisów wynosi od 100 tysięcy do 10 milionów, ale nie słyszałem o liczbie operacji odczytu. Czy odczyt z urządzenia liczy się do tej sumy?

Interesuje mnie pisanie tylko raz na dysk flash i ustawienie go jako tylko do odczytu. Następnie odczytujesz pliki z urządzenia tysiąc lub więcej razy dziennie, ale zastanawiam się, czy (powiedzmy 1000 odczytów dziennie) dysk flash będzie musiał zostać wymieniony w ciągu 100 dni (zakładając cykl życia 100 000 R / W)?

Jan
źródło
Tak, to się liczy, afaik. Liczba nie oznacza zapisu atomowego, lecz cykl, w którym każdy blok został zapisany i odczytany jeden raz.
manasij7479

Odpowiedzi:

10

Dla celów praktycznych nie ma ograniczenia odczytu. Naprawdę nie ma też limitu zapisu, to limit wymazywania. (A jeśli wcześniej pisałeś do bloku, musisz go usunąć, aby zapisać w nim nowe dane).

David Schwartz
źródło
Tak długo, jak piszesz tylko jeden raz na dysku, nie będzie problemu z odczytem (i tylko odczytem) praktycznie non-stop z urządzenia przez rok lub dłużej?
John
Nawet przez dziesięciolecia.
David Schwartz
3

Odpowiedź nie jest taka prosta. Podczas pisania pliku zapisywane są nowe bloki. Użyte bloki są oznaczone jako „brudne”. Jeśli więc zapisałeś plik 10 KB na urządzeniu 1 MB, prawdopodobnie plik 10 KB zostanie zapisany we wszystkich blokach na urządzeniu 1 MB. Tylko wtedy, gdy nie będzie już „czystych” bloków, kontroler pamięci flash prawdopodobnie usunie „brudne” bloki.

Dysk flash będzie trwał znacznie dłużej niż 100 000 zapisów pliku 10 KB na urządzeniu o pojemności 1 MB.

Dee
źródło
Hmm ... czy to spowodowałoby, że defragmentacja byłaby szkodliwa dla dysku flash?
thegrinner
1
@ thegrinner yes
Thomas Dignan
1

Określenie żywotności dysku flash (SSD lub USB) nie jest tak proste, jak podanie liczby lub średniego czasu między awariami (MTBF). Ponieważ problem z awarią nie jest liniowy.

Dyski twarde (nośniki magnetyczne) doświadczają awarii związanych z płytką drukowaną kontrolera (1) (2) głowicami odczytu napędu (3) Zmęczenie łożyska, ale rzadko nośnik sam.

Napędy pamięci o dostępie swobodnym, często nazywane dyskami flash, tracą ważność, ponieważ bloki pamięci można usunąć / zapisać tylko X razy, zanim blok całkowicie ulegnie awarii. Inżynierowie napędów „flash ram” poprawiają tę stratę poprzez „wyrównanie” użycia bloków. Zasadniczo rozkładają one ostateczną stratę na wszystkie dostępne bloki, zmniejszając nadmierne zużycie jednego bloku.

Oto artykuł na temat tego, co odkryli badacze testujący różne zestawy napędów flash-ram. I jak powiedziałem wcześniej ... Zależy to od niektórych kluczowych danych i podejścia produkcyjnego.

Ostatnie słowo: pamiętaj o dacie zakończenia napędu Magnetic Media lub RAM, ponieważ w końcu oba zawiodą. Wykonuj częstsze kopie zapasowe, gdy dni, miesiące i lata zaczynają się gromadzić.

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

użytkownik504909
źródło
Jeśli przeczytasz pytanie, autor napisze tylko raz i chce wiedzieć, jaki byłby limit odczytu. To całkowicie różni się od limitu zapisu. Ale dobrą wiadomością jest to, że twój artykuł pochodzi z 2010 roku i przetestował tylko technologię stosowaną w napędach USB i kartach pamięci. Dyski SSD, o których wspominasz, używają bardziej wyrafinowanych kontrolerów (i prawdopodobnie lepszej jakości pamięci), a ich życie jest jeszcze lepsze. Zła wiadomość jest taka, że ​​muszę ponownie nauczyć się wszystkiego, co wiedziałem o tym, co sprawia, że ​​statki kosmiczne odlatują. Najwyraźniej FTL w odniesieniu do napędów nie oznacza „szybciej niż światło”.
fixer1234
1

Odpowiedź Davida Schwartza obejmuje wszystkie „praktyczne cele”. Ta odpowiedź skupi się na „niepraktycznych celach”. Istnieje teoretyczny wyjątek od zasady nieograniczonej liczby odczytów, ale ma proste rozwiązanie.

Istnieje limit dożywotniego zapisu w pamięci flash, ale wpływa to również na czytanie. Jedną z jego słabości jest tak zwane „błędy zakłóceń odczytu” 1. Odczytywanie pamięci flash nieznacznie obniża otaczające przechowywane wartości, co może ostatecznie prowadzić do błędów.

Błędy są unikane przez kontroler śledzący liczbę odczytów i kopiowanie bloków, zanim degradacja stanie się problemem. Po prostu skopiowanie bloku w inne miejsce, a następnie usunięcie oryginalnego bloku resetuje wszystko, a oryginalny blok może być ponownie użyty. Źródło

Ogólna zasada dla MLC to 100 000 odczytów; w przypadku SLC jest to 1 000 000 odczytów 2 (Multi-Level Cell lub MLC, a Single-Level Cell lub SLC, to dwa rodzaje pamięci flash ). Zatem przy „normalnym” użytkowaniu progi te mogą nawet nie stanowić problemu, z którym kontroler musi sobie poradzić.

Co prowadzi nas do niepraktycznego scenariusza. Załóżmy, że używasz pamięci flash do celów takich jak w tym pytaniu (pisz raz, a potem czytaj masowo przez długi czas). Tak długo, jak istnieje co najmniej jeden wolny blok, kontroler może odtwarzać muzyczne krzesła z danymi. Jeśli jednak wypełnisz każdy ostatni blok danymi, możesz w końcu dojść do punktu, w którym kontroler nie będzie w stanie uniknąć błędów zakłóceń odczytu.

W tak daleko posuniętym przypadku kontroler prawdopodobnie uniknąłby uszkodzenia poprzez zamrożenie karty lub dysku flash, więc nie byłoby opłacalnego sposobu na odczytanie go. Przy poziomach użytkowania opisanych w tym pytaniu może to nastąpić w ciągu kilku miesięcy lub lat, w zależności od rodzaju pamięci flash.

Oczywiście można to załatwić, mając po prostu dysk zapasowy, biorąc pod uwagę, jak tanie są i że nie zapisałeś żadnych nowych danych. Lub możesz zapewnić, że pozostawisz przynajmniej niewielką ilość wolnego miejsca.


Uwaga: oba poniższe źródła są bezpośrednimi linkami do pobrania; plik PDF zostanie pobrany natychmiast po jego kliknięciu.
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

fixer1234
źródło