macrovector - Fotolia

NVMe: Das sind die interessantesten Lösungen

NVMe (Non-Volatile Memory) kann den Flash-Speicher beschleunigen. Wir stellen die derzeit zukunftsträchtigsten Storage-Produkte vor, die mit NVMe Hochgeschwindigkeit erreichen wollen.

Seit mehr als 30 Jahren verlässt sich die Speicherindustrie auf das SCSI-Protokoll (Small Computer System Interface), um zwischen Servern und Speicher sowie intern mit dem Speicherarray zu kommunizieren. Und obwohl sich die physische Verbindung entwickelt hat, ist das Protokoll seit vielen Jahren relativ gleich geblieben.

Aber mit dem Aufkommen von NAND-Flash-Speicher fingen die Probleme an. Flash ist um einiges schneller als Festplatten und kann viele Anfragen parallel verarbeiten. Da Anbieter die Grenzen der Skalierbarkeit auf Laufwerken bei einer Speicherkapazität von mehreren zehn Terabyte setzen, ist SCSI zunehmend zu einem Engpass geworden, um Flash-Speicher voll auszunutzen.

Und nun wird das neue Protokoll NVMe (Non-Volatile Memory Express) als Ersatz für SCSI positioniert und verspricht, die Vorteile von NAND und Speicher vollständig auszuschöpfen.

NVMe und das Potenzial für Flash

NVMe ist ein Protokoll, kein Formfaktor oder Medientyp. Physische NVMe-fähige Geräte sind in einer Reihe von Formfaktoren erhältlich, beispielsweise als AIC (Add-In-Karte oder gewöhnlich als PCIe-Karte bezeichnet), U.2 (ähnelt einer herkömmlichen Festplatte) und M.2 (ein Speicherstick). Alle verwenden PCIe als Schnittstellenbus.

NVMe reduziert die Softwarelatenz, die bei der Kommunikation mit Flash einhergeht, verbessert die Hardware-Unterbrechungszeiten (Prozessor-zu-Gerät-Leistung) und erhöht die parallele Verarbeitung von Anfragen mit mehr Eingabe-/Ausgabewarteschlangen als SCSI und besserer Tiefe (65.535 Warteschlangen und eine Warteschlange mit einer Tiefe von 65.535). Das Ergebnis ist ein viel höherer Durchsatz (IOPS und Datenvolumen) und niedrigere I/O-Latenz.

Hersteller haben inzwischen begonnen, NVMe zu übernehmen, und stellen damit neue und schnellere Speicher-Arrays bereit, die intern mit NVMe ausgestattet sind. Es gibt auch neuere Architekturen mit NVMe over Fabrics (NVMf), die Fibre Channel und Ethernet-Netzwerke nutzen können.

Hier betrachten wir Lösungen von Herstellern und wie sie NVMe in bestehende und zukünftige Produkte einsetzen.

NVMe in Speicherprodukten

Der Hersteller X-IO ist bekannt für seine ISE-Reihe von versiegelten Platteneinheiten. Vor kurzem kam er aus finanziellen Schwierigkeiten mit der neuen Axellio-Plattform zurück, einer 2-Höheneinheiten-Server-basierten Dual-Controller-Architektur mit bis zu vier Intel Xeon E5-2699v4-Prozessoren (insgesamt 88 Kerne), bis zu 2 TB DRAM und einem bis zu sechs FlashPacs. Diese kann bis zu 12 NVMe Solid-State-Laufwerke (SSDs) mit zwei Ports aufnehmen. Die Gesamtkapazität mit 6,4 TB-Laufwerken beträgt derzeit 460 TB pro System.

Der Kern des Systems ist eine PCIe-Fabric namens FabricXpress, die beide Controller mit jedem Dual-Port-Laufwerk verbindet. Dadurch kann X-IO bis zu 12 Millionen IOPS (4KB) und 60 Gbps anhaltenden Durchsatz bei 35μs Latenz erreichen. Das Design von Axellio ist im Kern eine Dual-Controller-Architektur, aber mit 88 verfügbaren Cores kann die Plattform als Basis für ein herkömmliches Speichergerät oder eine horizontal skalierbare hyperkonvergente Plattform verwendet werden.

