Preisgünstige Enterprise SSDs mit hoher Schreibgesamtkapazität

greystone

Active Member
Ich habe mir gerade ein paar SSDs gekauft und gemerkt, dass ich da nicht lange genug gesucht habe. Die Fragestellung war:

Welche SSDs mit hoher Lebens-Schreib-Kapazität und gutem Preis-/Leistungsverhältnis gibt es da für 2 TB-Modelle (SATA)?

Hilfreich war da für mich schließlich das Thomas-Krenn-Wiki, dass viele aktuelle SSD-Modelle der großen Hersteller auflistet.

Gemäß der Fragestellung die beste Option scheint mir zu sein:

Samsung PM897. Der Hersteller bietet 3 DWPD auf 5 Jahre oder ca. 10 PBW insgesamt.
Alternativ wäre noch die teurere Samsung SM883 mit dem gleichen Wert. ca. 3 PBW bietet dann noch die Samsung PM893.

Ich hatte mir gekauft:

Samsung Evo 870 mit 1,2 PBW.

Code:
Samsung Evo 870          125 EUR     1 PBW / 0,33 DWPD (Preis: Tendenz fallend)
Samsung PM893            165 EUR     3 PBW /    1 DWPD (Preis: Tendenz fallend)
Samsung PM897            285 EUR    10 PBW /    3 DWPD (Preis: Tendenz fallend)
Samsung SM883      300 - 550 EUR    10 PBW /    3 DWPD (Preis: Tendenz steigend)
Soligdigm D3-S4610       300 EUR    10 PBW /    3 DWPD (Preis: Tendenz fallend)

Als Alternative für deutlich höhere Schreibkapazitäten gibt es noch Intel Optane zu den entsprechend höheren Preisen. Z. B. P5800X (NVMe) 1,6 TB mit ca. 100 DWPD für ca. 4000 EUR.

Bei anderen Herstellern habe ich jetzt nicht so geschaut, weil dort andere Produkteigenschaften waren. (z. B. U.2 Formfaktor, da bräuchte es dann wieder zusätzliche Adapter)

Ich denke das Thema dürfte für so einige Serverbetreiber interessant sein.

Als gemessene Schreibleistung auf einem neuen, fetten VMHost mit aktuell erst einigen wenigen (8) aktiven produktiven VMs habe ich derzeit Schreibdatenaktivität im Schnitt von 130 TB/Jahr (gemäß SMART-Log) im RAID-10-Verbund.
 

Attachments

  • screenshot_ssd_writes.png
    screenshot_ssd_writes.png
    221.9 KB · Views: 139
Last edited:
Warum keine NVMe SSDs?
  • Weil man die im normalen Servergehäuse nicht im laufenden Betrieb wechseln kann. (Oder Schlägst Du da NVMe via SATA-Adapter oder NVMe-HotSwap-Spezialgehäuse vor?)
  • Weil Langlebigkeit mir wichtiger ist als Geschwindigkeit. (Wenn das identisch bei beiden Anschlußtypen identisch ist, nehme ich in Bezug auf den Aspekt auch NVMe SSDs)
---

Seagate Nytro 3750 hat auch noch eine hohe Endurance (10 DWPD) und dementsprechend teuer (1,6 TB, 2000 EUR, sehr teuer)
Seagate Nytro 3550 hat eine mittlere Endurance (3 DWPD). (1,6 TB, 600 EUR, sehr teuer)
Kingston DC500M mit eher geringer Endurance (1,3 DPW) zum akzeptablen Preis (1,92 TB, 200 EUR)

Ich schaue mir hier nur die Schreibkapazität an. Kann natürlich sein, dass andere Werte der SSDs da sind (IOPS, Durchsatz), die den Preisunterschied ausmachen.
 
Last edited:
Insgesamt war die Schreibaktivität nach dem messen der tatsächlichen Werte doch deutlich höher als erwartet. Ich dachte mit den 1200 TB komme ich locker hin. Aber wenn der VMHost mal voll ist, bleiben da vermutlich nicht mehr als 2 Jahre übrig.

Nachtrag 1

