Speicherklasse Speicher im Speicher - wenn Sie ihn noch schneller benötigen

Das Bild drückt nicht die Position des Unternehmens aus und ist eine persönliche Vision des Autors, die nicht unbedingt mit dem Thema dieses Textes zusammenhängt. Amen Wie Sie sich wahrscheinlich erinnern, wurde NRE seit langem in das Thema neue Arten von Data Warehouses (natürlich The Machine ) und in die Optimierung des Zugangs zu Speichereinrichtungen (unsere Mitgliedschaft im Gen-Z-Konsortium ) investiert.

Ziel dieser Bewegung ist es, die Arbeit der Anwendungen unserer Kunden zu beschleunigen. Darüber hinaus ist diese Bewegung mehrstufig: Während die völlig neue Architektur der The Machine Computing-Systeme (die sogenannte speicherzentrierte Architektur) geschmiedet wird, verstehen wir, dass wir jetzt beschleunigen müssen. Mal sehen, was heute getan werden kann und was morgen bei HPE erscheinen wird. Tipp - Wir werden über die starke Beschleunigung unseres 3PAR- und Nimble-Speichers durch intelligentes und relativ kostengünstiges Caching auf Speicherklassenspeicher (SCM) in Form von Intel Optane sprechen.

Zunächst legen wir die Grenzen des untersuchten Problems fest. In diesem Beitrag interessieren wir uns nicht für Hochleistungsrechnen mit eigenen Besonderheiten und nicht für Aufgaben, die ausschließlich serverinternen schnellen Speicher erfordern. Letzteres ist zweifellos auch ein Thema für Intel Optane und SCM im Allgemeinen, aber solche Aufgaben sind häufig spezifisch, für die Virtualisierung und dementsprechend für die Konsolidierung schlecht zugänglich. Wir werden über Aufgaben und Anwendungen sprechen, die mit externen 3PAR-, Nimble- oder MSA-Speichersystemen gut zurechtkommen (obwohl wir MSA auch nicht berühren).

Wie können Sie also die Leistung einer virtualisierten Anwendung verbessern, die mit Daten auf einem externen Speichersystem arbeitet:
  • Sehen Sie, was die Anwendung jetzt zurückhält. Vielleicht geht es überhaupt nicht um Speicherung, sondern darum, auf den Prozessor in der internen Logik des Arbeitens mit Daten in suboptimalen schriftlichen Anforderungen zu warten.
  • Wenn die Verzögerungen beim Warten auf Daten (IO) groß sind, sollten Sie zunächst prüfen, ob alle Empfehlungen zum Konfigurieren des Application-OS-Treiberpakets (SCSI, HBA usw.) erfüllt sind
  • möglicherweise der Fall im SAN (Ethernet, FC);
  • Vielleicht ist es noch im Speichersystem. Wo lagern? In der Controller-Hardware (was ist mit dem Cache, was ist die Prozessorlast), im Controller-Betriebssystem und den Treibern, im Datenbus, auf Festplatten ...

Möglicher Gedankengang: Oh, sicher - die Räder! Alles andere ist kompliziert und ich möchte nicht anfassen, aber mit den Festplatten werden wir es versuchen. Was wir haben, ein Hybrid - na ja, dann brauchen wir All-Flash. Haben wir schon All-Flash? Und was ist besser? Wir sehen Werbung für seriöse Marken:

Bild

Alles ist klar, wir speichern mit "NVMe-Festplatten". Warten Sie, wie viel kostet es? Und Sie müssen ein neues Speichersystem kaufen, ich kann mein aktuelles nicht aktualisieren? Nun, du musst ...

Bild

Aber ist es auch anders möglich? Wir vom NRE glauben, dass dies nicht nur möglich, sondern auch notwendig ist. Und hier ist warum:

Bild

Tatsache ist, dass die meisten derzeit auf dem Markt befindlichen NVMe-SSDs denselben Medientyp (NAND-Flash) haben, der nur nicht über das SAS-Protokoll (Serial Attached SCSI), sondern über das neue NVMe-Protokoll mit dem Controller verbunden ist. Das neue Protokoll ist zweifellos schön, und hier sind einige Fakten:

  • 64.000 Warteschlangen mit jeweils 64.000 Threads verfügbar - IOPS über dem Dach
  • Controller direkt an die CPU - geringere CPU-Last
  • Jeder Prozessorkern sieht jede SSD direkt - geringe Latenz


Durch vollständiges Ersetzen des SCSI-Protokolls von der Anwendung bis zu den Festplatten kann die Zugriffslatenz erheblich reduziert werden. Aber was bieten uns Vermarkter heute? "NVMe-Festplatten." Das heißt, Die gesamte Kette zum Speichercontroller selbst bleibt gleich - SCSI. Anschließend packt der Controller SCSI einfach in NVMe neu und kommuniziert so mit den angeschlossenen NAND-SSDs.

Das Ergebnis in der obigen Tabelle ist die minimale Verstärkung der Verzögerung. Obwohl der Gewinn an Spitzen-IOPS wirklich sehr spürbar sein kann. Die traditionelle Analogie: Benötigen Sie ein Auto, das schnell beschleunigen kann, um in 5 Sekunden zu überholen, oder ein Auto, das unter idealen Bedingungen in 10 Minuten auf 300 km / h beschleunigen kann? Beide Optionen sind gut, aber häufiger wählen sie die erste.

