Azure Native Qumulo jetzt in der EU, im Vereinigten Königreich und in Kanada verfügbar – Erfahren Sie mehr

So erhalten Sie kostengünstigen Unternehmensspeicher auf AWS EBS sc1

Geschrieben von:
Erfahren Sie, wie Sie AWS EBS sc1 in ein leistungsstarkes Speichermedium für Ihre Produktionsworkloads verwandeln.

Erfahren Sie, wie Sie AWS EBS sc1 in ein leistungsstarkes Speichermedium für Ihre Produktionsworkloads verwandeln.

Anfang 2020 erhielten wir Rückmeldungen von unseren Kunden, dass sie mehr Dateidaten in der Cloud auf Qumulo speichern wollten, aber die Kosten für die AWS EBS st1-Infrastruktur explodierten, als sie etwa 50 TB überschritten. Wir haben die Kosten unserer Lösung aufgeschlüsselt, sie aus vielen verschiedenen Blickwinkeln betrachtet und festgestellt, dass die Kosten bei Ihrer Kapazitätssteigerung von EBS dominiert wurden. Später in diesem Jahr, nach weiteren Tests und einigen Änderungen an der Handhabung unseres Produkts mit Festplatten mit hoher Latenz, konnten wir Konfigurationen anbieten, die den Preis um einen Preis gesenkt haben bis zu 70 %. Wie haben wir das gemacht?

Zuerst etwas Hintergrund. 

Qumulo auf AWS verwendet EBS gp2-Volumes für SSD und st1-Volumes für HDD

Das Qumulo-Dateidatenplattform ist ein hochverfügbares verteiltes Dateisystem, das über mehrere identisch konfigurierte Knoten in einem Cluster läuft. Jeder Knoten im Cluster ist ein gleichberechtigter Teilnehmer, und andere Maschinen oder Benutzer, die auf Daten auf einem Qumulo-System zugreifen müssen, können dies von jedem Knoten aus tun – und sie sehen alle denselben Status. 

Auf diese Weise können Sie skalieren, um Tausende von verbundenen Clients zu bedienen, und einige Konfigurationen können über 1 Mio. IOPS und Dutzende von GB/s erreichen. Ihre Daten sind vor dem Verlust eines EBS-Volumes geschützt (EBS gibt eine jährliche Ausfallrate von 0.1%-0.2% an) und sind auch dann noch zugänglich, wenn ein Knoten neu gestartet oder vorübergehend (zB für Wartungsarbeiten) heruntergefahren wird.

Die beiden Hauptbetriebsmodi von Qumulo sind alle SSD, was bedeutet, dass Ihre Daten von SSD geschrieben und gelesen werden und nie woanders hin verschoben werden. Stellen Sie sich dies als eine einstufige Plattform vor, die entwickelt wurde, um eine konsistent niedrige Latenz für Dinge wie Videobearbeitung, Wiedergabe und Rendering bereitzustellen. Wir haben auch einen zweistufigen Modus, der aus einer dünnen Schicht von SSDs besteht, die als persistenter Cache fungieren, und der „Speicher“ wird tatsächlich von einer großen Bank kostengünstiger HDDs unterstützt. Auf diese Konfiguration haben wir uns konzentriert, um die Kosten für die Kunden kostengünstiger zu machen.

Unser AWS-Produkt verwendet EBS gp2-Volumes für SSD und st1-Volumes für HDD. Wenn Sie die Kapazität Ihres Qumulo-Clusters von 50 TB auf 100 TB, auf 200 TB auf 400 TB erhöhen, beginnen die Kosten von st1 die Kosten der gesamten Lösung zu dominieren. Und es wird sehr schnell teuer. (VERBUNDEN: So budgetieren und kontrollieren Sie die Kosten für eine leistungsstarke Datenstrategie)

