wie EBS und EFS eine Latenz im Mikrosekundenbereich erreichen

wie EBS und EFS eine Latenz im Mikrosekundenbereich erreichen

Ich habe einmal den Lese-/Schreib-Iowait in meiner EC2-Instanz überwacht, die an ein EBS-Volume angeschlossen ist. Die Ausgabe der Spalte „Iowait“ beträgt iostatslediglich 200 bis 500 us. Soweit ich weiß, handelt es sich bei EBS tatsächlich um ein Netzwerkvolume, und ich denke, die lokale Netzwerklatenz sollte bei etwa 10 ms liegen. Wie erreicht EBS diese Latenz von <1 ms?

Dieselbe Frage gilt auch für EFS. Ich habe EFS nicht getestet, aber auf der Leistungsseite wird angezeigt, dass die Leselatenz bis zu 250 µs betragen kann.

https://docs.aws.amazon.com/efs/latest/ug/performance.html#performance-overview

Antwort1

HochziehenLatenzzahlen, die jeder Programmierer kennen solltebei groben Latenzschätzungen. Nicht weil es genau ist, sondern weil es die Größenordnungen vermittelt.

Es gibt Ethernet-Switches, die Latenzen im zweistelligen Mikrosekundenbereich ermöglichen. Um zu einem Speicherknoten im selben (riesigen) Rechenzentrum zu gelangen, müssen Sie mehrere dieser Switches passieren. Hinzu kommen noch ein paar Mikrosekunden Übertragungszeit zwischen diesen Routern.

Was den Speicherstapel betrifft, schließt eine Gesamtdauer von unter einer Millisekunde Spinning Rust in der ersten Schicht aus. Festplatten-Arrays benötigen selbst unter den besten Umständen mehrere Millisekunden zum Suchen. Offensichtlich wird Solid-State-Speicher verwendet, der für einen E/A-Vorgang wiederum möglicherweise einige zehn Mikrosekunden benötigt.

Wenn man von 250 Mikrosekunden für einen Lesevorgang ausgeht, bleibt nicht viel Zeit übrig, um die verschiedenen Schichten des Speicherstapels zu durchlaufen. IP-Pakete in Blockoperationen umwandeln, diese von einem Betriebssystem ausführen lassen und das Client-Betriebssystem etwas damit machen lassen. Vermutlich ist ein erheblicher technischer Aufwand erforderlich, um Hypervisor, Betriebssystem, Treiber und Hardware zu optimieren.

Beachten Sie, dassEFS-Leistungstabellehat die Qualifikation „So niedrig wie“ wegen der erstaunlich niedrigen Latenz. Dies ist keine Service-Level-Vereinbarung. Obwohl Sie in der Praxis das schnelle Ende davon erreichen.

Beachten Sie außerdem, dass der Mehrzonenspeicher Schreibvorgänge eine Millisekunde langsamer ausführen könnte. Dies ist der Preis für die Haltbarkeit, wenn Sie Ihre Daten in mehreren Gebäuden speichern. Lediglich dieLichtgeschwindigkeit in einer 10 km entfernten Faserfügt vielleicht 50 us alleinige Ausbreitungsverzögerung hinzu. Eine unbekannte Anzahl zusätzlicher Switches auf diesem Pfad. Mehrere Zonen müssen einen Schreibvorgang bestätigen, damit dies eine bessere Haltbarkeit als eine Zone hat. Immer noch ziemlich schnell, aber nicht alle Flash-Arrays im selben Rack sind schnell.

Haftungsausschluss: Dies alles ist eine proprietäre Blackbox, die sie nicht teilen. Es ist jedoch wichtig zu verstehen, dass private Netzwerke in derselben Stadt eine mehr als 10-mal schnellere Latenz erreichen können, als Sie dachten. Mit genügend Technik.

verwandte Informationen