Każdy dysk SSD ma ograniczoną liczbę zapisów. Wynika to z fizyki komórki pamięci, a nie z wady produktu. Wyjaśniamy, skąd bierze się zużycie, ile zapisów wytrzymują różne rodzaje pamięci i jak kontroler stara się wydłużyć życie dysku.
Cykl zapisu i kasowania
Blok pamięci flash pracuje w cyklu. Najpierw jest kasowany, potem strona po stronie zapisywany danymi, a gdy trzeba zrobić miejsce, ponownie kasowany. Jeden taki obieg to cykl P/E (od ang. program/erase, czyli zapis i kasowanie).
Przy każdym zapisie i kasowaniu elektrony przechodzą przez cienką warstwę izolatora (tzw. tlenek tunelowy). Z czasem część elektronów zostaje w tej warstwie uwięziona, a jej jakość się pogarsza. Badacze nazywają to zjawisko zużyciem (ang. wearout): im więcej zapisów przeszedł blok, tym więcej błędnych bitów trzeba w nim korygować.
Pomiary na prawdziwych kościach TLC pokazały, co dzieje się po 3000 cyklach. „Okienka” napięć poszczególnych stanów przesuwają się w górę i robią się szersze. Im szersze okienka, tym bardziej na siebie zachodzą, a to oznacza więcej błędów odczytu.
Ile zapisów wytrzyma pamięć
Blok uznaje się za zużyty, gdy nie jest już w stanie bezpiecznie przechować danych przez minimalny czas gwarantowany przez producenta. Wytrzymałość spadała z każdą generacją płaskiej (2D) pamięci, bo komórki stawały się mniejsze, a w jednej komórce zapisywano więcej bitów.
Pamięć trójwymiarowa (3D NAND), opisana w artykule 5, odwróciła na pewien czas ten trend. W publikacji z 2017 roku jej wytrzymałość była ponad dziesięciokrotnie wyższa, bo komórki w pierwszych generacjach 3D są większe.
Od czego zależy żywotność dysku
Producenci szacują żywotność dysku z kilku składników:
- Wytrzymałość bloków (liczba cykli P/E).
- Zapas pojemności (overprovisioning). Dysk ma więcej pamięci, niż widzi system. Ta ukryta rezerwa daje kontrolerowi miejsce na prace porządkowe.
- Intensywność użytkowania: ile razy dziennie zapisuje się całą pojemność dysku. W zastosowaniach z przewagą odczytów to zwykle mniej niż jeden pełny zapis dziennie, w zastosowaniach intensywnie zapisujących do 5.
- Wzmocnienie zapisu (write amplification). Porządkując bloki, kontroler sam przepisuje dane. Do pamięci trafia więc więcej danych, niż wysłał komputer.
- Kompresja, jeśli kontroler ją stosuje.
Te parametry wzajemnie się ograniczają. Większy zapas pojemności zmniejsza wzmocnienie zapisu, ale z coraz mniejszym efektem. Silniejsza korekcja błędów pozwala blokom pracować dłużej, ale zajmuje miejsce, które mogłoby służyć jako zapas. Przykład z publikacji (dysk o pojemności 2,0 TB i 2,4 TB pamięci fizycznej):
|
Konfiguracja korekcji błędów |
Pozostały zapas pojemności |
|---|---|
|
słabsza korekcja, bez parzystości między układami |
11,6% |
|
słabsza korekcja, z parzystością między układami |
8,1% |
|
silniejsza korekcja, bez parzystości |
8,0% |
|
silniejsza korekcja, z parzystością |
4,6% |
Jak kontroler chroni pamięć
- Wyrównywanie zużycia. Do zapisu kontroler wybiera bloki o najmniejszej liczbie cykli, by żaden nie zużył się przedwcześnie.
- Oddzielanie danych „ciepłych” od „zimnych”. Badania pokazały, że w wielu typowych zastosowaniach niemal 100% zapisów trafia do mniej niż 1% stron dysku. Trzymanie często zmienianych danych w osobnych blokach ogranicza zbędną pracę kontrolera.
- Wyłączanie uszkodzonych bloków. Już w fabryce część bloków jest oznaczana jako wadliwa (zwykle mniej niż 2%). Kolejne bloki mogą ulec uszkodzeniu w trakcie pracy. Kontroler wykrywa je po nieudanym zapisie lub kasowaniu i przestaje ich używać, a dane z takiego bloku odtwarza z zapisanej parzystości.
Co pokazują dyski pracujące w centrach danych
Pomiary w laboratorium uzupełniają duże badania dziesiątek, a nawet setek tysięcy dysków pracujących w centrach danych. Publikacja wymienia pięć głównych obserwacji:
- Awaryjność nie rośnie równomiernie wraz z liczbą cykli. Występują wyraźne okresy, między którymi wskaźnik awarii różni się nawet o 81,7%.
- Liczba błędnych bitów rośnie z wiekiem dysku nawet przy stałej liczbie cykli. To sugeruje, że znaczenie ma też starzenie się samego krzemu.
- Rzeczywista awaryjność dysków była znacznie wyższa niż podawana przez producentów.
- Wyższa temperatura pracy może zwiększać awaryjność. Nowoczesne dyski ograniczają jednak wtedy tempo pracy (throttling), co wyraźnie ten wpływ zmniejsza.
- Błędów nie do naprawienia było mniej, niż oczekiwano. Pomaga skuteczne wyłączanie uszkodzonych bloków.
Co to oznacza w praktyce
Zużycie pamięci flash jest procesem fizycznym i nieuniknionym. Można je spowolnić, ale nie zatrzymać. Odzyskiwanie danych z dysków SSD staje się coraz trudniejsze, a jeśli masz jakiś problem zapraszamy do kontaktu. Najważniejszy wniosek dla użytkownika płynie z badań w centrach danych i laboratoriach odzyskiwania danych: dyski psują się częściej, niż wynikałoby ze specyfikacji producentów. Kopia zapasowa ważnych danych na osobnym nośniku pozostaje więc jedyną pewną ochroną.