Wenn Sie nun etwas über AWS EBS wissen, wissen Sie vielleicht, dass AWS eine andere, kostengünstigere HDD-Klasse namens sc1 hat. Es wird beworben als: „Diese (sc1) sind ideal für Workloads, auf die selten zugegriffen wird, mit großen, kalten Datasets mit großen I/O-Größen, bei denen das dominante Leistungsmerkmal der Durchsatz (MiB/s) ist.“

Qumulo experimentierte schon früh mit sc1, sah jedoch beunruhigende Daten. Die Latenz war viel höher und die Kosten schienen den Leistungsunterschied nicht widerzuspiegeln. 

IO Latency sc1 vs st1 Leistungstests Anfang 2020

Lesen Sie mehr Schreiben
Sequenziell + 72% + 159%
Zufällig + 162% + 213%

 

Außerdem wussten wir bereits, dass unsere Leistung durch den IO-Latenz-Overhead von EBS, der an das Netzwerk angeschlossen ist, beeinträchtigt wurde. Einige anekdotische Tests mit unserer Software sahen auch nicht vielversprechend aus. Wir haben sc1 als zu riskant eingestuft, um es den Kunden vorzuschlagen zu dieser Zeit.

Kunden wollen kostengünstigen Unternehmensspeicher auf AWS EBS sc1

Ende letzten Jahres hat sich Qumulo erneut umgesehen, nachdem er mehrere lange, teure Entwicklungszyklen damit verbracht hatte, die Leistung seines Systems zu optimieren. Und weil wir Kunden hatten, die uns ausdrücklich nach sc1 fragten, sagten wir; Nun, versuchen wir es noch einmal. Wir haben einige Tests durchgeführt, einige Engpässe in unserem Code gefunden, die wir optimieren sollten, und dann mit dem Benchmarking begonnen, um eine Vorstellung davon zu bekommen, wo wir gelandet sind.

Wir waren angenehm überrascht.

Die maximale Multistream-Performance auf einem Cluster mit sc1 als Backing entsprach und übertraf gelegentlich die Leistung eines äquivalenten Clusters mit st1. Wir wissen zwar, dass dies nicht immer bei jedem Workload der Fall ist, aber es zeigt, wie weit unsere Technologie fortgeschritten ist, um die Auswirkungen der Verwendung kostengünstiger Speicherebenen in einem Unternehmensdateisystem zu maskieren.

Kostengünstige Ebenen in einem Unternehmensdateisystem

 Eine Stichprobe von sc1 im Vergleich zu st1 im Jahr 2021

Cluster AWS Infra-Kosten pro Monat (us-west-2) Maximales Multi-Stream-Schreiben MB/s Maximales Multi-Stream-Lesen (zwischengespeichert oder von SSD) MB/s Maximales Multi-Stream-Lesen von HDD MB/s
M5.12xgroß 4x55TiB st1 $17,989.28 1635 MiB/s 3192 MiB/s 3202 MiB/s
M5.12xgroß 4x55TiB sc1 $ 11,230.88 (-37%) 1683 MiB/s 3135 MiB/s 3194 MiB/s

Die Werte in der obigen Tabelle dienen nur zu Informationszwecken und sind repräsentativ für einen einzelnen Multi-Stream-Test von Qumulo, der mit einem 4-Knoten-Cluster und m5.12xlarge-Instanzen durchgeführt wurde. Die Preise variieren je nach Unternehmensvereinbarungen sowie der gewünschten Bereitstellungsregion. Die Leistung kann je nach Netzwerklatenz, Instanztyp und Knotenanzahl variieren.

Wie ist das heute möglich? 

Seit seiner Gründung hat sich Qumulo darauf konzentriert, das Produkt zu optimieren und die Leistung zu verbessern. Mit unserer softwaredefinierten Lösung besteht der einzige Hebel darin, unsere Software intelligenter, besser und schneller zu machen. Dies mag wie ein Nachteil erscheinen (warum nicht einfach mit proprietärer Hardware schummeln?), aber der Vorteil ist, dass wir diesen Wert und diesen Aufwand überall bekommen, nicht nur vor Ort.

Optimierung bei Qumulo bedeutet, dass wir:

  1. Schreibe immer ins Flash, Punkt. Wir beziehen niemals langsame HDDs in den heißen Pfad zum Schreiben von Daten ein.
  2. Immer alle Daten zwischenspeichern dass Sie auch in den Speicher schreiben, nur für den Fall, dass Sie gleich wieder die gleichen Daten anfordern, müssen wir nicht einmal eine Festplatte lesen oder andere Knoten nach den gleichen Daten fragen.
  3. Verschieben Sie Daten im Hintergrund auf die Festplatte, aus den Augen, aus dem Sinn, je nach Bedarf, automatisch. Betrachten Sie dies als automatisiertes Tiering zu billigerem Speicher. Wir verschieben immer die kältesten Daten, und zwar unter dem Dateisystem, auf Blockebene. Wenn Sie also den Linux-Dateibefehl immer wieder ausführen und nur die ersten 4 KB einer Datei lesen, behandeln wir diesen ersten Block als heiß und den Rest der Datei als nicht heiß. Dies maximiert die Nutzung des SSD-Cache.
  4. Probieren Sie SSD aus, wenn Sie Daten anfordern, die sich nicht im Cache befinden. Wenn es nicht auf SSD ist, lesen wir es von der HDD, aber wir beginnen auch mit dem Prefetching des nächsten Blocks in einer Datei, damit er sich bereits in unserem Speichercache befindet, falls Sie noch nicht danach gefragt haben. Wieso den? Um dich zu schlagen, bevor du danach fragst. Dies lässt das Lesen von HDD schnell erscheinen, da es vom Prefetcher maskiert wird. Wir tun dies auch, wenn Sie Dateien sequentiell in einem Verzeichnis lesen.
  5. Verschiebe Blöcke, die du ein paar Mal von HDD gelesen hast, zurück auf SSD. Wieso den? Kein Grund, es auf dem langsameren Medium zu belassen, wenn Sie weiterhin nach diesen Daten fragen. Wir bewerben es automatisch für Sie – keine Abstimmung oder Richtlinien erforderlich.
  6. Optimieren Sie unser Blockvergabesystem so dass keine Zeit auf eine Adresse zum Schreiben von Daten wartet.
  7. Besitze fast den gesamten Code-Stack für alles im Produkt, bis hin zu den Datenstrukturen und Algorithmen. Wir können eine schlechte Sortierung oder eine Hash-Map optimieren, die schlechte Cache-Linien trifft, wie es niemanden angeht. Wir haben sogar die NFS- und SMB-Implementierungen von Grund auf neu geschrieben und sind in der Lage, alles in unserem Stack von oben nach unten zu optimieren.
  8. Vollständig im Userspace ausführen, haben unseren eigenen Taskplaner, um das Wechseln des Kernel-Kontexts zu vermeiden, und erledigen alles über asynchrone E/A.

Verwandeln Sie AWS EBS sc1 in ein leistungsstarkes Speichermedium für Ihre Produktionsworkloads

Es braucht Zeit, ein Scale-out-Speichersystem wie die Dateidatenplattform von Qumulo aufzubauen. Aber der Wert, dies zu tun, zeigt. Wir verwandeln sc1, einen EBS-Volume-Typ, den Amazon nicht für „aktive Workloads“ empfiehlt, effektiv in ein leistungsstarkes Speichermedium für Ihre Produktions-Workloads. Beim 0.015 USD pro GiB-Monat und S3 zum günstigsten Preis von 0.021 USD pro GiB-Monat, EBS sc1 ist tatsächlich 28 % weniger als der S3-Standard, und das ist nur Speicher! S3-Gebühren für API-Aufrufe zusätzlich zum Speicher.

Mehr erfahren
So verwenden Sie Qumulo auf AWS

Verwandte Artikel

Nach oben scrollen