Was ich mich allerdings frage, ist, wie das mit der Haltbarkeit der SSDs grundsätzlich funktioniert. Jegliche Speichergeräte werden ja nicht gleichmäßig beschrieben. Manche Zellen werden sehr stark beansprucht, während andere Zellen nur kaum bis gar nicht überschrieben werden. Wie kann man mit den Gegebenheiten und begrenzter Schreibkapazität überhaupt irgendwas garantieren?

Ist da die Einstellung: Na ja, wir packen sehr viel Reservespeicherzellen drauf und gemäß unserer Mischkalkulation wird das schon hinhauen?

Ansonsten: Wenn eine Zelle kaputt geht, und reallokiert wird, dann gibt es ja Datenverlust. Ist ja nicht so, dass das nicht auffällt - besonders bei ZFS/btrfs/dm-integrity, bei denen Prüfsummen Fehler bei der Datenintegrität erkennen lassen. Da ich davon noch nichts gehört habe, müsste die Reallokierung ja vor dem kompletten Defekt einer Zelle durchgeführt werden oder die Häufigkeit ist so gering, dass dies doch nicht auffällt.

Nachtrag 2

Was den Backblaze-Link angeht, ist die Erkenntnis da ja: SSDs fallen kaum aus. Die vereinzelten Daten zum Ausreißer bei den 2 TB SSDs sind bei einer Stichprobengröße von 3 Stück ja nicht aussagekräftig.
 
