GlusterFS vs. Ceph: die beiden Face-to-Face-Speichersysteme
Verteilte Speichersysteme sind die Lösung zum Speichern und Verwalten von Daten , die nicht auf einen herkömmlichen Server passen. In diesem Sinne ist die Größe nicht das einzige Problem, aber die klassischen Dateisysteme mit ihrer Struktur in Ordnern unterstützen auch keine unstrukturierten Daten.
- Große Datenmengen speichern: GlusterFS und Ceph machen es möglich
- Hohe Verfügbarkeit ist der Schlüssel
- Kurze Präsentation von GlusterFS
- Wie funktioniert GlusterFS?
- Kurze Präsentation von Ceph
- Wie funktioniert Ceph?
- Vergleich: GlusterFS vs. Ceph
- Wann sollten Sie jedes System verwenden?
Große Datenmengen speichern: GlusterFS und Ceph machen es möglich
Wenn wir über Big Data oder Big Data sprechen , ist die zu verwaltende Datenmenge zu Beginn des Projekts nicht bekannt. Daher müssen Systeme mit zusätzlichen Servern , die nahtlos in das jeweilige Speichersystem integriert werden können, problemlos erweitert werden können, während sie weiterhin funktionieren . Das sogenannte verteilte Dateisystem (verteiltes Dateisystem) wird dem Benutzer als einfacher Ordner eines herkömmlichen Dateisystems angezeigt, so dass diese Person nicht ahnt, dass sich die einzelnen Daten oder sogar Teile davon auf Servern befinden können anders, die vielleicht in geografischen Punkten weit voneinander entfernt sind. Da sowohl GlusterFS als auch Ceph bereits Softwareschichten in Linux-Betriebssystemen sind, sind keine zusätzlichen Hardwarefunktionen erforderlich . Linux funktioniert auf jedem Standardserver und ist mit allen gängigen Festplatten auf dem Markt kompatibel.
Hohe Verfügbarkeit ist der Schlüssel
Hochverfügbarkeit ist ein wichtiges Problem bei verteilten Speicherlösungen: Hardwareausfälle sollten so weit wie möglich vermieden werden, und die Software, auf der das System ausgeführt wird, sollte nicht unterbrochen werden, wenn neue Komponenten hinzugefügt werden oder wann immer Wartungsarbeiten sind erforderlich. Wichtige Metadaten können nicht an einem zentralen Ort gespeichert werden, sondern müssen dezentral zugänglich sein, und es sollten keine Elemente ohne Redundanz belassen werden. Bei einem Serverausfall darf niemals das gesamte System gefährdet werden. GlusterFS und Ceph sind Systeme, mit denen Daten aus Big-Data- Projekten im selben System gehostet und von dort gefiltert werden können. Beide können fast beliebig erweitert werden, basieren jedoch auf unterschiedlichen Ansätzen .
Der Begriff Big Data ( Big Data , Massive Data) bezieht sich auf Mengen, eher Massen von Daten, die sehr groß, komplex und wenig strukturiert sind, wie sie beispielsweise in bestimmten Sensoren für wissenschaftliche Zwecke (z. B. GPS-Satelliten) oder in meteorologische oder statistische Systeme. Im Bereich Big Data spielen neben der Speicherung eine effiziente Suche und eine systematische Organisation von Daten eine Schlüsselrolle.
Kurze Präsentation von GlusterFS
GlusterFS ist ein verteiltes Dateisystem mit modularem Aufbau, bei dem mehrere Server über ein TCP / IP-Netzwerk miteinander verbunden sind. Da es sich um ein POSIX-kompatibles System (Portable Operating System Interface) handelt, kann GlusterFS problemlos in Linux-Serverumgebungen integriert werden , ebenso wie FreeBSD, OpenSolaris und macOS, die ebenfalls POSIX-kompatibel sind. Die Integration in Windows-Umgebungen ist derzeit jedoch nur indirekt über einen Linux-Server möglich, der als Gateway fungiert .
Wie funktioniert GlusterFS?
GlusterFS begann als klassisches dateibasiertes Speichersystem. Später wurde es objektorientiert und bei der Änderung wurde besonderes Augenmerk auf die Fähigkeit gelegt, ordnungsgemäß in die bekannte OpenStack-Open-Source-Lösung integriert zu werden. Im Hintergrund arbeitet GlusterFS weiterhin mit Dateien: Jeder Datei wird ein Objekt zugewiesen, und die Verbindung zwischen ihnen wird durch Hardlinks im Dateisystem hergestellt. Für den Benutzer wird kein dedizierter Server angezeigt , er verfügt jedoch über eigene Schnittstellen zum Speichern seiner Daten in GlusterFS, das als einzelnes System dargestellt wird.
Vorteil | Nachteile |
---|---|
Einfache Integration in Linux-Systeme | Integration in Windows-Systeme nur indirekt |
POSIX-kompatibel | |
Kompatibel mit FUSE (Dateisystem im User Space) |
Kurze Präsentation von Ceph
Die Open Source Distributed Storage- Lösung von Ceph ist ein objektorientierter Speicher, der auf binären Objekten basiert und somit die starren Blockstrukturen herkömmlicher Datenträger vermeidet. In Bezug auf die Hardware verwendet Ceph auch Festplatten, aber ein Algorithmus ist für die Verwaltung der Binärobjekte verantwortlich , die in viele Teile unterteilt und auf viele Server verteilt sind, dann aber wieder vereinheitlicht werden.
Wie funktioniert Ceph?
Alle Komponenten arbeiten dezentral. Alle OSDs (Object Based Storage Device) haben die gleichen Rechte. Auf diese Weise können beliebig viele Server mit ihren unterschiedlichen Festplatten miteinander verbunden werden, um ein einheitliches Speichersystem zu bilden . Über drei wichtige Schnittstellen bietet Ceph verschiedene Möglichkeiten, es in die vorhandene Systemumgebung zu integrieren: CephFS als Linux-Dateisystemtreiber, RADOS Block Devices (RBD) als Linux-Gerät, das direkt integriert werden kann; und RADOS Gateway, kompatibel mit Swift und Amazon S3.
Vorteil | Nachteile |
---|---|
Einfache Integration in alle Systeme, unabhängig vom Betriebssystem | Schlechte Qualität der Dateisystemfunktionen |
Blockorientiertes Gerät für Linux | Erhöhter Einarbeitungsaufwand für brandneue Speicherstrukturen |
CephFS-Dateisystem für Linux | |
Amazon S3-Schnittstelle | |
Nahtlose Integration mit der Keystone-Authentifizierung | |
FUSE-Modul (Dateisystem im Benutzerbereich) zur Unterstützung von Systemen ohne CephFS-Client |
Vergleich: GlusterFS vs. Ceph
Da es zwischen GlusterFS und Ceph mehrere technische Unterschiede gibt , gibt es keinen klaren Gewinner . Im Prinzip ist Ceph ein objektbasiertes Speichersystem für unstrukturierte Daten, während GlusterFS auf blockbasierten Geräten baumförmige Dateisysteme verwendet. GlusterFS stammt aus einem hocheffizienten , dateibasierten Speichersystem , entwickelt sich jedoch zunehmend objektorientiert. Ceph wurde jedoch ursprünglich als Binärdatei für Speichergeräteobjekte ( Objektspeicher ) entwickelt , nicht als klassisches Dateisystem. Dies kann zu Schwachstellen bei typischen Vorgängen herkömmlicher Dateisysteme führen.
GlusterFS | Ceph |
---|---|
Besser bei Dateisystemen | Besser bei der Objektspeicherung |
Schnellerer Speicheralgorithmus | Bessere Leistung auf einfacher Hardware |
Benötigt keinen zentralen Metadatenserver | Einfache Integration in alle Systeme, unabhängig vom Betriebssystem |
Weniger Komplexität | Blockorientiertes Gerät für Linux |
Am besten geeignet zum Speichern großer Datenmengen (ab ca. 4 MB pro Datei) | Einfachere Anpassung an Kundenbedürfnisse |
Eher geeignet für Dateien mit sequentiellem Zugriff | Kompatibel mit RADOS |
Wann sollten Sie jedes System verwenden?
Ceph funktioniert dank seiner vielfältigen Schnittstellen gut in heterogenen Netzwerken , in denen nicht nur Linux, sondern auch andere Betriebssysteme verwendet werden. Die Stärke von GlusterFS ist stattdessen die Speicherung großer Datenmengen im herkömmlichen Format sowie großer Datenmengen . Da Ceph von Anfang an als Open Source- Lösung entwickelt wurde , war es in der Vergangenheit in vielen Fällen einfacher zu verwenden, bis auch GlusterFS Open Source wurde. Ein sehr relevanter Anwendungsbereich für verteilte Speichersysteme sind Cloud-Dienste. In diesem Sinne ist OpenStack eines der wichtigsten Softwareprojekte, das Architekturen für Cloud Computing anbietet. Sowohl GlusterFS als auch Ceph funktionieren mit OpenStack gleich gut.