Das Setup von S2D, das bis zu 2 Millionen IOPS an SQL FCI liefert

8

Wir sind dabei, Shared Storage Researching für ultraschnellen Speicher bereitzustellen, um Microsoft SQL Server Failover Cluster (FCI) zu implementieren. Soweit das Projekt geht, würden wir mit 500K IOPS für 8k Blöcke mit einem Muster von 70r / 30w beginnen. Aufgrund der wachsenden Erwartungen an den SQL Server möchten wir auch die Möglichkeit haben, die Leistung innerhalb eines Jahres auf etwa 2 Millionen IOPS (für dasselbe Muster) zu erhöhen.

Für den Zweck des Projekts werden wir einen 4-Knoten-Cluster von Microsoft Storage Spaces Direct (S2D) bereitstellen. Was die Hardware betrifft, haben wir bereits 2x Dell Rack Server R730xd mit 2x E5-2697 und 512 GB RAM und wir sind bereit, 2 weitere zu bekommen.

Für die Speicherung empfiehlt Microsoft die Verwendung von NVMe oder NVMe + SSD, um maximale Leistung ( Quelle ) zu erzielen . Daher sind Samsung-SSDs nach einigen Recherchen eine gute Wahl. https://www.starwindsoftware.com/blog/benchmarking-samsung-nvme-ssd-960-evo-m-2 http://www.storagereview.com/samsung_960_pro_m2_nvme_ssd_review

Das von uns berücksichtigte Setup lautet wie folgt: 1x Samsung 960 EVO NVMe + 4x Samsung PM863 SSD pro S2D-Host.

Kann die S2D-Implementierung mit Samsung 960 EVO NVMe und Samsung PM863 500.000 an SQL FCI liefern?

BEARBEITEN:

a) Hast du neulich nicht etwas Ähnliches gefragt? - Ich tat. Eine neue Frage wurde gestellt, da die erste Aufnahme nicht zum Thema gehörte. Thema und Körper werden gewechselt. Vorherige Frage wird gelöscht.

b) es handelt sich um Consumer-Laufwerke. - Bei der Frage geht es darum, das Setup von S2D zu finden, in dem beim Start 500.000 IOPS erforderlich sein könnten. Welches Setup würden Sie empfehlen?

c) Wie wollen Sie all diese verbinden? Mir ist kein Server mit 5 x M.2-Steckplätzen bekannt. Wir müssen dies wissen. Es darf nur 1 x M.2-Laufwerk pro Knoten verwendet werden. Ich habe das Setup des gemeinsam genutzten Speichers korrigiert: 1x Samsung 960 EVO NVMe + 4x Samsung PM863 SATA SSD pro S2D-Host.

d) Welche Art von IOPS (Größe und Typ)? - SQL FCI liest intensive Arbeitslast von 4k, 8k, 64k Blöcken. Der Lesebereich liegt zwischen 70 und 90% und der Schreibbereich zwischen 30 und 10%.

e) 500k bis 2M sind ein sehr großer Bereich von Anforderungsvarianzen - warum so ein großer Bereich? - Es wird erwartet, dass die Projektleistung im Sortierzeitraum erheblich zunimmt. Daher müssen wir bis zum und des ersten Jahres in der Lage sein, 4x Workload auf derselben Hardware auszuführen. Ein Jahr später werden wir dem Cluster vier weitere Hosts hinzufügen.

Wir sind Microsoft Shop, daher gibt es keine andere Option als Microsoft SQL Server 2016. Da Sie das Projekt möglicherweise nutzen, ist Redundanz und zusätzliche Verfügbarkeit erforderlich. Daher wird SQL Failover Cluster Intance neben S2D bereitgestellt.

Joshua Turnwell
quelle
2
a) Hast du neulich nicht etwas Ähnliches gefragt? b) es handelt sich um Consumer-Laufwerke, c) wie wollen Sie all diese verbinden? Mir ist kein Server mit 5 x M.2-Steckplätzen bekannt - wir müssen dies wissen, d) welche Art von IOPSs ( Größe und Typ)? e) 500k bis 2M sind ein sehr großer Bereich von Anforderungsvarianzen - warum so ein großer Bereich? f) Wir könnten viel mehr über Ihre Serverspezifikationen wissen - Details bitte.
Chopper3
1
@ Chopper3 Danke für den Kommentar. Ich habe Informationen hinzugefügt.
Joshua Turnwell
1
Das beantwortet eine dieser Fragen - was ist mit dem Rest?
Chopper3
1
@ Chopper3 Bitte überprüfen Sie die hinzugefügten Informationen. Was ist noch erforderlich?
Joshua Turnwell
1
Vielen Dank, immer noch keine Ahnung, wie Sie diese 5 x M.2-Laufwerke mit dem Server verbinden möchten, aber ich gebe es auf, erneut zu fragen. Eine letzte Frage - BRAUCHEN Sie dafür wirklich eine relationale Datenbank? Sie können es sehr gut tun, aber wenn Sie diese Frage an sich selbst stellen können und mit einer NoSQL-Engine, Couchbase oder MongoDB usw. davonkommen könnten, dann würden Sie es plötzlich sehr einfach finden, weit über 2 Millionen IOPS hinauszugehen. Der Grund, warum ich das alles frage, ist, dass Sie dies über MSSQL, S2D (daher WS2016) und über Consumer-SSD tun möchten - das ist alles sehr neu und ungetestet .... tbc
Chopper3

Antworten:

8

Es ist eine schlechte Idee, Consumer-SSDs in Ihren SDS-Bereitstellungen zu verwenden. VMware VSAN und Microsoft S2D gehen beide davon aus, dass Schreibvorgänge "atomar" sind, sodass sich ein vom Host bestätigter ACK tatsächlich im permanenten Speicher befindet. Consumer-SSDs haben keinen Stromausfallschutz, sodass sie möglicherweise Ihre Daten verlieren. Die Ausdauer beim Schreiben ist ebenfalls sehr unterschiedlich.

https://blogs.technet.microsoft.com/filecab/2016/11/18/dont-do-it-consumer-ssd/

https://blogs.vmware.com/vsphere/2013/12/virtual-san-hardware-guidance-part-1-solid-state-drives.html

http://www.yellow-bricks.com/2013/09/16/frequently-asked-questions-virtual-san-vsan/

Ich würde vorschlagen, bei einigen NVMe-Karten der Enterprise-Klasse zu bleiben.

BaronSamedi1958
quelle
5
Diese! Für den Fall, würde ich empfehlen , einen Blick auf Intel Unternehmen NVMe Karten wie P3700 - Modell zu nehmen: storagereview.com/intel_ssd_dc_p3700_25_nvme_ssd_review Hier ist es PM863 Benchmarks aus dem gleichen Ort, btw: storagereview.com/samsung_pm863_ssd_review
batistuta09
3
Intel P3700 sind großartig. Ich werde Intel Enterprise NVMe auf den Fall überprüfen. Danke.
Joshua Turnwell