Last edited:
  • Weil man die im normalen Servergehäuse nicht im laufenden Betrieb wechseln kann. Schlägst Du da NVMe via SATA-Adapter oder Spezialgehäuse vor?
  • Weil Langlebigkeit mir wichtiger ist als Geschwindigkeit. (Wenn das identisch bei beiden Anschlußtypen identisch ist, nehme ich in Bezug auf den Aspekt auch SSDs
https://geizhals.de/samsung-oem-datacenter-ssd-pm9a3-3-84tb-mz1l23t8hcjs-00a07-a2479502.html hat 5,47PBW und MTBF von 2 Mio Stunden und ist halt schon deutlich schneller als SATA.
Ja, man muss den Server zum Wechseln herunterfahren, dafür sind sie aber halt auch einfach besser. Nein, NVMe auf SATA ist ja Frevel.

Wenn Du NVMe Speed mit gleichzeitiger Hotplugfähigkeit haben willst (das Gehäuse / Mainboard / Raid Controller muss das aber unterstützen), solltest Du nach U2 oder U3 Ausschau halten.

Ansonsten können Raid Controller und Gehäuse oftmals SAS, welches mit 12Gbit/s immerhin die doppelte Bandbreite von SATA (6Gbit/s) hat. Mit SAS 2,5" SSDs hat man immerhin rund 1Gbyte/s statt nur 550Mbytes/s.
 
@Thunderbyte:

Darüber muss ich erst einmal nachdenken. Mir geht es um etwas vorwiegend preisgünstiges, was meine Anforderungen erfüllt. Die ist hier erst einmal: Einen Ersatz für Festplatten, damit ich mehr virtuelle Systeme (qemu) auf der Hardware laufen lassen kann. Mit Festplatten ist da performancetechnisch irgendwann mal Schluss.

Und der primäre Preisfaktor bei SSDs ist die Lebensdauer. Da muss ich gerade schauen, wie da dass Preis-/Leistungsverhältnis bei NVMe ist.

Da geht's jetzt bei mir auch nicht um die Monster-Anwendungen, die die NVMe-SSD-Performance wirklich brauchen, sondern um kleine/mittelgroße Shops und Webanwendungen. D. h. viel mixed Random I/O und Lese-/Schreibzugriffe wegen der Datenbanken. Vieles wird für den Webserver ohnehin aus dem RAM-Cache kommen. D. h. da braucht es die IOPS v. a. schreibend. Bei IOPS/schreibend sehe ich keinen all zu großen Unterschied zwischen SATA und NVMe. Bei IOPS/lesend ist das wieder bei Faktor 10 schneller bei NVMe. Ich denke, die IOPS/lesend könnte bei mir schon viel ausmachen.

Eine gewisse Leistungsreserve für Zeiten Hoch-Last-Zeiten (Marketing Events, ...) der Anwendungen brauche ich aber auch. Die Frage, die ich mir stelle ist, ob ich die NVMe Leistung wirklich brauche, oder ob die SATA-SSDs vielleicht einfach auch reichen. Denn wenn die Leistung der SATA-SSD reicht, dann habe ich da nix davon, dass die NVMe ja eigentlich noch 10 Mal mehr könnte.

Wenn der Ausbau Downtime braucht, muss halt genug Reservekapazität sein, wo man das unterbrechungsfrei hinverschieben kann. Dass ist ja auch nicht so das Problem.

Und RAID10 brauche ich bei NVMe ja auch nicht unbedingt. Da tut dann ja evtl. auch erst mal ein RAID1. (Nachtrag dazu: RAID10 statt RAID1 bringt kostenmässig nix, weil RAID10 (4x) die Schreibzugriffe im Vergleich zu RAID1 (2x) pro Gerät halbiert. Insofern ist RAID10 in Bezug auf die reinen SSD-Beschaffungskosten genauso teuer wie RAID1. Stromkosten kosten bei RAID10 mit 4 Geräten sind natürlich teuerer als RAID1 mit 2 Geräten)
 
Last edited:
Der Mittelweg - und häufig bei existierenden Servern ohnehin möglich (in die Spezifikationen schauen) - wäre wie gesagt SAS, das immerhin die SATA Bandbreitengrenze überschreiten kann. Das schaffen SSDs ja eigentlich heute sehr einfach.

Ansonsten hängt das klar von Deinem Bedarf ab, was hier "schnell genug" ist. NVMe ist nicht mehr sonderlich viel teuerer, allerdings kann die Connectivity (wegen der PCIe Lanes, die hierfür gebraucht werden) etwas aufwändiger und teuerer werden. Wenn man NVMe Performance hotpluggable braucht, nimmt man - bei neuen Servern - U2 oder U3. Da sieht das Ding fast wie eine SATA/SAS SSD aus und man kanns von vorne aus dem Gehäuse holen (im laufenden Betrieb), aber man hat eben die deutlich besser Performance.
 
Die MTBF kann man wohl getrost ignorieren. 2 Mio Stunden -> 220 Jahre.

Nachtrag

Wenn ich das durchrechne kosten (Hardwarkosten) in meinem Fall für einen voll ausgelasteten Server mit 512 GB RAM und ca. 4 TB SSD-Speicher in meinem Anwendungsfall die SSDs ca. 200-300 € / Jahr - unerheblich ob SATA oder NVMe. Ich lege eine geschätzte Schreiblast von 3 PB/Jahr zu Grunde.

Vielversprechend scheint mir bzgl. NVMe die PM1735 zu sein.
https://geizhals.de/samsung-ssd-pm1735-1-6tb-mzplj1t6hbjr-00007-a2213016.html
 
Last edited:
Ich lege eine geschätzte Schreiblast von 3 PB/Jahr zu Grunde.
Das halte ich um LÄÄÄÄÄNGEN für zu viel! Viel zu viel. Du wirst nichtmal ein halbes PB erreichen wäre meine Schätzung.

Für die PM1735 musst Du einen wertvollen PCIe 4.0 x8 Slot opfern, der eine deutlich höhere Bandbreite hat und hast dabei zu wenig Kapazität. Auf einen 4.0 x8 Slot bekommst Du zwei PCIe 4.0 NVMe SSDs (jede x4) unter, die mit voller Geschwindigkeit arbeiten können.
 
Ich habe jetzt nochmal kurz einen 30 Sekunden Test gemacht auf einem Server mit 256 GB, Festplatten und 50 VMs.

Da habe ich im Schnitt 35 MB/Sek Schreiblast (mit dstat gemessen, Das Monitoring bestätigt diese Daten auch). Das ergibt im Jahr 1 PB. Mit Doppelt soviel RAM habe ich da tendenziell eine doppelte Anzahl von VMs drauf + Sicherheitszuschlag: 3 PB.
 
Last edited:
Jegliche Speichergeräte werden ja nicht gleichmäßig beschrieben. Manche Zellen werden sehr stark beansprucht, während andere Zellen nur kaum bis gar nicht überschrieben werden. Wie kann man mit den Gegebenheiten und begrenzter Schreibkapazität überhaupt irgendwas garantieren?
Wear Leveling und Overprovisioning. Bei SSD sind 10-15% Overprovisioning je nach Leistungsklasse durchaus üblich.
Dies ergibt auch eine einfache Lösung um die maximale Schreiblast zu erhöhen - bei vielen Controller lässt sich der Overprovisioning-Raum nach belieben erhöhen was gleichzeitig dem wear-leveling und IO-Optimiser mehr Arbeitsfläche gibt.

Die Werte sind aus dem Hut gezaubert und generell eine Variation von <spezifizierten-schreibzyklen> * <kapazität> in der Erwartung dass jede Zelle exakt gleich oft beschrieben wird. Das stimmt aber generell in 2 Punkten nicht
- die Zellen sind nie exakt gleichmässig beschrieben
- der mediane Ausfall einer Zelle beim Schreiben bedeutet wegen overprovisioning noch lange nicht den Ausfall der SSD

Zur Illustration, dieser (etwas gelalerte) Artikel von heise wo alle Platten zwischen 2.5x und 60x der Herstellerangabe gelebt haben.
https://www.heise.de/news/SSD-Langzeittest-beendet-Exitus-bei-9-1-Petabyte-3755009.html

Deshalb; Generell sind SSD-Ausfälle über Smart gut vorhersehbar da die Ausfälle von Zellen generell nicht zeitgleich erfolgen. So kann man die Platten präventiv im Voraus tauschen. Lediglich desaströse Ausfälle wie Controller-KO sind nicht vorhersehbar, betreffen aber (bis auf Bugs wie vor einiger Zeit bei HPE) nicht alle Platten gleichzeitig.

TLDR; Monitoring und Backups sind imho wichtiger als "das ultimative Modell". Wenn deine Platten eh hotswappable sind, gibt es keinen Grund warum nicht eine für Server-Zwecke ausgelegte aber bezahlbare Platte dran glauben soll.

Anmerkung: Je nachdem wieviel Kontrolle du über die VM hast lässt sich die Festplattenaktivität generell über Faktoren wie noatime oder minimaler Swapiness noch optimisieren, gegebenfalls aber mit Impakt auf die Funktionen in der VM oder erhöhten RAM-Bedarf.

Bei Enterprise-Class Storages ist es übrigens genau so. Die Platten werden bei Ausfall getauscht, halten aber auch keine magische Ewigkeit. Kosten dafür laut Listenpreis aber gut in die magischen 5-stelligen Beträge - pro SSD versteht sich (für zuB 8TB sind rund 30k€ netto Listenpreis dran)
 
@d4f:
Begriffsklärung: Mit "Platte" ist für Dich hier auch eine SSD gemeint?

Wear Leveling und Overprovisioning.

D. h. dass Wear Leveling, was im Smart für die gesamte SSD angegeben ist, das hat die SSD intern auf Speicherzellebene protokolliert?

Dies ergibt auch eine einfache Lösung, um die maximale Schreiblast zu erhöhen - bei vielen Controller lässt sich der Overprovisioning-Raum nach belieben erhöhen was gleichzeitig dem wear-leveling und IO-Optimiser mehr Arbeitsfläche gibt.

D. h. wenn ein Hersteller eine SSD einmal als 1-DWPD und einmal als 3-DWPD Modell verkauft, zu unterschiedlichen Preisen und mit unterschiedlichen Modellbezeichnungen, dann ist da einfach wesentlich mehr Reservespeicherplatz verbaut?

TLDR; Monitoring und Backups sind imho wichtiger als "das ultimative Modell".

Monitoring und Backup ist mir sehr wichtig, weswegen ich neben der reinen Funktion auch natürlich auch Smart-Daten der SSDs überwache. Alles andere wäre russisches Roulette. Trotzdem möchte ich SSDs mit einem guten Preis-/Leistungsverhältnis.

Wenn deine Platten eh hotswappable sind, gibt es keinen Grund warum nicht eine für Server-Zwecke ausgelegte aber bezahlbare Platte dran glauben soll.

Meinst Du: "Der Ausfall einer SSD sollte verkraftbar sein!" ? Ja. Ist er im momentanen Setup: RAID10. Da grundsätzlich alles kaputt gehen kann, wird es auch irgendwann als reguläres Ereignis passieren, gerade bei Platten/SSDs.

Anmerkung: Je nachdem wieviel Kontrolle du über die VM hast lässt sich die Festplattenaktivität generell über Faktoren wie noatime oder minimaler Swapiness noch optimisieren, gegebenfalls aber mit Impakt auf die Funktionen in der VM oder erhöhten RAM-Bedarf.

Danke. Werde ich mal prüfen. Ich schaue mir auch mal die I/O der einzelnen virtuellen Systeme an. Vielleicht gibt's da schwarze Schafe.
 
Last edited:
Wear Leveling und Overprovisioning.
D. h. dass Wear Leveling, was im Smart für die gesamte SSD angegeben ist, das hat die SSD intern auf Speicherzellebene protokolliert?

Wear-Leveling ist doch anders, als ich mir das konkret vorgestellt habe. Ich antworte mir zur allgemeinen Information mal selbst.

Dynamisches Wear-Leveling

Beim Löschen von Daten werden intern Zähler für die betreffende Speicherzelle erhöht. Beim Neuschreiben wird immer die freie Speicherzelle mit dem niedrigsten Lösch-Zähler beschrieben. Nachteil der Methode ist, dass hier nur freie Blöcke berücksichtigt werden. Benutzte Datenblöcke, die sich kaum oder nie ändern, können hier nicht ausgenutzt werden.

Statisches Wear-Leveling

Datenblöcke werden regelmässig umkopiert, so dass Blöcke mit geringer Änderungshäufigkeit auf stark genutzte Blöcke umkopiert werden. Die Schreibmenge steigt dadurch an, aber auch die Lebensdauer, weil die Speicherzellenlebensdauer aller Zellen insgesamt besser ausgenutzt wird.

Ich meine, dass ich da hier und da auch schon Threads in Foren gelesen habe, wo seltsamerweise viel Aktivität auf SSDs bemerkt wurde, obwohl keine Nutz-Aktivität im System war. Das wäre dann ja besagtes statisches Wear-Leveling? Eigentlich will man ja nicht, dass irgendwelche SSDs von selbst anfangen unkontrolliert Daten umkopieren. Das möchte man ja eigentlich selber definieren gemäß der eigenen Zeiten, in denen Performance benötigt wird und auch dann, wenn das nicht benötigt wird.

Global Wear Leveling

Während die beiden vorgenannten Verfahren lokal auf der Ebene von Speicherchips arbeiten, gleicht das globale Wear Levelling unter Verwendung beider Verfahren die Abnutzung auch über mehrere Chips ab, so dass die Abnutzung insgesamt gleichmäßig geschieht.

Gedanken

Wenn ich das so richtig sehe, dann kann man - wenn man wüsste, dass eine SSD nur dynamisches Wear-Leveling einsetzt - die SSD regelmässig sichern, löschen und wieder mit der Sicherung befüllen, weil dann die am ansonsten ungenutzten Zellen auch tatsächlich besser genutzt werden. Wenn die SSD allerdings fast voll ist, dann ist das nur ein Glücksspiel, ob das tatsächlich etwas bringt, weil man nicht weiss, ob die hauptsächlich statischen Daten nicht wieder genauso auf den wenig beschriebenen Blöcken landen. Ein Glücksspiel mit den Kosten zusätzlicher Schreibbelastung für das Gerät.

https://www.ontrack.com/de-de/blog/wear-leveling-was-ist-das
https://en.wikipedia.org/wiki/Wear_leveling
 
Last edited:
Begriffsklärung: Mit "Platte" ist für Dich hier auch eine SSD gemeint?
Ja - korrekter wäre Datenträger gewesen.

was im Smart für die gesamte SSD angegeben ist, das hat die SSD intern auf Speicherzellebene protokolliert?
Ja, der Wear-Leveling Algorithmus trackt die Zyklen der Blöcke. Ob alle Blöcke einzeln überwacht werden oder eine Gruppierung erfolgen kann ich dir nicht sagen und hängt evtl von Hersteller und Controller ab. Multi-Level Zellen führen oft übrigens einen Refresh zusätzlich durch und kopieren inaktive Datensätze regelmässig zwischen Blöcken hin und her um zu verhindern dass durch Degradation der Spannungen die Auslesezeit extrem hoch wird - war ein Problem früherer MLC SSD's von Samsung.
Der Controller errechnet aus der Anzahl Overprovisioning-Blöcke und der errechneten Degradation der Zellen dann einen Gesundheitszustand den er als Smart-Wert ausgibt. Was er genau aussagt und wie optimistisch der Wert ist hängt dabei sehr stark vom Hersteller ab.

D. h. wenn ein Hersteller eine SSD einmal als 1-DWPD und einmal als 3-DWPD Modell verkauft, zu unterschiedlichen Preisen und mit unterschiedlichen Modellbezeichnungen, dann ist da einfach wesentlich mehr Reservespeicherplatz verbaut?
Grob gesagt ist das oft wahr. Man kann es daran erraten dass die Consumer-Serie zB 4TiB Speicher feilhält, die ähnliche Pro-Serie aber nur 3.5TiB.
Natürlich ist das nicht unbedingt der einzige Unterschied - von Chip Binning (höchste Qualitätsstufe für Enterprise) bis zu mehr RAM auf den Controller, schnellere Controller oder schlicht dass statt zB 2 grossen dann 4 kleine Speicherchips aufgelöstet sind gibt es viel Potentiel für Variation.

Trotzdem möchte ich SSDs mit einem guten Preis-/Leistungsverhältnis.
Genau :) Vergiss nicht dass in Zukunft aktuelle SSD-Grössen viel günstiger sein werden. Falls die SSD in 1-2 Jahren *eventuell* ersetzt werden muss ist das günstiger als jetzt eine sehr teure zu wählen die erst in 4 Jahren ersetzt werden muss. In jedem Fall würde ich die Platten nicht bei den ersten Anzeichen von Degradation austauschen. SSD's halten brutale Lasten viel besser aus als die reinen Datasheets sagen - der Hersteller will es nur nicht für bspw 90% seiner SSD auch garantieren müssen.

