한국어English日本語简体中文繁體中文DeutschไทยTiếng ViệtРусскийPortuguês (Brasil)EspañolBahasa Indonesia

Game-Lag-Whitepaper › L11 Datenträger

Seek-Latenz von HDDs HDD seek latency

Ursachen-ID dk-hdd · Hauptzuständig Server-Infrastruktur (Infrastrukturteam) · Beteiligt DB-Infrastruktur (Infrastrukturteam), Server-Entwicklung (Entwicklungsteam)

In der interaktiven Fassung mit Grafiken und Experimenten öffnen →

Bei einer HDD muss sich der Schreib-/Lesekopf über die Magnetscheibe bewegen (Seek). Verstreute Daten zu lesen oder zu schreiben dauert deshalb pro Zugriff fast 10 ms.

Warum HDDs in alten Servern oder günstigem Storage → Folge Etwa 10 ms pro verstreutem Lese- oder Schreibzugriff → Auf dem Bildschirm Speichern und Laden insgesamt verzögert

Symptome
Input-Lag
Faktoren
Latenz
Wer ist betroffen
Ganzer Server
Wann
Immer
Zuständigkeit
Hauptzuständig Server-Infrastruktur (Infrastrukturteam) · Beteiligt DB-Infrastruktur (Infrastrukturteam), Server-Entwicklung (Entwicklungsteam)
Aufgaben Entwicklungsteam
Design auf überwiegend sequenzielles Schreiben auslegen.
Aufgaben Infrastrukturteam
Server/OS: auf SSDs umstellen (zuerst die Datenträger mit vielen verstreuten Lese- und Schreibzugriffen). DB-Systeme: die DB-Datenträger mit den meisten verstreuten Lese- und Schreibzugriffen zuerst durch SSDs ersetzen.
Im Graphen
Von Anfang an dauerhaft hoch · Disk-Lese- und Schreiblatenz (r_await, w_await)
Wo nachsehen
Mit lsblk -d -o NAME,ROTA prüfen, ob es eine rotierende Festplatte (HDD) ist, und r/s, w/s sowie r_await, w_await aus iostat -x 1 prüfen. Bei virtuellen Servern die Art des Datenträgers in der Spezifikation von Cloud oder Storage nachsehen
Spricht dafür
Rotierende Festplatte, und obwohl nur einige Dutzend bis rund hundert Anfragen pro Sekunde anfallen, liegen r_await und w_await dauerhaft im ein- bis zweistelligen Millisekundenbereich
Spricht dagegen
SSD, Latenz trotzdem hoch: eher volle Warteschlange (dk-iops) oder aufgebrauchte Burst-Credits (dk-burst)
Prüfmittel
Mit Infrastruktur-Tools prüfbar (ohne Spielcode)

Quellen

  1. Designs, Lessons and Advice from Building Large Distributed Systems (LADIS 2009 keynote) Google
    Ein Seek auf der Disk 10 ms, 1 MB sequenziell von der Disk lesen 20 ms
  2. Exos X18 Data Sheet Seagate
    HDD mit 7.200 U/min: mittlere Rotationslatenz 4,16 ms, 4K-Random-Reads 170 IOPS
  3. lsblk(8) — Linux manual page util-linux
    -o wählt die Ausgabespalten, zu den Spalten der Gerätetopologie gehört ROTA (rotierend oder nicht)
  4. ABI stable symbols Linux kernel
    /sys/block/(Datenträger)/queue/rotational: zeigt, ob das Gerät rotierend oder nicht rotierend ist
  5. iostat(1) — Linux manual page sysstat
    -x: r/s und w/s, r_await und w_await (durchschnittliche Bearbeitungszeit pro Anfrage einschließlich Wartezeit in der Warteschlange)

Verwandte Ursachen

Gleiche Schicht: L11 Datenträger

Ursachen aus anderen Schichten mit demselben Symptom (Input-Lag)

Karte in der interaktiven Fassung mit Grafiken und Experimenten ansehen