stefanovi - Fotolia
NVMe Zoned Namespace senkt Kosten und optimiert die Leistung
NVMe Zoned Interface nutzt die Funktionen von NAND-Flash, damit die Host-Software mit dem NAND-Speicher kommunizieren kann, um die Workloads besser auf den SSD-Speicher abzustimmen.
Mit der Ratifizierung der NVMe-Zoned-Namespace-Command-Set-Spezifikation hat das NVM-Express-Konsortiums eine Schnittstelle definiert, über die Host-Software mit nichtflüchtigem NAND-Flash-Speicher kommunizieren kann.
Zoned Namespace (ZNS) unterteilt den NVMe-Namensraum in unabhängige Zonen, die bestimmte Daten- oder Workload-Typen unterstützen. Es verlagert die Datenverwaltung auf die Host-Software, um die Kontrolle über E/A und Datenplatzierung zu verbessern.
Mit NVMe Zoned Namespace können Anwendungen die inhärente Architektur von NAND ausnutzen, was zu niedrigeren Speicherkosten und besserer Leistung führt, insbesondere bei Hyperscale-Workloads.
Die Herausforderungen von traditionellem Flash-Speicher
Eine SSD ist mit mehreren Einschränkungen verbunden. Daten werden sequentiell geschrieben und müssen vor dem erneuten Beschreiben gelöscht werden. Die Daten werden auf der Page-Ebene geschrieben, aber auf der Blockebene gelöscht.
Eine SSD unterstützt nur eine begrenzte Anzahl dieser Programm-/Löschzyklen (P/E), bevor die Speicherzellen anfangen, auszufallen. Wenn sie nicht richtig verwaltet werden, können diese Probleme die SSD-Ausdauer negativ beeinflussen und die Lebensdauer einer SSD verkürzen. Aus diesem Grund enthalten die meisten SSDs einen Flash Translation Layer (FTL), der lebensverlängernde Aufgaben wie Garbage Collection und Wear Leveling übernimmt und dabei hilft, die Unzulänglichkeiten des SSDs zu beheben.
Leider kann die FTL-Verwaltungsschicht den Durchsatz negativ beeinflussen und die Latenz und Kosten erhöhen, insbesondere bei Arbeitslasten im Zettabyte-Bereich. Zum Beispiel verschiebt die FTL ständig Daten als Teil der laufenden P/E-Zyklen, was zu einer Write Amplification (Schreibverstärkung) und möglicher Leistungsverschlechterung führt. Eine SSD muss auch überprovisioniert (Over-Provisioning) werden, um diese Verwaltungsprozesse unterzubringen, und sie benötigt ausreichenden dynamischen Arbeitsspeicher (DRAM), um sie zu unterstützen.
Aufgrund der Auswirkungen der FTL, insbesondere im großen Maßstab, haben Unternehmen wie Alibaba, Microsoft, NetApp und Western Digital an einem zonenbasierten Ansatz für das SSD-Management gearbeitet, der den FTL-Overhead eliminiert und die SSD-Effizienz erhöht. Als Teil dieser Bemühungen hat die NVM Express Technical Working Group die ZNS-Schnittstelle entwickelt, um einen offenen Standard bereitzustellen, der SSDs mit dem Support-Host abgleicht.
Die ZNS-Schnittstelle erweitert das NVMe-Protokoll, um einen logischen Adressraum bereitzustellen, der es der Host-Software ermöglicht, den E/A-Verkehr auf bestimmte Zonen zu lenken, ähnlich wie die SMR-Zonen (Shingled Magnetic Recording) bei HDDs funktionieren. Mit der NVMe Zoned Namespace-Schnittstelle werden Arbeitslasten besser auf ihren SSD-Speicher abgestimmt, was die Leistung verbessert und die Kosten senkt.
Übergang zu zonenbasiertem Speicher
Die ZNS-Schnittstelle enthält viele der Prinzipien von Open-Channel-Architekturen, die zur Steuerung von SSD-Geräten verwendet werden. Eine Open-Channel-SSD legt ihren logischen Blockadressraum (LBA) direkt für den Host offen, damit dieser die Datenplatzierung, E/A-Operationen und andere Prozesse verwalten kann. Die LBA ist in Chunks unterteilt, die aus logischen Blöcken bestehen, die die Sektorgröße der SSDs definieren.
Die Chunks müssen sequentiell geschrieben werden, aber sie können zufällig (random) gelesen werden. Der Host leitet jede Arbeitslast zu bestimmten Chunks, was zu einer besseren Ressourcennutzung und Leistung führt.
Storage-Anbieter und Hyperscale-Organisationen haben Open-Channel-Architekturen eingeführt, um die Einschränkungen von FTL zu umgehen. Dies hat jedoch zu einer Vielzahl von spezialisierten Implementierungen geführt, ohne einen gemeinsamen Standard. NVM Express hofft, diese Situation mit der ZNS-Schnittstelle zu ändern.
Die Schnittstelle unterteilt die LBA in Zonen, ähnlich wie die Open-Channel-Chunks. Jede Zone wird als isolierter Namespace behandelt. Daten werden innerhalb der Zone sequentiell geschrieben und müssen gelöscht werden, bevor sie neu geschrieben werden können. Dieser Ansatz wird ohne den für die FTL erforderlichen Verwaltungs-Overhead erreicht. Darüber hinaus können verschiedene Daten- und Workload-Typen auf bestimmte Zonen abzielen, um besser vorhersehbare Nutzungsmuster zu ermöglichen und die Speicherressourcen besser zu nutzen.
Die ZNS-Schnittstelle ist auf die Schnittstellen Zoned Block Command (ZBC) und Zoned-device ATA Command (ZAC) abgestimmt, die SMR-Zonen auf SAS- beziehungsweise SATA-Festplatten unterstützen. Wie bei ZNS ist jede SMR-Zone eine unabhängige Einheit. Die Daten müssen sequentiell geschrieben und gelöscht werden, bevor die Zone neu beschrieben werden kann.
Die Angleichung der ZNS-Schnittstelle an ZBC und ZAC erleichtert die Einbindung von ZNS in bestehende Infrastrukturen, die SMR unterstützen. So sollten beispielsweise SMR-fähige Device Mapper und Dateisysteme in der Lage sein, mit wenigen oder gar keinen Änderungen mit ZNS zu arbeiten. Diese Ausrichtung macht es auch möglich, einen einzigen zonenbasierten Speicher zu implementieren, der sowohl HDDs als auch SSDs umfasst.
ZNS und Hyperscale-Workloads
Die NVMe Zoned Namespace-Schnittstelle verspricht, mehrere Vorteile zu bieten. Beispielsweise wird die Schreibverstärkung reduziert, da sich die Zonen besser an der physischen Geometrie der SSD ausrichten, wodurch die Notwendigkeit entfällt, Daten bei jedem Vorgang ständig zu verschieben, zu löschen und neu zu schreiben. Gleichzeitig reduziert ZNS die Überbelegung des Speichers, zum Teil, weil es weniger Write Amplification gibt, aber auch, weil die Daten effizienter durch Zonen gespeichert werden.
Ein weiterer Vorteil von ZNS besteht darin, dass die Datenverwaltung auf den Host verlagert wird, wodurch der Bedarf an DRAM reduziert wird und gleichzeitig der administrative Overhead und die Speicherkosten gesenkt werden. Geringerer Overhead führt zu besseren Durchsatz- und Latenzraten. Effizientere Datenplatzierung und E/A-Steuerung verbessern die Leistung weiter. Diese Vorteile führen zu einer längeren Lebensdauer der Laufwerke und helfen, die Speicherkosten weiter zu senken.
Das NVMe Zoned Namespace-Projekt zielt auf Hyperscale-Organisationen wie Cloud-Anbieter und globale Rechenzentren ab. Hyperscaler müssen ihren Speicher so effizient und kostengünstig wie möglich verwalten, was ZNS zu einer idealen Lösung macht. Mehrere Speicheranbieter entwickeln ZNS-fähige SSDs, um diese Anforderungen zu erfüllen.
Western Digital hat sich an vorderster Front an der Entwicklung der ZNS-Schnittstelle und durch seine eigene Zoned Storage Initiative beteiligt, die einen zonenbasierten Ansatz zur Bereitstellung von Speicher verfolgt, der sowohl HDDs als auch SSDs umfasst. Western Digital hat bereits SMR-fähige Festplatten auf den Markt gebracht und bietet ausgewählten Kunden eine ZNS-fähige Entwicklungs-SSD an, wobei weitere SSDs geplant sind.
Radian Memory Systems, Samsung und SK Hynix arbeiten aktiv an ZNS-fähigen SSDs. Radian und SK Hynix haben Produkte vorgeführt, die die ZNS-Spezifikationen erfüllen, und Samsung bietet ein Laufwerk an, das ZNS-Implementierungen unterstützen kann. Und es sind nicht nur Speicheranbieter, die ZNS unterstützen. SANBlaze Technology, ein Spezialist für das Testen von Speicherprotokollen, hat kürzlich angekündigt, seine Validierungs- und Testplattform um ZNS-Unterstützung zu erweitern.
Die neue Welt von ZNS
Nachdem die NVMe-Zoned-Namespace-Spezifikation nun ratifiziert wurde, wird erwartet, dass weitere Anbieter in den Markt einsteigen werden. Dennoch hat die Schnittstelle noch einen langen Weg vor sich, bevor sie auf breiter Front angenommen wird, so dass ihre Auswirkungen und ihr Erfolg noch abzuwarten sind. Open-Channel bietet einen Hinweis auf das Potenzial, aber erst wenn Hyperscale-Organisationen ZNS implementieren, werden wir die volle Auswirkung verstehen und wie sich SSD-Speicher als Ergebnis entwickeln könnte.
Dennoch stellt ZNS einen wichtigen Schritt bei der Bewältigung der Herausforderungen dar, die mit FTL-basierten SSDs einhergehen. ZNS-Technologien könnten schließlich in Rechenzentren aller Größenordnungen Einzug halten und Flash-Speicher zu einer praktikablen Option für mehr Unternehmen machen.