Da grundsätzlich alles kaputt gehen kann, wird es auch irgendwann als reguläres Ereignis passieren, gerade bei Platten/SSDs
Genau, hängt nur von der Anzahl an Platten ab. Auf grösseren Storage-Systemen ist der Ausfall von Datenträger "business as usual" und mit entsprechend vielen hot-spares, Reservespeicher über alle Datenträger oder Redundanzkopien (je nach Hersteller und Logik) automatisch abgefedert. Natürlich können auch 2 SSD gleichzeitig ausfallen, hier wäre aber ein Stromereignis oder Controller-Bug die wahrscheinlichste Ursache. Dafür hat man dann die Backups ;)

Ich schaue mir auch mal die I/O der einzelnen virtuellen Systeme an. Vielleicht gibt's da schwarze Schafe.
Es gibt einen sehr grauen Mittelweg zwischen schwarze Schafe und weisse Weste :)
Beispiel; deine VM swappt selten benutzte Blöcke auf die SSD aus. Um diesen Swap zu kompensieren kann es gut sein dass die VM dann 10-20% mehr RAM bräuchte, oder du verbrauchst etwas SSD-Lebenszeit. Solange das Paging sich im Rahmen hält ist generell SSD-Ersatz deutlich billiger als ECC-RAM... Alternativ kannst du für solche Aktivitäten wie Swap oder tmp auch dedizierte Laufwerke vorsehen welche rein zum Schutz der Daten-Speichermeiden getrennt sind, billiger oder simpler wird es wohl kaum.

