Re: FreeBSD auf SSD

From: Oliver Fromme <olli(at)lurza.secnetix.de>
Date: Fri, 25 Feb 2011 11:40:36 +0100 (CET)

Marcus Franke wrote:
> Wenn ich allerdings Lese, dass eine Zelle nur 10k oder 100k
> Schreibzyklen durchhält,

Hier muss man übrigens aufpassen: Die aktuelle Generation
der MLC-NAND-Flashes im 35nm-Prozess schafft im Schnitt
nur noch 5k, die kommende Generation im 20nm-Prozess sogar
nur noch 3k (und natürlich tut den SLC-Flashes Schrumpfung
auch nicht gut, allerdings wirkt es sich dort nicht so
extrem aus). Laut Herstellern soll das durch großzügigere
Reservebereiche, Puffer-RAM, empfindlichere Leseschaltungen,
bessere ECC-Algorithmen und intelligentere Firmware wieder
ausgeglichen werden. Ob das wirklich stimmt, betrachte ich
zum jetzigen Zeitpunkt als reine Spekulation. Irgendwie
verdächtig finde ich auch, dass die Hersteller kaum mit
konkreten Daten zur Haltbarkeit herausrücken; auf deren
Webseiten ist das in der Regel sehr gut versteckt.

Das ist leider wie bei den Digitalkameras: Die Hersteller
pressen immer mehr Megapixel auf immer kleinere Sensoren,
und die Masse der Verbraucher kauft das Zeug auch, entweder
aus Unwissenheit (Mythos »mehr Megapixel = bessere Bilder«)
oder weil sie keine andere Wahl haben, da es im unteren
und mittleren preissegment einfach nichts anderes mehr
gibt.

Sorry, ich schweife ab ...

> würdet ihr dann z.B. eine SSD für den Einsatz als
> Datenbankpartition nehmen? Großes Storage mit Raid-
> (5 oder 6)?

Da muss man einfach mal nachrechnen. Anhand der Haltbar-
keit der SSD (Schreibzyklen) und der Kapazität kann man
ausrechnen, wieviele Daten man im Laufe ihres Lebens darauf
schreiben kann. Beispiel: Bei einer SSD mit 120 GB und
5k ergibt das 600 TB. Wenn Deine Datenbank im Schnitt
0,5 TB pro Tag schreibt, dann hält sie rund 3 Jahre. Wenn
Dir das zu knapp kalkuliert ist, oder wenn die Datenbank
deutlich mehr pro Tag schreibt, dann musst Du zu SLC-SSDs
greifen, dafür dann aber auch deutlich mehr Knete auf den
Tisch legen.

Ein RAID hat natürlich Einfluss auf die Schreibvorgänge.
Wenn Du ein RAID-5 mit fünf Platten hast, dann führt jede
Schreib-Operation zu Updates auf zwei der fünf Platten.
Das heißt, rein rechnerisch verlängert sich die Lebens-
dauer um 150%, wenn sich die Schreibzugriffe gleichmäßig
verteilen (was bei Datenbanken meistens der Fall ist).
Ähnlich ist es bei RAID-6.

Du solltest allerdings bedenken, dass die SSDs im RAID
bei gleichmäßiger Nutzung ungefähr zum gleichen Zeitpunkt
das Ende ihrer Lebensdauer erreichen. Eine Redundanz von
<n> hilft Dir nicht, wenn <n+1> Geräte ausfallen, bevor
Du das erste ersetzt hat. Diese Gefahr kann man durch
Hot-Spares mildern, und/oder indem man anfängt, nach und
nach SSDs auszutauschen, _bevor_ sie am errechneten Ende
ihrer Lebensdauer angekommen sind.

Auf jeden Fall sollte man ein Monitoring (SMART) durch-
führen und ein Auge auf die Entwicklung der Werte haben.

> Besser größere Platten, weil sie länger durchhalten?
> Haben die überhaupt mehr Reserve-Sektoren als die kleinen?

Das bleibt häufig ein Geheimnis der Hersteller. Angegeben
wird in der Regel nur die nutzbare Netto-Kapazität und
mehr oder weniger schwammige Aussagen zur Haltbarkeit.
Manchmal kann man auf anderen Sites, etwa in Testberichten
(z.B. bei heise), etwas zur Bruttokapazität nachlesen,
was die betreffenden Tester häufig auch nur dadurch in
Erfahrung gebracht haben, indem sie die SSD geöffnet und
die Art und Anzahl der Flash-Chips ermittelt haben. Aber
wieviel des zusätzlichen Platzes für Cache verwendet wird,
wieviel für Reserveblöcke, für Wear-Leveling, für Verwal-
tungsaufgaben, für Beschleunigungstechniken und anderes,
das bleibt meistens das Geheimnis der Firmware.

> Ich bin den Thread gerade noch mal durchgegangen und fühle
> mich irgendwie nicht gerade sicher, ob ich SSDs wirklich
> einsetzen wollte.

Kann ich verstehen. Das ist nicht unbedingt eine leichte
Entscheidung. Wie oben erläutert, würde ich erstmal
ausrechnen, ob es von der Haltbarkeit her überhaupt Sinn
ergäbe. Das geht natürlich nur, wenn man schon eine
solche Datenbank laufen hat, um zu messen, wieviel dort
im Schnitt geschrieben wird, oder wenn man es im voraus
halbwegs gut abschätzen kann.

Datenbanken haben typischerweise viel Random-Access.
Dort macht sich natürlich die Seek-Time, die bei SSDs
praktisch nicht vorhanden ist, dramatisch bemerkbar,
vor allem bei großen Datenbanken, bei denen das Working-
Set die Größe des Caches übersteigt. Wenn Du also bei
Deinen Datenbanken ein I/O-Nadelöhr hast, dann würdest
Du von SSDs mit hoher Wahrscheinlichkeit profitieren.
Wenn dagegen herkömmliche Festplatten die Last locker
wegstecken, lohnen sich SSDs eher nicht.

Und letztendlich spielt natürlich auch der Preis eine
Rolle, bzw. das zur Verfügung stehende Budget.

Langer Rede kurzer Sinn: Man kann die Frage leider nicht
pauschal beantworten. Wie gesagt, mache eine Schätzung
der Lebensdauer anhand der bekannten Daten, mach eine
Pro-Kontra-Strichliste (Performance, Handling, Platz, ...)
und erstelle Preiskalkulationen für die verschiedenen
Varianten, die in Frage kommen.

Gruß
   Olli

-- 
Oliver Fromme, secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing b. M.
Handelsregister: Registergericht Muenchen, HRA 74606,  Geschäftsfuehrung:
secnetix Verwaltungsgesellsch. mbH, Handelsregister: Registergericht Mün-
chen, HRB 125758,  Geschäftsführer: Maik Bachmann, Olaf Erb, Ralf Gebhart
FreeBSD-Dienstleistungen, -Produkte und mehr:  http://www.secnetix.de/bsd
"Software gets slower faster than hardware gets faster."
        -- Niklaus Wirth
To Unsubscribe: send mail to majordomo(at)de.FreeBSD.org
with "unsubscribe de-bsd-questions" in the body of the message
Received on Fri 25 Feb 2011 - 11:40:58 CET

search this site