Die Möglichkeit, zusätzliche Plug-in-Module zu unterstützen, erlaubt Analysen oder andere prozessintensive Workloads auszuführen. Hier bietet die NVMe-Architektur echten Mehrwert, indem sie Computing so nah wie möglich an den Speicher bindet.

Mit der Veröffentlichung von FlashArray//X im April 2017 hat Pure Storage seine bestehende FlashArray-Architektur aktualisiert. Das FlashArray-Produkt war bereits in der Lage, NVMe zu unterstützen. Denn NVMe wurde durch einen neuen //X70-Controller und DirectFlash NVMe-Laufwerksmodule eingeführt.

Das Ergebnis ist eine Halbierung der Latenz im Vergleich zu FlashArray//M, mit dem doppelten Leistungsdurchsatz und einer vierfachen Steigerung – Leistungsdichte, wie Pure es nennt. Die Leistungsverbesserungen von FlashArray//X erscheinen nicht besonders umfangreich – aber denken Sie daran, dass die Kunden am Frontend weiterhin Standard-Fibre Channel- und iSCSI-Protokolle verwenden müssen – dennoch ermöglichen die Verbesserungen der Leistungsdichte eine wesentlich kompaktere Grundfläche.

Pure erreicht eine Kapazität von fast einem Petabyte pro drei Höheneinheiten Rack-Platz in einem einzigen Gehäuse (bei einer Reduzierung des Platzbedarfs von 5: 1) und bietet eine höhere Leistung als das vorherige FlashArray//M.

Das interessantere Thema für Pure ist jedoch die zukünftige Entwicklung von NVMe-Over-Fabrics, die die Front-End-Leistung erhöhen und es ermöglichen, dass ein einzelner Controller-Kopf mehr Flash-Kapazität anspricht. DirectFlash-Regale sind noch nicht verfügbar, aber Pure verspricht, die Systemkapazität mit bis zu 512 TB zusätzlichem Flash unter Verwendung von 50 Gbit/s Ethernet und Remote Direct Memory Access (RDMA) über Converged Ethernet (RoCE) zu erweitern.

Beim Thema NVMe over Fabrics bleibt noch Excelero, ein Startup-Unternehmen, das NVMf für die Entwicklung einer skalierbaren Node-basierten Architektur namens NVMesh einsetzt. Ein NVMesh-System verfügt über mehrere Controller, die über Converged Ethernet und RoCE über eine proprietäre Technologie mit dem Namen Remote Direct Drive Access (RDDA) verbunden sind.

Dadurch kann jeder Knoten im System, auf dem sich das Laufwerk befindet, mit geringem oder keinem Prozessoraufwand auf ein beliebiges Laufwerk zugreifen. Wie Axellio kann NVMesh in einer hyperkonvergenten Anordnung eingesetzt werden, bei der jeder Knoten Rechen- und Speicher-Kapazität oder als dedizierte Speicherplattform Rechenknoten bereitstellt, auf denen ein Client-Blocktreiber ausgeführt wird.

NVMesh wird jedoch als Softwarelösung verkauft, die es Kunden ermöglicht, ihre eigene Hardware zu verwenden oder Hardware von Partnern wie Micron zu kaufen, die NVMesh in ihr SolidScale-Produkt integrieren. Excelero behauptet, dass NVMesh nahezu 100 Prozent der NVMe-Kapazität für Host-I/O nutzen kann, was bei dieser Art von disaggregierter Architektur sicherlich sinnvoll ist.

Aber es gibt Kompromisse. Derzeit ist der Datenschutz auf RAID-0, RAID-1 und RAID-10 beschränkt, ohne dass die Technologie zur Speicherplatzreduzierung unterstützt wird – es sei denn, sie wird vom Client implementiert. Dies wird zumindest auf der Roadmap versprochen.

E8 Storage ist ein weiteres Start-up, das einen Fabric-basierten Ansatz verwendet, um Clients und Speicher zu verbinden. Die Geräte der Serien E8-S24 und E8-D24 teilen E/A-Pfade und Steuerungsebenen in separate Hardware auf. E8-Festplattenregale enthalten 24 NVMe-SSD-Laufwerke und bieten vier Mal 100 GbE beziehungsweise acht Mal 100 GbE-Netzwerk.