wenn man wüsste, dass eine SSD nur dynamisches Wear-Leveling einsetzt - die SSD regelmässig sichern, löschen und wieder mit der Sicherung befüllen
Mir sind keine aktuellen Controller bekannt die nur Schreib-WearLevelling beherrschen. Potentiell findet man diese noch in den 20€-Aliexpress SSD aber diese haben generell eh nicht mal RAM am Controller und sind damit technisch eher glorifizierte USB-Sticks mit Sata-Anschluss.

Wenn die SSD allerdings fast voll ist, dann ist das nur ein Glücksspiel, ob das tatsächlich etwas bringt, weil man nicht weiss, ob die hauptsächlich statischen Daten nicht wieder genauso auf den wenig beschriebenen Blöcken landen
Nach deiner eigenen Beschreibung werden selten benutzte Daten (also Blöcke mit geringem EraseZyklus-Delta auf X Betriebsstunden ) auf Blöcke mit hohem Erasezyklus-Delta umkopiert. Dadurch wird sichergestellt dass eine Umverteilung erfolgt, allerdings kann eine SSD ebenfalls nicht hellsehen und sich irren. Genau wie CPU Jump-Predications ist es aber wohl oft genug richtig dass es funktioniert.

Neben Block-Ersatz ist aber Overprovisioning genau dazu da um Datenspeicherung auch auf vollen Medien effizient zu gestalten. Nicht nur Wear-Levelling sondern auch Optimierung muss ständig erfolgen. Wenn Daten discarded werden, entfernt die SSD diese oft nicht real sondern merkt es nur im Controller vor - dies führt zu Fragmentation von realen Daten und verfallenen Daten. Im Hintergrund werden diese Daten dann oft auf neue Blöcke umkopiert und gruppiert um neue freie Blöcke zu schaffen; dies ist notwendig um die Schreibperformance hoch zu halten da der Erase-Zyklus einer Zelle am zeitintensivsten ist. Dank Overprovisioning kann die SSD die für deinen Server nicht adressierbaren Blöcke sowohl zum Wear-leveling als auch zum Umgehen der Notwendigkeit dieser Erase-Gruppierung benutzen.

