Ich habe ein Notebook (Dell M6500, 16 GB RAM, I7-940M) mit RAID-Controller (Hardware-RAID-Controller). Im Moment habe ich zwei SATA-Festplatten in RAID 0 (Stripe) für beste Leistung.
Ich möchte SSDs (Samsung 840 Pro) kaufen.
Ist RAID 0 (Striping) mit zwei SSD-Datenträgern sinnvoll oder reicht nur ein Datenträger aus?
Also 1 SSD 512 GB (kein RAID) oder 2 SSD 256 GB (RAID 0 Streifen)?
Antworten:
Sie müssen die Frage richtig lesen.
Er fragt nach RAID0 STRIPE, nicht nach RAID1 MIRROR.
Meine Antwort: JA, Sie werden eine signifikante Geschwindigkeitsverbesserung haben.
Ref: http://staff.science.uva.nl/~delaat/rp/2009-2010/p30/presentation.pdf
Geschwindigkeit: Auf meinen Workstations wird Linux Mint mithilfe von Software-Raid (mdadm) ausgeführt, und ich führe 4 Laufwerke in einem Streifen mit XFS als Dateisystem aus. Sobald Sie auf einer solchen Workstation sitzen, möchten Sie mit EINEM Plattenlaufwerk nicht mehr in die alten Zeiten zurückkehren.
Sichern Sie Ihre Workstation täglich mit einer inkrementellen Sicherung, wöchentlich eine vollständige Sicherung für den Fall, dass eine SSD abstürzt.
Ihre Geschwindigkeit ist großartig, aber wenn EINE SSD abstürzt, verlieren Sie viele Daten. Sie werden also gewarnt.
Sichern und verwenden Sie die Cloud, um zusätzliche Dateien zu speichern.
Speicher: Auf meinem NAS wird FreeBSD ZFS ZRAID2 ausschließlich für die Speicherung mit 2 + 4 Laufwerken mit 3 TB ausgeführt. Ich habe also 12 TB und 2 Laufwerke mit 3 TB bieten Redundanz, sodass ich 2 Laufwerke gleichzeitig verlieren kann, ohne Daten zu verlieren. Mein NAS läuft auf normalen Laufwerken.
ZFS ist derzeit das beste Dateisystem für Festplatten, sicher für die Speicherung. Sie können nach FreeBSD oder einer dedizierten NAS-Softwarelösung wie FreeNAS, ZFSguru, NexentaStor ... suchen. Ich habe mich für ZFSguru entschieden, weil ich das FreeBSD-System gerne schwächen möchte. Ich verwende darauf iSCSI- und SMB / NFS-Freigaben.
Server:
Mein Favorit ist die Verwendung von Platten für ZFS und die Verwendung von SSD für ZIL in ZFS. Aber es ist dunkle Kunst.
ANMERKUNG 1:
Vermeiden Sie Hardware-Raids im Fehlerfall. Sie müssen wieder dieselbe Hardware haben. Verwenden Sie nicht die billigen RAID-Controller auf den Kunden-Motherboards. Versuchen Sie, Software-Raids zu verwenden, die vom Betriebssystem unterstützt werden, nur um die Wiederherstellung zu ermöglichen, da das Betriebssystem mehr Möglichkeiten hat, mit Raids umzugehen, als die beschissenste Raid-Software in diesen Hardware-Controllern.
ANMERKUNG 2:
Vermeiden Sie bei der Verwendung von ZFS unbedingt Hardware-RAID-Controller. Suchen Sie nach Motherboards mit genügend SATA-Anschlüssen, um Ihre Laufwerke anzuschließen. Es gibt dedizierte Controller ohne RAID-Funktionalität.
Richten Sie den Raid mit ZFS ein
NOTIZ 3:
SSDs werden nach 4 Festplatten nicht mehr skaliert HDDs werden nach 5 Festplatten weiter skaliert
HINWEIS 4:
Es gibt verschiedene Arten von SSDs
Sie haben SSD SLC und MLC. Die ersten sind die teuersten, aber die schnellsten und die besten für schwere Lese- / Schreibvorgänge.
quelle
Ja, die Schreibgeschwindigkeiten erhöhen sich. Ich führe einen RAID 0 auf 4 SSDs mit jeweils 30 GB aus. Meine Schreibgeschwindigkeit beträgt 600 Mbit / s. Ich werde bald ein Upgrade auf 2x 256 SATA3 SSD Raid 0-Laufwerke durchführen. Mit nur einer Festplatte, die mit 300 Mbit / s ausgeführt wird, liegt es an Ihnen Die SATA-Bewertung Wenn Sie 2 SATA 3-SSDs haben, können Sie auch 900 Mbit / s schreiben, dies erfordert jedoch auch die Einrichtung eines Raid 0. Es liegt also ganz bei Ihnen, ob Sie lieber Leistung haben möchten. Ja, es ist schneller und Sie werden alle Daten verlieren, aber wenn es nur für Spiele ist, können Sie es in weniger als einem Tag neu erstellen. Auch wenn Ihre Optionen entweder 2x 256 GB SSDs oder 1x 512 SSD erhalten würden, würde ich mit der 2x 256 SSD für viel schnellere Schreibgeschwindigkeiten gehen.
quelle
Hier ist der Test, den ich gemacht habe. Sie können selbst entscheiden, ob Sie das Ergebnis betrachten möchten.
Umwelt
Prüfung
Meine Workstation enthält.
cp
undtime
Befehletime
Befehl sind, verwenden Sie "Echtzeit", um jeden Fall zu vergleichenHier ist die Dateikopierzeit für jede Situation
RAID0 bis RAID0
RAID0 auf Festplatte
Festplatte zu Festplatte
Festplatte zu SSD
Hinweis: Auf meiner Workstation verwende ich dieses RAIDO-Laufwerk, um ein 150 GB großes C ++ / C # -Projekt zu kompilieren. Dies hat mir aufgrund des RAID0-Setups mehr als zwei Stunden gespart. Wenn Sie wissen möchten, wie Sie RAID0 einrichten, lesen Sie den Blog-Beitrag, den ich geschrieben habe: http://codeketchup.blogspot.sg/2016/03/how-to-setup-raid-0-with-ssd.html
quelle
Während Sie RAID 0 zwei SSDs können und in einigen Szenarien viel schnellere Lese- / Schreibgeschwindigkeiten sehen (siehe diesen Test von TechReport für ein extremes Beispiel mit 4 Laufwerken in RAID 0). Eine einzelne SSD bietet eine Leistung, die gut genug ist, dass ich sie nicht empfehlen würde. Zwei Laufwerke in RAID 0 bedeuten, dass Sie alle Ihre Daten verlieren, wenn eines davon ausfällt.
TechReport hat auch diesen Test, in dem die SSD-Skalierung über eine Laufwerksfamilie hinweg verglichen wird, um das Leistungsdelta mit größeren Laufwerken zu vergleichen.
Ein großer Teil der Antwort auf diese Frage hängt von Ihrer beabsichtigten Verwendung ab. Entwicklung, Fotobearbeitung, Spiele usw. können unterschiedliche Speicherzugriffsmuster aufweisen. Am besten lesen Sie Bewertungen auf den besseren Tech-Websites.
quelle
Mein Arbeitscomputer ist ein Dell M6500 und ich verwende eine Corsair 240 GB SSD. Der M6500 verfügt über eine SATA 2-Schnittstelle, sodass Sie nicht die volle Geschwindigkeit der SATA 3-Laufwerke erhalten. Ich werde sagen, dass es viel schneller ist als mein PC, ein M6400 mit 2 160-GB-Festplatten in einem RAID 0-Streifen. Ich glaube, Sie würden mit 2 SSDs einen Schub sehen, aber nicht doppelt so viel wie mit nur 1 SSD.
quelle
Sie sind auf der Suche nach Geschwindigkeit und kümmern sich nicht um Redundanz. Also werde ich das einfach beantworten. Raid 0 bietet möglicherweise geringfügige Verbesserungen. Wenn sich die Kosten für 2 256-Gbit-SSDs nicht von denen für 1 512-Gbit-SSD unterscheiden, sollten Sie sich dafür entscheiden.
quelle
Das fragt nach einer Meinung, aber:
Es ist sinnvoll, wenn Ihr Ziel die reine Leistung für ein einzelnes Volume ist.
Wenn macht keinen Sinn, wenn:
All dies setzt voraus, dass "mit einer genug" Sie "eine SSD (nicht in einem Streifen) genug" meinen. Das Mischen einer SSD und einer Festplatte sollte technisch funktionieren, aber je nach RAID kann dies das Schlimmste aus beiden Welten ergeben.
quelle
2X oder Nx können nur beschleunigt werden, wenn Sie den Bus nicht überlastet haben. Einige Motherboards teilen sich die Bandbreite entlang aller Sata-Ports, während andere es Ihnen ermöglichen, diese Bandbreite an jedem Port gleichzeitig zu erreichen.
Und denken Sie daran ... die Lesegeschwindigkeit ist nicht die gleiche wie die Schreibgeschwindigkeit ... normalerweise ist die Schreibgeschwindigkeit viel langsamer als die Lesegeschwindigkeit (versuchen Sie, schnell auf einer SSD 32 GB in Folge zu schreiben). Die meisten von ihnen werden einige Megabyte und dann sehr schnell sein Dropdown auf 25 MB / s oder weniger (sie verwenden einen internen Cache mit einem DDR3-Speicher in der SSD, wenn sie gefüllt sind, können sie keine Daten mit einer so hohen Geschwindigkeit weiter empfangen, sodass Schreibvorgänge langsamer werden).
Manchmal müssen Sie Benchmarks durchführen, wenn Sie einen schnellen Start wünschen (Lesen ist wichtig, Schreiben nicht so viel), wenn Sie große Dateien mit zufälligen Daten schreiben möchten, stellen Sie sicher, dass Ihr Benchmark mindestens ein paar GiB so schnell wie möglich schreibt, einige SSDs haben 1 oder 2 GiB RAM in der SSD für den Schreibcache ... füllen Sie ihn also besser aus, um den Benchmark durchzuführen.
Über IOPs: Dies ist das Wichtigste bei JEDER Art von Speicher (USB, Sticks, Plattenteller, SSD usw.), z. B. für kleine Dateien oder besser gesagt, für kleine Datenblöcke, die geschrieben / gelesen werden, (für SSD) ) es sagt mehr als ... Wert.
Beantworten Sie nun Ihre Frage: - Wenn der 'große' weniger als 2x IOPs als einer der 'kleinen' hat, kaufen Sie nicht den 'großen' ... kaufen Sie, was Ihnen die 'maximalen' IOPs gibt
Glauben Sie mir, IOPs sind viel wichtiger als Lese- / Schreibgeschwindigkeiten, die in "Spezifikationen" angegeben sind ... weil: - Sie sagen, der höchste erreichte Wert (für die Schreibgeschwindigkeit verwenden sie internen RAM auf der SSD und schreiben nicht genügend Daten zum Füllen es ... und einige verwenden auch PC-RAM als Schreibcache, so dass sie sagen, einige GiB / s Schreibgeschwindigkeit, solche Geschwindigkeit ist Ihr PC-Haupt-RAM, Daten sind noch nicht bündig auf der SSD)
JETZT, für alle, die sagen, Raid0 wird dich verlieren ...
Wenn Sie dies tun, geht nichts verloren: 1.- Verwenden Sie RAID 0 für das Betriebssystem. 2.- Erstellen Sie einen Klon des Betriebssystems auf einem USB-Gehäuse (besser, wenn USB 3.1 Gen 2 ... 10Gib / s).
Wenn eine Festplatte ausfällt, nehmen Sie die ausgefallene heraus, legen eine neue ein, stellen den Klon wieder her und in wenigen Minuten startet das System erneut.
So machen Sie diesen Start auch nach einem oder mehreren Festplatten auf einem RAID 0-Chip schnell: 1.- Nachdem Sie das gewünschte Betriebssystem haben, erstellen Sie einen Klon auf USB 2.- Nehmen Sie zwei oder mehr Festplatten in RAID 0 heraus und an einem sicheren Ort aufbewahren 3.- Setzen Sie neue auf den PC und stellen Sie den Klon wieder her
Wenn eine Festplatte stirbt, können Sie die anderen ablegen und starten ... nur ein paar Sekunden, um den Austausch und Neustart durchzuführen ... und dann ein weiteres Set erstellen, um es an einem sicheren Ort abzulegen.
Dies funktioniert für jede Art von Linux-Software-RAID ... Platter-Festplatten und auch SSD.
Die Kosten: Haben Sie das Doppelte der Festplatten ... einige funktionieren, andere sind mit den Daten vorbereitet und bereit, von ihnen zu booten.
Jetzt für Daten (nicht System) in RAID 0 und eine Null, die bei einem Fehler verloren geht (mit Ausnahme von Änderungen, die vor dem Backup vorgenommen wurden): 1.- Sichern Sie nach jedem Schreiben die Änderungen auf externen Medien (ich persönlich verwende 5 verschiedene Kopien in verschiedenen Medien , SSD, Plattenteller-Festplatte, DVD, Speicherkarten und USB-Sticks) 2.- Stellen Sie vor dem Ausschalten des Systems sicher, dass Ihre Backups synchron sind
Denken Sie daran, dass RAID 0 für die Geschwindigkeit geeignet ist, während Sie es verwenden ... aber jeder Fehler und alles, was NUR dort ist, geht verloren (der Schlüssel ist dieses Wort: NUR).
Denken Sie, Sie haben einen Klon des Systems auf einem externen USB-Gehäuse ... das System zu verlieren ist kein Problem, starten Sie ein Live Linux und stellen Sie den Klon auf derselben Festplatte (Fall-Softwarefehler) oder auf neuen Diks (Fall-Hardware-Fehler) wieder her.
Denken Sie, Sie haben alle Ihre Daten auf einem BackUP (mehr als eine Kopie). Das Verlieren von Daten innerhalb der Verfolgung ist kein Problem. Kopieren Sie einfach die Daten aus dem BackUP zurück, nachdem Sie die Ursache des Fehlers behoben haben (Datenträger ersetzen usw.).
Denken Sie jetzt, Sie möchten auch nicht auf ein solches "Zurückkopieren" warten ... dies kann erreicht werden, indem Sie einen zweiten Satz Festplatten in einem gebrauchsfertigen Zustand haben.
Und schließlich denken Sie weiter ... nach einem Fehler führen Sie während der Arbeit eine Hintergrundaufgabe aus, um einen solchen zweiten Satz von "gebrauchsfertig" neu zu erstellen.
Wenn Sie diese Gewohnheiten übernehmen ... werden Sie Linux RAID 0 nie wieder verwenden ...
... außer wenn Sie viel RAM haben und ZFS verwenden können.
ZFS-Hauptvorteile: 1.- Prüfsummen beim Lesen / Schreiben, damit Bits-Änderungen im ausgeschalteten Zustand erkannt werden können. 2.- Verfügt über einen Parameter, mit dem Sie mehr als eine Kopie jeder gewünschten Datei oder jedes gewünschten Ordners (mit und ohne RAIDZ-Level) haben können ) 3.- Wenn Sie es sich leisten können, 50% oder mehr des Speicherplatzes zu verlieren, können Sie ZFS-Kopien = N auf nur einer Festplatte (Notebook) verwenden. Falls einige Daten im Aus-Modus beschädigt werden, kann ZFS weiterhin korrekt lesen (es) speichert mehrere Kopien auf derselben Festplatte) ... Sie können es auch parallel zu den RAIDZ-Levels von ZFS verwenden. Dadurch wird die Redundanz erhöht.
ZFS-Kopien = N sind wie die alte RAID 1-Stufe, jedoch mit Prüfsummen und automatischer Korrektur, falls fehlerhafte Daten erkannt werden.
Warnung vor ZFS: Ein RAM-Bit-Fehler bei einigen ZFS-Teilen kann das gesamte ZFS ruinieren und alle diese Daten verlieren. Verwenden Sie also niemals ein und nur ein ZFS zum Speichern von Daten. Haben Sie ein Backup von allen und haben Sie es immer.
quelle
Ich hatte nicht mit
mdadm
oder Hardware raid0 getestet, aber ich habe mit LVM Stripping getestet.Die kurze Antwort lautet: Die kombinierte Lesegeschwindigkeit ist niedriger als nur eine SSD-Lesespitze, wenn Sie kurze Streifen verwenden (für mehrere 4-KB-Streifen).
Es sieht aus wie eine Rennbedingung, es scheint, als würde LVM jeweils eine Blockanforderung an jede SSD senden, nicht parallel.
Wenn also die Zeit für die Verarbeitung der Anforderung länger ist als die Zeit, die die SSD zum Senden von Daten an den Arbeitsspeicher benötigt, senden 2 oder mehr SSDs keine Daten an den Arbeitsspeicher. Sie warten die meiste Zeit auf Befehle und verarbeiten solche Befehle.
Erst wenn ich anfange, große Streifengrößen zu setzen, steigt die kombinierte Lesegeschwindigkeit höher als bei einer einzelnen SSD, und ich spreche von 1-MB-Streifen. Die Verstärkung war mit 2xSSD etwa 1,3- bis 1,5-mal schneller als mit nur einer.
Überprüfen Sie also zunächst, wie gut Ihre SSD in 4 KB mit einer Warteschlangentiefe von 1 ist. Wenn sie wirklich gut ist, versuchen Sie nicht, sie mit kleinen Streifengrößen zu entfernen. Besser, Sie entfernen sie überhaupt nicht.
Ich hatte auch in zwei parallelen Prozessen getestet, beide
dd
Befehle, um zu sehen, ob das Lesen von beiden gleichzeitig die Geschwindigkeit von ihnen verringert, die Reduzierung ist minimal.Es ist also viel besser, sie für verschiedene Zwecke (OS / APPS) zu verwenden, als sie zu streifen.
Wenn Festplatten keine SSD, sondern rotierende sind, macht das Striping einen enormen Gewinn.
Es ist irgendwie so, dass das Betriebssystem eine Anfrage gleichzeitig an eine Festplatte sendet, und während das Betriebssystem die Anforderung an die nächste Festplatte im Stripping-Set sendet, hat die vorherige alle Daten in dieser Zeit an den RAM gesendet, muss also warten, nichts tun, warten für die nächste Anfrage.
Daher denke ich, dass der LVM-Streifen schlecht implementiert ist und durch Senden einer Anforderungswarteschlange mit Streifen verbessert werden kann, sodass jede SSD bei jeder Anforderung mehr Daten an den RAM senden kann.
Die mathematische Gleichung lautet: Zeit zum Senden von Daten im Vergleich zur Zeit zum Senden von Daten an RAM.
Wenn der erste Teil größer als der zweite Teil der Gleichung ist, geht das Strippen nur langsamer als nur die Verwendung eines. Um eine wirklich große Verbesserung zu erzielen, muss der zweite Teil der Gleichung viel größer sein als der erste Teil.
Bei einer guten SSD ist der erste Teil (auf LVM) größer als der zweite Teil. Bei einer Festplatte mit guter Rotation ist der erste Teil (auf LVM) viel kleiner als der zweite Teil.
Das basiert auf meinen eigenen Tests, die mit LVM2 auf zwei schnellen SSDs (> 35Mib / S auf 4KiB mit einer Warteschlangentiefe von eins) durchgeführt wurden. Ich habe mit Streifen von 4KiB bis zu 1MiB getestet. Bis zu einer Streifengröße von 128 KB war die kombinierte Geschwindigkeit niedriger als bei Verwendung nur einer SSD. Die kombinierte Geschwindigkeit ist dann etwas größer, bis 1 MB das Maximum war (1,3-mal schneller mit 2 SSDs als mit nur einer).
Also nur ein Gewinn von 30%, während ich, wenn ich sie parallel für verschiedene Aufgaben verwende (kein Striping), einen Gewinn von 96% habe (ich kann jeweils 98% Lesegeschwindigkeit gleichzeitig verwenden).
In Zahlen ausgedrückt, ein linearer SSD-Lesevorgang mit 386 MB / s, ein linearer 2xSSD-LVM2-4-KB-Streifen-Lesevorgang mit 186 MB / s. Dies ist also viel, viel langsamer als die Verwendung nur einer SSD. 2xSSD LVM2 1MiB-Streifen linear mit 487MiB / s gelesen; lineares Ablesen von beiden gleichzeitig (nicht abgestreift) in unterschiedlichen Prozessen Ich erhalte 374MiB / s von jedem, also kombiniert ist es 2x374 = 738MiB / s
Meine Schlussfolgerung basierend auf den Testergebnissen lautet also: Mit LVM2 ist der Gewinn bei großen Streifengrößen (1 MB) sehr gering und bei normalen Streifengrößen (4 KB bis 64 KB) ein großer Verlust.
Bitte beachten Sie, dass ich mit einem
dd
Befehl vom Massengerät (/ dev / sda, / dev / sdb) und vom logischenstatus=progress
Massenvolumen (/ dev / mapper / test-test) mit und einer Blockgröße von 1 MB mit einer Anzahl von 10000 gelesen habe Ich las 10GiB; und ich mache nach jedem Test einen Neustart, um Caches usw. vollständig zu vermeiden.Ich verwende die Live-Linux-Version von SystemRescueCD, um Unterschiede beim Neustart zu vermeiden, z. B. beim Booten von einer unveränderlichen Festplatte (schreibgeschützte Medien).
Ich hoffe, dass ich eines Tages bekannt werde, Linux
mdadm
zu verwenden, um mit Software-Raid zu testen.quelle
Das grundlegende Benchmarking legt nahe, dass RAID 0 (Striping) den Durchsatz für SSD-Laufwerke erheblich verbessern kann.
Benchmark-Konfiguration
RAID 0 (Striping)
RAID 1 (Spiegelung)
Einzelne Festplatte
quelle
Ich denke, es ist eine schwer zu beantwortende Frage. Wenn Sie über einen Desktop-PC mit einem guten Hardware-RAID-Controller sprechen, erhalten Sie definitiv eine bessere Leistung. Bei einem Laptop, der Software-Raids durchführt, kann es vorkommen, dass Sie einen Engpass auf Ihrer CPU verursachen, der eine erhebliche Leistungssteigerung verhindert. Je nachdem, wie alt der Laptop ist, kann Ihre Leistung auch durch den SATA-Bus eingeschränkt sein, wenn SATA II ausgeführt wird, das von einer modernen SSD maximal genutzt werden kann. Ich vermute, Sie würden eine Leistungssteigerung erhalten, aber vielleicht nicht genug, um den Aufwand zu rechtfertigen. Sie werden es nicht wissen, wenn Sie es nicht testen.
quelle