•  untoreh-light

Verteilte Dateisysteme

Eine Zusammenfassung verteilter Dateisysteme

Ziele

Verteilte Dateisysteme?

EIN verteiltes Dateisystem , im Allgemeinen bieten a im Idealfall POSIX kompatible Dateisystemschnittstelle. Dies ist der wichtigste Teil seiner Definition, da der Aufbau eines Clusters von Knoten, die Daten auf verteilte Weise enthalten, auf viele verschiedene Arten erreicht werden kann, aber der Aufbau eines Knotens, der Zugriff auf eine verwendbar Dateisystemschnittstelle ist eine Herausforderung. Ein Dateisystem wird normalerweise als lokal und daher setzen viele Anwendungen einen schnellen Zugriff darauf voraus, ohne mögliche Latenzprobleme zu berücksichtigen, die auf einem Dateisystem auftreten könnten, das von entfernten Daten unterstützt wird. Nur sehr wenige Anwendungen unterscheiden zwischen lokalen und entfernten Dateisystemen.

Das Austauschen eines Dateisystems durch ein verteiltes kann als eine Form von Rückwärtskompatibilität ...für den Fall, dass Sie eine Anwendung in einer Cloud-Umgebung bereitstellen möchten, die für ihre Datenschicht auf Dateisystemzugriff angewiesen ist, muss die Cloud eine Dateisystemschnittstelle bereitstellen, die sich beliebig auf Maschinen replizieren kann. In einem Einzelbenutzerfall kann es jedoch auch als eine Möglichkeit angesehen werden, den Verwaltungsaufwand zu reduzieren ... anstatt Backups für Daten von jedem einzelnen Server, den Sie ausführen, zu verfolgen, können Sie den Zustand des netzwerkbasierten Dateisystems verfolgen und Backups planen darauf.

Wenn Sie keinen strikten Zugriff auf die Semantik von Dateisystemen benötigen, ist eine verteilte Objektspeicherschnittstelle einfacher und als tragbar und Universal- als Dateisystem mit geringerer Synchronizitätsbelastung für das Netzwerk, da ein Objektspeicher per se keine Metadaten enthält. Einige Objektspeichersoftware bietet eine darauf aufbauende Dateisystemschnittstelle.

Zusammenfassen

Da unser Ziel ist nicht Big Data ignorieren wir Lösungen wie HDFS.

Hier ergeben einige Benchmarks eine Tabelle, sie decken nicht alle Dateisysteme ab und können an dieser Stelle veraltet sein, und in derf2fs Ergebnis-Caching könnte durchgerutscht sein :)

Bandbreite

FS seq rread rrw files create read append rename delete
raw 78793 1.0409e6 89958 179483 17300.0 23550.0 14408.0 4677 5373
zfs 102121 1.3985e6 92391 198410 29180.0 4470.0 18980.0 4695 8468
f2fs 2.064e6 1.455e6 101674 184495 28320.0 10950.0 16890.0 4233 3912
xtreemefs 159310 29117 29468 1690 510.0 1190.0 520.0 274 330
glusterfs 178026 17222 18152 5681 4380.0 7620.0 3110.0 413 1076
beegfs 79934 103006 85983 24867 9830.0 12660.0 10470.0 2889 3588
orangefs 330781 54735 41611 5523 5120.0 7020.0 6130.0 638 1989

IOPS

FS seq rread rrw files create read append
raw 76 266440 22489 44870 4430 6028 3688
zfs 99 358000 23097 49602 7470 1146 4860
f2fs 2064 372524 25418 46123 7250 2803 4325
xtreemefs 155 7279 7366 422 131 306 134
glusterfs 173 4305 4537 1420 1123 1951 798
beegfs 78 25751 21495 6216 2518 3242 2682
orangefs 323 13683 10402 1380 1310 1979 1571

Ressourcen

FS CPU (Server) CPU (Client) RAM (Server) RAM (Client)
xtreemefs 100 25 300 201
glusterfs 100 50 92 277
beegfs 80 80 42 31
orangefs 15 75 60 20

Daten

Hier sind die Benchmark-Daten

Die sysctl-Knöpfe wurden auf maximalen Durchsatz abgestimmt, aber sie sollten wohl nutzlos sein und wahrscheinlich die Benchmarks verzerren, da diese Knöpfe in einem heterogenen Netzwerk nicht immer angewendet werden, und trotzdem sind sie es netzwerkabhängig , so dass selbst bei ihrer Anwendung andere Engpässe bestehen können.

Zusätzliche Vergleiche, von Wikipedia, aus Algen.

Post-Tags: