RAID5 vs. Raid10 Leistungsbenchmark MDADM

Insider Blog

Autor

Bernd Helm

Steckbrief

Veröffentlicht:

November 6, 2019

Kategorien:

Das bewegt uns

Tags:

SSD

Kommentar und Untersuchung der RAID-Leistung

RAID 5 vs. RAID10 wird seit Ewigkeiten diskutiert; es ist allgemein bekannt, dass RAID10 eine bessere Leistung bietet - aber wie viel, hängt von der tatsächlichen Implementierung, der Hardware und dem Anwendungsfall ab.

Ich habe gerade einen Server mit 4 x 16 TB Festplatten bekommen, alle nagelneu, und beschloss, ihn zu testen, um herauszufinden, ob der Leistungsgewinn von Raid 10 den geringeren nutzbaren Speicherplatz rechtfertigt. Wir planen, ihn als Backup-Server zu verwenden, so dass unsere Arbeitslast hauptsächlich aus sequentiellen Schreibvorgängen besteht.

Testmethodik

Alle Tests werden mit fio mit iodepth=32 direct=1 ioengine=libaio refill_buffers und einem Zeitlimit von 60 Sekunden ausgeführt. die sequentiellen Lese- und Schreibtests werden mit 1024k Blockgröße und 1 Prozess durchgeführt. Die zufälligen Lese-/Schreibtests mit 4k Blockgröße und 4 Prozessen. Für die Tests wird eine 30 GB große Partition am Anfang jeder Festplatte verwendet. Die Linux-Kernel-Version ist 5.10.

Einfache Festplattenleistung

Bevor ich mit den eigentlichen Tests beginne, möchte ich die Grundlinie der Leistung einer einzelnen Festplatte ermitteln und auch sicherstellen, dass alle Festplatten ähnlich arbeiten.

Hier sieht alles schön flach aus, so wie es sein sollte. Wir haben etwa 268 MB/s beim sequentiellen Lesen und Schreiben und eine zufällige IOPS-Leistung von 550 beim Lesen und 480 beim Schreiben.

Raid 5 vs Raid 10

Die sequentille Leseleistung zwischen RAID5 und RAID10 ist geringer als ich vermutet hätte. Das far2 Layout macht hier wirklich einen Unterschied.

Interessanterweise gibt es keinen großen Unterschied beim Zufallslesetest, was ich nicht erwartet hätte.

Das Rand Write Diagramm sieht dem Seq Write Diagramm sehr ähnlich. Der einzige Unterschied ist, dass das klassische raid10 besser mit zufälligen als mit sequentiellen Schreibvorgängen umgehen kann.

MDADM hat mehrere Implementierungen, wie das Raid intern arbeitet. Für raid10 habe ich die Layouts "near 2" und "far 2" getestet, wobei "near 2" der Standard ist. Aus der Doku:

Der Vorteil dieser (... Far 2) Anordnung besteht darin, dass MD sequentielle Lesevorgänge leicht auf die Geräte verteilen kann, was sie in Bezug auf die Geschwindigkeit mit RAID0 vergleichbar macht. Der Preis dafür ist, dass bei Schreibvorgängen mehr gesucht wird, was sie wesentlich langsamer macht.

Ja, dies ist in den Benchmark-Diagrammen zu sehen

Schlussfolgerungen

Aus meinen Tests geht hervor, dass der Unterschied in der Leseleistung vernachlässigbar ist. Beim Schreiben hat Raid10 einen großen Vorteil.

Für unseren Backup-Server verwenden wir Raid 5, da es 3x schneller ist als die 1GBit Netzwerkkarte des Servers und unsere Backup- oder Restore-Prozesse nicht ausbremst.

Wenn Sie einen kritischeren Anwendungsfall haben, rate ich Ihnen, Ihre eigenen Benchmarks durchzuführen, die Ihre Arbeitslast besser widerspiegeln. Besonders wenn Sie SSDs verwenden, können die Ergebnisse drastisch anders ausfallen.

Vorheriger Artikel
Für Entwickler, Für Shopbetreiber - Wir arbeiten nicht mit beliebigen Frameworks, Bibliotheken, Plugins und Programmiersprachen. Wir lieben es professionell. Software, die bei Helm & Walter entsteht, soll leistungsfähig und schlank sein. Hier unsere Favoriten: PHP (rekursives Akronym für PHP: Hypertext Preprocessor) ist eine weit verbreitete und für den …
June 27, 2017
Bernd Helm
Nächster Artikel
Wenn es darum geht, eine NVME-SSD für eine Softwareentwickler-Workstation zu kaufen, steht man vor der Wahl: eine billige oder eine teure zu kaufen. Bisher habe ich mich für die teureren entschieden, weil sie eine bessere Leistung und längere Lebensdauer versprachen - jetzt sehe ich, wie falsch ich lag...
April 16, 2020
Bernd Helm