Wer auf der Suche nach einem leistungsstarken All-Flash-Speicher-Array ist, ist mit dem NetApp AFF A800 genau richtig. Das End-to-End-NVMe-Array bietet enorme Leistung und stammt aus der starken AFF-Array-Reihe von NetApp. Wir haben den A800 bereits zuvor über Fibre Channel getestet und festgestellt, dass er eine hervorragende Leistung erbringt, was uns den Editor's Choice Award eingebracht hat. Für diesen Test testen wir dasselbe Array, diesmal jedoch mit der Nutzung von NVMe over Fabrics (NVMeOF).
Wer auf der Suche nach einem leistungsstarken All-Flash-Speicher-Array ist, ist mit dem NetApp AFF A800 genau richtig. Das End-to-End-NVMe-Array bietet enorme Leistung und stammt aus der starken AFF-Array-Reihe von NetApp. Wir haben den A800 bereits zuvor über Fibre Channel getestet und festgestellt, dass er eine hervorragende Leistung erbringt, was uns den Editor's Choice Award eingebracht hat. Für diesen Test testen wir dasselbe Array, diesmal jedoch mit der Nutzung von NVMe over Fabrics (NVMeOF).
Da es sich hierbei um eine Folgerezension handelt, werden wir nicht auf Dinge wie Design und Bau, Spezifikationen oder Management eingehen. Unser erste Überprüfung passt gut in jeden dieser Bereiche. Der Aufbau für den Test ist im Wesentlichen derselbe, mit einer anderen Netzwerkschnittstelle, um den Leistungsunterschied zu erkennen. Es sollte beachtet werden, dass dies nicht gerade ein Vergleich von Äpfeln zu Äpfeln ist. Das Array bietet verschiedene Konnektivitätsoptionen für unterschiedliche Benutzeranforderungen. Wir prüfen derzeit verschiedene Typen, um diesen Benutzern eine Vorstellung davon zu geben, was sie von welcher Konnektivitätsoption erwarten können.
NVMeOF wurde 2014 erstmals eingeführt und ist das Konzept der Verwendung eines Transportprotokolls über ein Netzwerk, anstatt nur die NVMe-Geräte über den PCIe-Bus zu nutzen. NVM Express, Inc. hat 2016 den Standard für NVMeOF veröffentlicht. NVMeOF ermöglicht es dem NVMe-Host, eine Verbindung zu einem NVMe-Zielspeicher herzustellen und gleichzeitig die Latenz niedrig zu halten. Die allgemeine Idee besteht darin, mehr Leistung zu erzielen, ohne die Latenz wesentlich zu erhöhen. Bisher gab es viele Ansätze verschiedener Anbieter, welches Protokoll unterstützt wird oder in mehreren Modi gleichzeitig laufen kann. Der mit ONTAP ausgestattete AFF A800 ist in der Lage, CIFS, NFS, iSCSI, FCP und FC NVMeOF gleichzeitig auszuführen, und das alles ohne große Anstrengung. Nicht alle Plattformen sind auf diese Weise konzipiert, und selbst der NetApp EF600 (der für leicht unterschiedliche Ziele entwickelt wurde) kann entweder in FCP oder FC NVMeOF laufen, aber nicht in beiden gleichzeitig.
Leistungskonfiguration
Die Konfiguration unseres NetApp AFF A800 umfasste 8 32-GB-FC-Ports mit 24 installierten 1.92-TB-NVMe-SSDs. Von den 24 in unserem A1.92 eingesetzten SSDs mit 800 TB haben wir sie in zwei RAID-DP-Aggregate aufgeteilt, wobei effektiv 23 SSDs verwendet werden und zwei halbe Partitionen als Hot-Spare gehalten werden. Die Hälfte jeder SSD ist auf beide Controller aufgeteilt, sodass jeder Controller die Leistung aller installierten SSDs nutzen kann. Das Array wurde über 32 Gbit über zwei Brocade G620-Switches verbunden, die dann über 16 32-Gbit-Verbindungen zu 12 Dell PowerEdge R740xd-Servern mit SLES 12 SP4 verfügten.
Jeder Server wurde mit zwei 2-GB-LUNs ausgestattet, was einen Gesamtspeicherbedarf von 350 TB ergibt.
Kennzahlen
Wenn es um das Benchmarking von Speicher-Arrays geht, sind Anwendungstests am besten und synthetische Tests stehen an zweiter Stelle. Obwohl sie keine perfekte Darstellung der tatsächlichen Arbeitslasten darstellen, helfen synthetische Tests dabei, Speichergeräte mit einem Wiederholbarkeitsfaktor zu vergleichen, der es einfach macht, Konkurrenzlösungen direkt miteinander zu vergleichen. Diese Workloads bieten eine Reihe unterschiedlicher Testprofile, die von „Vier-Ecken“-Tests über allgemeine Tests der Datenbankübertragungsgröße bis hin zu Trace-Erfassungen aus verschiedenen VDI-Umgebungen reichen. Alle diese Tests nutzen den gemeinsamen vdBench-Workload-Generator mit einer Skript-Engine, um Ergebnisse über einen großen Computing-Testcluster zu automatisieren und zu erfassen. Dadurch können wir dieselben Arbeitslasten auf einer Vielzahl von Speichergeräten wiederholen, einschließlich Flash-Arrays und einzelnen Speichergeräten.
Profile:
- 4K Random Read: 100 % Read, 128 Threads, 0-120 % Iorate
- 4K Random Write: 100 % Schreiben, 64 Threads, 0-120 % Iorate
- 64K sequentielles Lesen: 100 % Lesen, 16 Threads, 0-120 % Leserate
- 64K Sequentielles Schreiben: 100 % Schreiben, 8 Threads, 0-120 % Iorate
- Synthetische Datenbank: SQL und Oracle
Der primäre Leistungsvorteil von NVMeOF beim A800 ist eine höhere Leseleistung und eine geringere Latenz. Während sich unsere vorherigen Tests auf die Leistung innerhalb von VMware unter Verwendung des FCP-Protokolls konzentrierten, wobei VMDKs an mehrere VMs angeschlossen waren, konzentrieren sich unsere NVMeOF-Tests auf die Bare-Metal-Leistung. Daher ist ein direkter Eins-zu-eins-Vergleich mit unseren vorhandenen Daten nicht möglich. Es ist auch wichtig zu beachten, dass wir für konsistente Tests aller unserer Speicher-Arrays die Thread-Anzahl für jedes Speicher-Array gleich gehalten haben. Beim NVMeOF-Test auf dem A800 sind uns einige Bereiche aufgefallen, in denen unser Test vor einem deutlichen Anstieg der Latenz beendet wurde. Dies zeigt zunächst einmal, dass die Plattform eine außergewöhnlich gute Leistung erbringt und niedrige Latenzzeiten bei beeindruckenden Leistungsstatistiken ermöglicht. Der Nachteil ist jedoch, dass ein Teil der Leistung auf dem Tisch blieb. NetApp hat erklärt, dass der A800 unter bestimmten Umständen eine sogar höhere Leistung erzielen kann, als wir gemessen haben.
Beim 4K-Lesen startete der A800 mit NVMeOF bei 217,460 IOPS mit einer Latenz von nur 196.8 µs und erreichte seinen Höhepunkt bei 2,184,220 IOPS mit einer Latenz von 1.22 ms.
Bei 4K-Schreibvorgängen begann das Array bei 48,987 IOPS mit einer Latenz von 196 µs und erreichte seinen Höhepunkt bei 465,445 IOPS bei einer Latenz von 2.44 ms.
Als nächstes folgen unsere sequenziellen 64-KB-Workloads. Bei 64K-Lesevorgängen konnte der A800 durchgehend eine Latenz von unter einer Millisekunde aufrechterhalten, mit einer Spitzenleistung von etwa 403K IOPS oder 25 GB/s bei einer Latenz von 800 µs, bevor es zu einem leichten Abfall kam.
Für 64K-Schreibvorgänge startete der A800 mit NVMeOF stark und blieb unter 1 ms, bis er etwa 110 IOPS oder etwa 7 GB/s erreichte, und erreichte dann seinen Höhepunkt bei 120,314 IOPS oder 7.52 GB/s mit einer Latenz von 1.48 ms.
Unsere nächsten Benchmarks sind unsere SQL-Tests. In SQL blieb der A800 durchgehend unter 1 ms mit einem beeindruckenden Spitzenwert von 1,466,467 IOPS bei einer Latenz von nur 496.6 µs.
Für SQL 90-10 erzielte der A800 mit NVMeOF erneut eine beeindruckende Latenzleistung im Submillisekundenbereich, beginnend bei 139,989 IOPS und einem Spitzenwert von 1,389,645 IOPS mit einer Latenz von nur 539.6 µs.
SQL 80-20 verzeichnete erneut durchgehend eine Latenz von unter einer Millisekunde mit einem Spitzenwert von 1,108,068 IOPS bei einer Latenz von 658 µs.
Bei unseren Oracle-Workloads blieb der A800 mit NVMeOF unter 1 ms mit einem Spitzenwert von 1,057,570 IOPS bei einer Latenz von 860.4 µs.
In Oracle 90-10 startete der A800 mit 118,586 IOPS und erreichte einen Spitzenwert von 1,140,178 IOPS bei einer Latenz von 397.6 µs.
In Oracle 80-20 sahen wir, dass der A800 erneut durchgehend eine Latenz von unter einer Millisekunde hatte, beginnend bei 104,206 IOPS und einen Spitzenwert von 1,003,577 IOPS bei einer Latenz von 468.8 µs.
Schlussfolgerung
Das NetApp AFF A800 ist ein 4U-All-Flash-Array, das Block- und Dateizugriff sowie End-to-End-NVMe-Unterstützung unterstützt. Der A800 richtet sich an Benutzer mit den anspruchsvollsten Arbeitslasten, die viel Leistung und viel Speicher benötigen, mit einer maximalen effektiven Kapazität von 316.8 PB. Während unser erster preisgekrönte Rezension Betrachtet man dieses Array im Vergleich zum herkömmlichen Fibre Channel, nutzt dieser Test NVMe statt Fabrics, um zu sehen, wie sich die Dinge entwickelt haben.
Für unsere VDBench-Workloads bot der NetApp AFF A800 durchweg beeindruckende Zahlen. Bei unserem einfachen Vier-Ecken-Lauf sahen wir eine zufällige 4K-Spitzenleistung von 2.2 Millionen IOPS beim Lesen und 465 IOPS beim Schreiben. Bei unseren sequentiellen 64K-Workloads konnten wir 25 GB/s beim Lesen und 7.52 GB/s beim Schreiben beobachten. Bei unseren SQL-Workloads verzeichneten wir Spitzenwerte von 1.5 Millionen IOPS, bei SQL 90-10 waren es 1.4 Millionen IOPS und bei SQL 80-20 waren es 1.1 Millionen IOPS. Unsere Oracle-Tests ergaben beeindruckende 1.1 Millionen IOPS, Oracle 90-10 lieferte uns 1.14 Millionen IOPS und Oracle 80-20 hatte 1 Million IOPS. Noch beeindruckender war, dass SQL- und Oracle-Workloads durchgehend eine Latenzzeit von unter 1 ms hatten.
Obwohl wir mit dem für NVMeOF konfigurierten A800 großartige Ergebnisse erzielt haben, insbesondere in Bezug auf die Leseleistung, ist es erwähnenswert, dass das System noch mehr zu bieten hat. In unseren Tests basierten alle Lasterzeugungsserver auf VMware-Hypervisoren, was die Komplexität noch weiter steigert. Darüber hinaus unterstützt VMware NVMeOF derzeit nicht vollständig. Für Mainstream-Unternehmen, die alle Vorteile von NVMeOF mit NetApp-Systemen nutzen möchten, bietet Bare Metal die beste Leistung. Allerdings werden viele NVMeOF ONTAP-Systeme in einer Hybridkonfiguration verwenden wollen, die sowohl Fabrics als auch Standard-Fibre-Channel-Konnektivität nutzt. In jedem Fall ist NetApp weiterhin führend bei der Einführung und Bereitstellung führender Generationstechnologien, um sicherzustellen, dass seine Arrays für alles bereit sind, was ihre Kunden brauchen, wann immer sie es brauchen. Hier schneidet der A800 besonders gut ab, weshalb wir ihm in unserem ersten Testbericht die Auszeichnung „Editor's Choice“ verliehen haben. Das NVMeOF sorgt für eine enorme Leistungssteigerung, die für Unternehmen attraktiv sein dürfte, die für ihre geschäftskritischen Anwendungen maximalen Durchsatz und Mikrosekunden-Latenz benötigen.