Petrovich12 - Fotolia
Computational Storage: Wissenswertes im Überblick
Computational Storage ist eine aufstrebende Technologie, aber noch gibt es Unklarheiten, wie sie zur Lösung von Speicherlatenz- und Leistungsproblemen eingesetzt werden kann.
Beim Computational Storage geht es darum, Compute – also die Rechenressource – näher an den Speicher heranzuführen und die Datenmenge zu reduzieren, die zwischen Speicher und Compute ausgetauscht werden muss. Im Erfolgsfall würde diese neue Technologie die traditionelle Architektur, bei der Storage und Verarbeitung getrennt und weit voneinander entfernt sind, überholen.
Dieser Wandel vollzieht sich nicht im luftleeren Raum, sondern ist eher eine Reaktion auf die riesigen Datenmengen, die Unternehmen von IoT- und anderen Edge-Geräten zusammen mit KI-Anwendungen verwalten müssen. Die Verlagerung dieser Daten führt zu zusätzlichen Latenzzeiten und Leistungsproblemen, die sich in der heutigen Echtzeitgeschäftsumgebung nur wenige leisten können.
Anbieter haben auf diese Datenherausforderung mit einer Vielzahl von Ansätzen reagiert, um Rechenfunktionen näher an Speichersysteme heranzuführen oder in diese zu integrieren. Die Storage Networking Industry Association (SNIA) hat kürzlich einige Möglichkeiten aufgezeigt, wie Anbieter dies in ersten Produkten tun, einschließlich des Einsatzes von FPGAs in SSDs, der Nutzung von FPGAs im RAM und der Verwendung von Systemen auf einem Chip.
Es ist noch zu früh, um sagen zu können, ob und welche Konfiguration von Computational Storage sich durchsetzen wird. Nichtsdestotrotz sieht Gartner Potenzial für substanzielles Wachstum. Mehr als die Hälfte der von Unternehmen generierten Daten werden nach Angaben des Forschungsunternehmens bis 2024 außerhalb des Rechenzentrums und der Cloud erstellt und verarbeitet werden. Im Vergleich dazu werden es im Jahr 2020 nur noch zehn Prozent sein.
Es ist an der Zeit, sich mit den Grundlagen des Computational Storage vertraut zu machen. Es folgt ein Blick auf die Probleme, die damit angegangen werden könnten, einige frühe Anwendungsfälle und erste Anwender.
Diese 3 Probleme adressiert Computational Storage
Zum Verständnis der Grundlagen des Computational Storage gehört es, zu wissen, wo sie von Nutzen sein könnte. Die Technologie hat das Potenzial, drei Probleme zu lösen, mit denen heutige Speichersysteme konfrontiert sind, so Marc Staimer, Präsident von Dragon Slayer Consulting.
- Schnelle Latenzzeit. Wenn Sie den Abstand zwischen der Rechenressource und den zu verarbeitenden Daten verringern, verringern Sie die Latenz. IoT-, Fernüberwachungs- und Fernverwaltungsgeräte bringen die Daten in eine beträchtliche Entfernung zu den Rechenprozessen der traditionellen Infrastruktur. „Das Entfernungsproblem ist ein Beispiel, wo Computational Storage Abhilfe schaffen kann“, sagt Staimer. „Sie ermöglicht es den rechen-, speicher- und datenintensiven Prozessen, näher an die gespeicherten Daten heranzukommen.“ Das Ergebnis ist nur eine „nominale“ Menge an verarbeiteten Daten zur weiteren Verarbeitung an das Rechenzentrum oder in die Cloud geschickt werden müssen, erklärt er.
- Engpässe bei der CPU-Leistung. Die Ausbreitung von CPU-intensiven Speicherprozessen – Erasure Coding, Deduplizierung, Komprimierung, Snapshot und Verschlüsselung – haben die Prozessoren zu einem Leistungsengpass für Speichersysteme gemacht. Computational Storage kann diese CPU-intensiven Prozesse entlasten, wodurch die primäre CPU für eine bessere I/O- und Durchsatzleistung frei wird.
- Probleme bei der Anwendungsleistung. Datenbank- und verschiedene KI-Anwendungen können ebenfalls eine Menge CPU-Ressourcen beanspruchen. Auch hier kann Computational Storage Prozesse entlasten, um die Leistung dieser Anwendungen zu verbessern.
Die wichtigsten Anwendungsfälle für Computational Storage
Viele der IoT-Geräte, die den Netzwerkrand (Edge) bestücken, müssen Daten in Echtzeit erfassen, speichern und analysieren. IoT ist der größte Anwendungsfall für computergestützte Speicherung, meint Staimer. Er nennt autonome Fahrzeuge, die Überwachung von Bohrmeißelvibrationen in Öl- und Gasanlagen und geschlossene TV-Kameras als Beispiele für Geräte, die von der Fähigkeit des Computational Storage profitieren könnten, Daten in nahezu Echtzeit und vor Ort zu analysieren.
Ein weiterer wichtiger Anwendungsfall, wenn es um die Grundlagen des Computational Storage geht, ist die Möglichkeit, den Server in einen Scale-out-Cluster zu verwandeln. Hier verwenden Sie Computational-Storage-Cores für Snapshots, Replikation, Deduplizierung, Komprimierung und andere CPU-intensive Arbeitslasten und widmen die Haupt-CPU-Cores der Anwendungsverarbeitung.
Edge Computing und Computational Storage
Edge Computing findet oft in einem begrenzten physischen Raum statt, wie zum Beispiel in autonomen Fahrzeugen, Überwachungskameras und anderen IoT-Geräten, die wenig Platz für Speicher- und Rechenressourcen haben. Dies führt zu Einschränkungen, was getan werden kann, um die Leistung datenintensiver Arbeitslasten zu maximieren.
Der Raum ist nicht das einzige Problem am Edge, sagt Berater und Autor Robert Shelton. Auch Budgets und I/O-Port-Bandbreite schränken die konventionelle Speicher- und Computerinfrastruktur ein.
Mit Computational Storage könnten diese Einschränkungen beim Edge Computing gelöst werden. Mit ihm kann das Speichersystem Daten vorverarbeiten, so dass nur die nützlichsten Daten an den Speicher gesendet werden, wodurch Datenbewegungen minimiert und die Belastung der Compute-Ressourcen verringert werden. Die Daten werden schneller und effizienter verarbeitet, da weniger Datenbewegungen auftreten und die Parallelverarbeitung ausgiebig genutzt wird, betont Shelton.
Künstliche Intelligenz und Computational Storage
Bisherige KI-Anwendungen stützen sich auf In-Memory-Datenbanken und viel Vorbereitung, um alle anfallenden Daten nutzen zu können. Für die Ausführung von Echtzeitanalysen auf großen Datensätzen ist ein Scale-Out-Speicher mit geringer Latenzzeit erforderlich. Auch hier ist Computational Storage ein wahrscheinlicher Akteur.
Bei der künstlichen Intelligenz kann der Rechenspeicher im Vorfeld Analysen durchführen, um zu ermitteln, welche Daten benötigt werden, oder zumindest eine vorläufige Sortierung vornehmen und so die Menge der zu verschiebenden Daten reduzieren, so Andy Walls, IBM-Fellow, CTO und Chefarchitekt für IBM Flash Storage. „Es könnte zumindest eine verbesserte Software sein, die die Daten mit Tags versieht und dazu beiträgt, die Vorbereitungszeit zu verkürzen“, so Andy Walls.
Wer sind die ersten Anwender?
Die IT-Profis befinden sich noch im Anfangsstadium der Erforschung dieser Grundlagen des Computational Storage und der Frage, wie die Technologie in ihren Infrastrukturen eingesetzt werden kann und welche Anwendungsfälle davon profitieren könnten. Es bedarf eines breiten Ökosystems, das „Killer-Anwendungen“ und softwaredefinierte Speicher von verschiedenen Anbietern für Computational Storage umfasst, um „für die allgemeine Einführung relevant zu werden“, erläutert Julia Palmer, Research Vice President bei Gartner.
Tim Stammers, ein leitender Analyst bei 451 Research, prognostiziert, dass nur sehr technische Organisationen mit großen Problemen, wie zum Beispiel Hyperscaler oder die nächste Stufe unterhalb dieser Hyperscaler, sich dem Computational Storage zuwenden werden.
Unter den Anbietern in diesem Markt hat NGD Systems vor kurzem eine 16 TB NVMe-basierte SSD mit Multi-Core-Verarbeitungstechnologie eingeführt, die mit Computational Storage verwendet werden kann. Microsoft Research, ein NGD-Partner, arbeitet an Proofs of Concept, um die potenziellen Vorteile von SSDs mit Computational Storage unter anderem für Suchanfragen für große Bilddateien zu demonstrieren.