Die Realität ist, dass der Gewinn von NVMe NAND für reale Anwendungen heute kaum spürbar ist und unserer Meinung nach den Unterschied zwischen Preis und Verlust der verfügbaren Kapazität im Vergleich zu SAS-SSDs überhaupt nicht wert ist.

Was HPE bietet, anstatt einfach die „letzte Meile“ von SAS zu NVMe zu ersetzen, ist die Verwendung völlig neuer Intel Optane-Laufwerke, die über NVMe als Lese-Cache in unseren 3PAR- und Nimble-Speichercontrollern verbunden sind.

Bild

(Sowohl das Arithmometer als auch der Administrator auf dem Foto heißen Felix, aber der Unterschied ist riesig!)

Warum wir uns für diesen Weg entschieden haben:

  • Auf diese Weise können wir unseren Kunden anbieten, bereits gekaufte Speichersysteme zu aktualisieren (insbesondere 3PAR 9450, 20450, 20850 und Nimble AF60 und AF80 - alle Top-All-Flash-Systeme).
    Bild
  • Auf diese sehr einfache Weise (durch Hinzufügen einer Erweiterungskarte mit Optane an Bord zu jedem Controller) verringern wir die maximale Verzögerung um das 15-fache und den Durchschnitt um 30-40% (IOPS wachsen ebenfalls, na gut). Und vor allem springt die Verzögerung nicht vom Marketing " von 0,2 ms!" ad infinitum (Marketing gehört nicht uns, zitiere ich nur), aber es wird viel stabiler:
    Bild

    (Verzögerungswerte basierend auf internen HPE-Tests)
  • Genauer gesagt, was von einer solchen Reduzierung der Array-Latenz für Ihr Lieblings-Oracle zu erwarten ist, zum Beispiel: Laut unseren internen Tests wird die E / A-Wartezeit um durchschnittlich 37% reduziert und die SQL-Auswahl um 27% beschleunigt.
  • Warum wird der Cache gelesen und nicht geschrieben? Denn sowohl in 3PAR als auch in Nimble wird DRAM seit vielen Jahren als Schreibcache verwendet (nichtflüchtiger NVRAM in Nimble). Es ist wiederum um ein Vielfaches schneller als NVMe-Geräte und wird es bis zum Aufkommen von Gen-Z oder ähnlichen neuen Protokollen bleiben. Das heißt, Eine Aufzeichnung ist nicht erforderlich, um über NVMe zu beschleunigen.
  • Warum Intel Optane? Denn dies ist der neueste Medientyp, obwohl er in der Dichte immer noch hinter dem NAND liegt, aber um eine Größenordnung schneller reagiert. Außerdem verfügt Optane über eine nahezu unerschöpfliche Ressource zum Umschreiben. Im Allgemeinen sind bei geladenen Systemen die Transaktionskosten bei Optane viel niedriger als bei NAND NVMe. Und der Cache ist eine von allen Seiten sehr geladene Ebene. Heiße Daten werden von einer langsameren Ebene darauf kopiert (daher wird eine Ressource benötigt). Sie werden daraus gelesen, wenn keine Daten im NVRAM-Cache des Controllers gefunden werden (daher ist eine schnelle Antwort erforderlich, damit das Überschreiten des NVRAM-Cache im Vergleich zu nicht wie eine Reise in den Hypermarkt aussieht mit einem Ausflug in den Laden in der Nähe des Hauses).
  • Warum nicht doch NVMe-Festplatten einlegen? Seien Sie sicher, es zu setzen! Das Nimble-Gehäuse ermöglicht beispielsweise die Installation solcher Festplatten jetzt (die Rückwandplatine ist dafür bereit), aber wir verkaufen solche Festplatten noch nicht für Nimble, da es noch früh ist. Der SCM-Cache bietet jetzt eine mehrfache Leistungssteigerung für relative Pennies. Verwenden wir es also, während das NVMe-NAND noch billiger ist, das NVMe-Protokoll selbst sich noch entwickelt (Multi-Pathing erschien erst im März 2018 im Standard und bleibt immer noch weit hinter der SCSI-Stabilität zurück), und im Allgemeinen ist das NVMe-Ökosystem von der Anwendung auf die Festplatten immer noch nicht entwickelt (NVMe over Fabric ging in den Kindergarten, Hersteller streiten darüber, wie es aussehen soll, Treiber haben nur minimale Funktionen, sodass Sie nicht zu viel überschreiben, wenn sich alles beruhigt).
  • und auch, weil wir wirklich gerne alles zwischenspeichern. Hier ist ein Beispiel für Nimble:


Bild

Ja, kennen Sie HPE InfoSight übrigens ? Mit diesem Tool wissen Sie immer, wo Sie nach einer Verzögerung suchen müssen. Zum Beispiel so:

Bild

(Wenn Sie eine Verzögerung feststellen, wenden Sie sich bitte an unseren Glauben.)

Es ist Zeit zusammenzufassen: Wenn Sie stolzer Besitzer von 3PAR 9000 oder 20.000 sind, können Sie jetzt 3PAR 3D Cache auf Basis von Intel Optane bestellen. Wenn Sie sich das Nimble All-Flash-Array genau ansehen, nehmen Sie es, weil Es ist eine verlässliche Basis für den Schutz zukünftiger Investitionen. Beginnen Sie jetzt mit der SAS NAND SSD, schließen Sie später den SCM-basierten All Flash Turbo Cache an und ändern Sie die Laufwerke in NVMe.

3PAR und Nimble SCM Cache

Als Referenz:

Source: https://habr.com/ru/post/de432306/


All Articles