Anders gesagt: Der Controller benutzt Overprovisioning-Blöcke nicht nur wenn ein anderer Block "ausgelaugt" ist und beim beschreiben ausfällt; sie werden konstant mitbenutzt. Die Controllerlogik ist simpel; solange Overprovisioning möglich ist und ein Blöck fällt beim Schreiben aus, kein Problem - als tot markieren und weiter im Text. Falls keine Blöcke mehr da sind, schalten die Controller generell auf Read-only Modus.
Was zum vorzeitigen Tot einer SSD führen kann ist hingegen ein Lesefehler. Diese sind bei NAND-Speicher aber sehr selten aufgrund der internen Fehlerkorrekturlogik und dem Funktionsprinzip einer SSD; Kondensatoren fallen generell beim Laden und nicht Halten einer Ladung aus.
 
Super Beiträge, danke. Auch wieder was gelernt.

Ein weiterer Aspekt bei Flash Speichern ist der Speichertyp (der auch in das oben genannte reinspielt):
SLC (1 Bit pro Zelle), MLC (2 Bit pro Zelle), TLC (3 Bit pro Zelle), QLC (4 Bit pro Zelle)

Je weniger Bits pro Zelle gespeichert werden, umso länger hält der Chip. Daher sind die Highest Endurance Flash Speicher auch klein und haben SLC. So gibt es z.B. USB Sticks mit 4 oder 8GB, die oftmals auch nicht besonders schnell sind und die 80, 90 oder über 100€ kosten. Dafür kommen sie aber dann mit SLC oder MLC daher und haben damit eine um Größenordnungen größere TBW und damit Endurance.

Beispiele:
https://geizhals.de/intel-ssd-dc-p3...ssdpe2mx020t710-a1491600.html?hloc=at&hloc=de hat komplett MLC und 2,49 PBW ist also auf Endurance ausgelegt.
https://geizhals.de/samsung-ssd-980-pro-2tb-mz-v8p2t0bw-a2454607.html hat insgesamt TLC und einen SLC Cache, ist damit performanter, hat aber nur 1,3 PBW (man könnte behaupten wegen dem TLC).
 
Ich habe im ersten Beitrag mal die Solidigm SSD D3-S4610 ergänzt. Solidigm ist die Firma, die nach Verkauf der SSD-Sparte von Intel an SK Hynix gegründet wurde. Also Solidigm-SSDs sind ehemalige Intel-SSDs und somit Solidigm das Lenovo der SSDs.
 
Last edited:
Back
Top