Installation von SQL Server RAID 10 vs RAID 5

10

Ich bin neu im Einrichten von SQL Servern und VMS. Mein Vorgänger verwendete Raid 5 für C Drive, in dem sich die SQL-Installation befand, und RAID 10 für Datenbankdateien und Datenbankprotokolle.

Ich habe mich gefragt, ob das richtig ist oder ob RAID 5 stattdessen für SQL-Datenbankdateien verwendet werden soll.

Irgendeine Hilfe?

Masa Rumi
quelle
2
Vielleicht kann dies helfen dba.stackexchange.com/questions/7773/…
Adoptilot
RAID 5 für C klingt nach Geldverschwendung. Wenn es sich um TempDB handelt, verschieben Sie es auf die separate RAID 10-Partition, wenn Sie können. Abgesehen davon bietet RAID 10, obwohl es teurer ist, eine bessere Leistung für relationale Systeme mit schweren WRITEs. Ob Ihr Fall dem entspricht, können wir nicht beurteilen, aber Sie können das messen.
SchmitzIT
2
Obwohl ich keine SQL Server-Person bin, kann ich wirklich sagen, dass RAID5 verrückt ist: dba.stackexchange.com/questions/12977/…
RolandoMySQLDBA
1
Es ist unmöglich, eine gezielte Antwort auf diese Frage ohne weitere Informationen zu geben. Wie ist Ihr Lese- / Schreibverhältnis? Was ist die typische Arbeitsbelastung? Wie gut ist der Caching-Mechanismus Ihres SAN und wie viel Cache ist vorhanden? Sind diese Daten geschäftskritisch oder sind es Archivdaten? Und weiter und weiter ...
Jon Seigel

Antworten:

18

Ich habe eine Reihe von TCP-C-Tests mit mehreren gängigen RAID-Levels durchgeführt und war überrascht, dass RAID5 in einem schreibintensiven Szenario mehr als dreimal langsamer war als RAID10 (um genau zu sein 319% langsamer). Ihr Kilometerstand kann je nach dem tatsächlichen Verhältnis von Lese- und Schreibvorgängen in Ihren Szenarien variieren.

-Kev

Kevin Edward Kline
quelle
4
+1 hey, willkommen bei dba.SE, Kev! Erholen Sie sich immer noch von Großbritannien?
Aaron Bertrand
1
+1 aber ... Überraschung? Zugegeben, das von Ihnen aufgezeichnete 3x über R10 ist schlechter als erwartet, aber das Ausmaß der RAID-Schreibstrafen gilt tendenziell für "typische" Workloads.
Mark Storey-Smith
2
Überraschung sollte für die Kühnheit von Speicheranbietern reserviert werden, die R6 drücken, sobald R5 als zum Scheitern verurteilt gilt :)
Mark Storey-Smith
13

Ich würde RAID 10 um mindestens eine Größenordnung bevorzugen, wenn Sie es sich leisten können. Die Schreibleistung ist sehr schwer zu erreichen, und obwohl die Leseleistung etwas geringer ist, ist dies nur ein Faktor in Fällen, in denen Ihr Speicher völlig unzureichend ist (da die meisten Lesevorgänge normalerweise nicht physisch sein sollten).

Obwohl etwas veraltet, hier ein großer Datensatz von Kendal Van Dyke, um dies zu belegen (diese Links sind das Intro und die Zusammenfassung; der erstere enthält Links zu allen Teilen):

http://www.kendalvandyke.com/2009/02/disk-performance-hands-on-series.html

http://www.kendalvandyke.com/2009/02/disk-performance-hands-on-series-recap.html

Aaron Bertrand
quelle
1
Ich stimme Aaron zu. Wir sind vor ungefähr einem Jahr von RAID5 zu RAID10 gewechselt und haben sowohl beim Schreiben als auch beim Lesen dramatische Verbesserungen festgestellt.
Avakharia
3

Ich bin nicht sicher, ob Sie SQL auf VM oder Physical einrichten. Wenn es sich um eine VM handelt, kann die Speicherentscheidung variieren, da sie vom VM-Host abhängt.

Ich empfehle, SQL nicht auf Laufwerk C zu installieren, sondern nur SQL für Betriebssystem und Betriebssystem zu verwenden. Es kann also klein sein, aber stellen Sie sicher, dass Sie das C-Laufwerk spiegeln, denn wenn das C-Laufwerk aufgibt, muss der gesamte Server neu erstellt werden.

Wie alle meinen, ist RAID 10 in Bezug auf E / A viel besser als RAID 5. Gleichzeitig funktioniert RAID 5 hervorragend bei der Indizierung, da es schneller als RAID 10 liest. RAID 10 ist gut für LOG und TEMP DB. In vielen Fällen auch DATA und INDEX. Wir verwenden die meiste Zeit RAID 10.

AbuTaareq
quelle
Wenn Sie IO sagen, ist dies hier nicht korrekt. IO gilt sowohl für Lesen als auch für Schreiben. Sie sollten spezifisch sein.
Enorl76
0

RAID-5 eignet sich hervorragend zum LESEN (io ist auf 3+ Festplatten aufgeteilt), aber nicht zum SCHREIBEN (muss die Parität über 3+ Festplatten berechnen).

RAID-10 eignet sich hervorragend zum LESEN und SCHREIBEN, verursacht jedoch höhere Hardwarekosten (4x Kosten).

Das auf RAID5 installierte Betriebssystem ist in Ordnung, aber die Hauptdatenbankdateien bleiben auf dem RAID-10.

Ironischerweise kann es ratsam sein, Ihre Daten in Data Warehousing zu verschieben, um ein RAID-5-Array zu verwenden, da Sie viel analysieren / lesen und viel weniger schreiben.

TempDB auf RAID-10 ist auch der beste Ansatz.

enorl76
quelle
0

Die Leistung ist wichtig und RAID 10 ist überlegen, wie andere bereits erwähnt haben. Was meiner Meinung nach wichtiger ist, sind die Hochverfügbarkeitseigenschaften des Arrays. RAID 5 kann nur 1 Festplattenfehler tolerieren. RAID 10 kann möglicherweise bis zur Hälfte der Festplatten verlieren und weiterhin funktionieren. Noch schlimmer ist die Leistung des Arrays, wenn eine Festplatte ausfällt. Obwohl Sie keine Daten verlieren, muss ein RAID 5 mit einer ausgefallenen Festplatte eine XOR-Operation für jeden gelesenen Sektor ausführen, um die Daten wiederherzustellen. Wenn Sie jemals einen Festplattenfehler auf einem RAID 5 in der Produktion auf einem ausgelasteten Array festgestellt haben, wissen Sie, dass dies praktisch nutzlos ist. Ich habe schon einige Male gesehen, wie Systeme in die Knie gezwungen wurden ... Vorsicht!

SQLRaptor
quelle