Ein einzelnes Regal kann über RDMA-NICs mit bis zu 96 Client-Servern verbunden werden. Datendienste (Verfügbarkeit und Verwaltung) werden über zwei E8-Controller abgewickelt, die nicht im Datenpfad liegen.

Wie Excelero disaggregiert E8 Storage die NVMe-Kapazität mit der Systemverwaltung und entfernt den Controller aus dem E/A-Pfad. Dies bietet eine wesentlich höhere Systemskalierbarkeit, ohne dass in jedem Controller eine große Anzahl von Xeon-Prozessoren eingesetzt werden muss.

Durch die Verwendung zusätzlicher Treiber wird jedoch die Komplexität auf der Clientseite erhöht. E8 behauptet jedoch, Latenzen von 100μs (Lesen), 40μs (Schreiben) mit 10 Millionen Lese-IOPS und einer Million Schreib-IOPS und 40Gbps beziehungsweise 20Gbps Durchsatz erreichen zu können.

Apeiron Data Systems ist ein weiteres Start-up, das NVMe über Netzwerke verwendet und den Controller aus dem Datenpfad entfernt. In diesem Fall verwendet die ADS1000-Plattform von Apeiron ein Protokoll namens NVMe-over-Ethernet, das in jedem Client benutzerdefinierte Host-Bus-Adapter (HBAs) erfordert. Die HBAs verwenden Intel Altera FPGAs, um NVMe-Anforderungen zu verpacken und über Layer-2-Ethernet zu senden, um eine Scale-Out-Architektur zu ermöglichen, die eine Latenz von nur 100 μs bietet und jedes Gehäuse eine maximale Kapazität von 384 TB bietet (24 16-TB-Laufwerke). Es ist interessant, dass Apeiron auch Leistungszahlen mit Intel Optane zitiert hat, die eine Lese-/Schreiblatenz von 12 μs beanspruchen. Dies zeigt, wo sich Architekturen befinden, die den Controller-Engpass in Bezug auf die Performance beseitigen.

Schließlich sollten wir auch Hersteller Kaminario erwähnen, der kürzlich seine K2.N-Plattform angekündigt hat. Dies ist eine zusammensetzbare Speicherinfrastruktur, die eine unabhängige Skalierung von Speicherregalen und Controllern ermöglicht. Am hinteren Ende sind Kaminario-Controller (c.nodes) über NVMe over Fabrics mit Speicherkapazität (m.nodes) verbunden. Am Frontend wird die Host-Unterstützung erweitert, um NVMf zusätzlich zu Fibre Channel und iSCSI zu unterstützen.

Wofür NVMe-Flash-Architekturen?

Wir können drei unterschiedliche Muster erkennen

  1. Die Verwendung von NVMe-over-Fabrics für Host-Konnektivität anstelle von Fibre Channel oder iSCSI. Dies erfordert keine neue Hardware, da vorhandene HBAs NVMf unterstützen können.
  2. Disaggregierte Architekturen, die den Controller aus dem Datenpfad nehmen. Die meisten davon benötigen benutzerdefinierte oder (wahrscheinlich) teurere HBAs und Host-Treiber.
  3. Der Trend zur Verwendung von NVMe-Over-Fabrics am hinteren Ende des Systems.

Ich denke, dass NVMe in kurzer Zeit SAS und SATA in allen Performance-Lösungen ersetzen kann. Die Herausforderung für Kunden könnte darin bestehen, gemeinsam genutzten Speicher zu implementieren, der das herkömmliche Shared Storage-Array nicht verwendet. Dies bedeutet, dass Sie ganzheitlicher mit dem gesamten Stack denken müssen – vielleicht in Anlehnung an die Entwicklung einer hyperkonvergenten Infrastruktur.

Folgen Sie SearchStorage.de auch auf Twitter, Google+, Xing und Facebook!

Nächste Schritte

NVMe und 3D XPoint

Die NVMe-Technologie könnte das Konzept der Direct-Attached-Storage wiedererwecken

Neue Software-Architekturen mit NVMe und Direct-Flash können Grenzen überwinden

 

Erfahren Sie mehr über Flash Storage und SSD