Magic Pocket wird auf Shingled Magnetic Recording umgestellt Dropbox bändigt SMR-Laufwerke
Wenn Otto Normalnutzer mehr Speicherplatz braucht, tauscht er einfach die Festplatte – wenn Dropbox zusätzliche Kapazitäten benötigt, überarbeitet der Cloudstorage-Anbieter schon einmal seinen kompletten „Magic Pocket“-Stack bis hinunter zur Firmwareebene.
Anbieter zum Thema

Wer mit Exabytes an Daten umgehen muss, will das möglichst effizient und kostengünstig tun. So wundert es wenig, dass Cloudstorage-Anbieter Dropbox den Verheißungen von SMR-Laufwerken nicht widerstehen konnte. Deren Aufzeichnungsverfahren verspricht höhere Kapazitäten bei geringeren Kosten, erfordert dabei aber auch deutliche Kompromisse bei Schreibgeschwindigkeit und Zugriffszeiten. In einem Blogbeitrag hat der Hersteller jetzt dargelegt, mit welchen technischen Raffinessen er diese Herausforderungen löst.
Warum SMR anders ist
Aber eins nach dem anderen. SMR steht für Shingled Magnetic Recording. Anders als bei herkömmlichen Aufzeichnungsverfahren werden Datenspuren dabei nicht sauber getrennt nebeneinander angelegt, sondern überlappen sich teilweise. So lassen sich bis 14 TByte pro Laufwerk speichern, Schreibvorgänge verkomplizieren sich jedoch: Werden Informationen auf einer Spur geändert, zieht das auch angrenzende Daten in Mitleidenschaft, die dann mit sequentiellen Schreibvorgängen aufgefrischt werden müssen. Für eine höhere Datendichte pro Laufwerk opfert SMR damit also Performance und die Möglichkeit, willkürlich auf beliebige Daten zuzugreifen.
Diesen Umstand verschleiern als „Drive/Device Managed“ angebotene Laufwerke allerdings vor dem Host. Die Speicher puffern und bearbeiten Daten intern, agieren nach außen jedoch wie klassische Festplatten. Schickt der Host Daten in nicht sequentieller Form, werden diese intern vom Drive gepuffert und verarbeitet. „Host Aware“-Laufwerke bieten dem Host dagegen bereits beschränkte Kontrollmöglichkeiten.
Host steuert Laufwerke direkt an
Für die eigene Speicherinfrastruktur hat sich Dropbox allerdings gegen die beiden zuvor genannten Laufwerkstypen entschieden und schließlich auf „Host Managed“-Drives gesetzt. Die werden komplett vom Host gesteuert, der dann auch sequentielle Zonen zwingend selbst verwalten und Daten eigenständig cachen muss.
Betrachtet man die „Magic Pocket“-Architektur genauer, erscheint dieser Entschluss geradezu folgerichtig, denn: Dropbox speichert Nutzerdaten in Blöcken, die hintereinander gereiht und nachträglich nicht mehr geändert werden. Daten sammelt Dropbox hierfür aber zunächst in einem Pufferspeicher. Denn – so hat der Anbieter herausgefunden – größere Informationshappen können performanter auf SMR-Laufwerke geschrieben als zahlreiche, kleinere Portionen.
Die als Blockspeicher verwalteten Laufwerke werden von jeweils einem Daemon gesteuert, der das komplette Datenlayout auf dem Datenträger verwaltet. Weil die Lösung auf ein Dateisystem verzichte, lassen sich Bewegungen des Schreib/Lese-Kopfes sowie I/O-Prozesse gezielt optimieren. Für die Kommunikation mit den Laufwerken greift Dropbox auf die Bibliothek Libzbc zurück.
Für die Routinen zur direkten Zuweisung von Speicher und zur Garbage Collection wechselte Dropbox aus Performancegründen von der Programmiersprache Go auf Rust. Nichtsdestotrotz musste der Anbieter neben der Software auch die eigene Hardware neu überdenken.
Hardware-Architektur wird angepasst
Das beginnt beim Chassis. In vier Höheneinheiten bringt der Anbieter hier nach eigenen Angaben circa 100 Laufwerke im 3,5-Zoll-Format unter; pro Rack werden bis zu acht voll konfigurierte Chassis verbaut. Verglichen zur bisherigen Ausstattung vervielfache sich mit SMR die verfügbare Blockzahl um den Faktor 2,29.
Entsprechend hat der Anbieter CPU-Leistung und RAM-Ausstattung aufgestockt. Zudem hinterfragten die Techniker allerdings auch die Notwendigkeit der bisher von Magic Pocket verwendeten RAID-Controller. Deren Cache sollte ursprünglich Latenzen bei Schreibvorgängen reduzieren; dafür sorgten die Komponenten für einen gehörigen Overhead, der sogar individuelle Firmware-Korrekturen notwendig machte. Nun hat Dropbox die Architektur mit Host Bus Adaptern (HBA) vereinfacht. Positivier Nebeneffekt: Weil keine „RAID 0“-Verbünde mehr eingerichtet werden müssen, lassen sich die Speicher Systeme in einem Viertel der bisher benötigten Zeit provisionieren – statt zwei Stunden dauert der Vorgang nun 30 Minuten.
Ganz problemlos verlief anscheinend aber auch der Wechsel auf HBAs nicht. So hatten sich beispielsweise die HBA-Extender als inkompatibel mit SMR-Anwendungen herausgestellt – gemeinsam mit jeweiligen Hardwareausrüstern habe man dann entsprechende Firmware-Korrekturen durchgeführt.
Den weggefallenen Cache der RAID-Adapter kompensiert Dropbox derzeit mit Solid State Drives. Mit wachsender Speicherdichte werde man in Zukunft allerdings die Grenzen des SATA-Protokolls erreichen und bei künftigen Generationen der Speicherinfrastruktur Caches auf NVMe-Basis umsetzen.
Auch beim Netzwerkanschluss wurde aufgestockt, um mit den wachsenden Bandbreiten mitzuhalten. Für die SMR-Chassis mit ihren Kapazitäten bis zu 1,4 PByte verwendet Dropbox nach eigenen Angaben Network Interface Controller (NIC) mit 50 Gbit/s sowie ein Clos Fabric Network mit Uplinks von 100 Gbit/s.
Ausblick
Bis 2019 will Dropbox circa ein Viertel seiner „Magic Pocket“-Infrastruktur mit SMR-Festplatten bestückt haben. Die beim Prozess entwickelte Test-Software will das Unternehmen in den kommenden Monaten als Open Source zur Verfügung stellen.
In naher Zukunft wird sich der Clouddienstleister auf „Density Design“ konzentrieren und weiter nach effizienten Ansätzen suchen, um große Traffic-Volumina zu bewältigen. Dabei betrachte man auch die Möglichkeit potentieller Defekte der mit Daten nur so vollgepackten Systeme.
(ID:45522808)