Hintergrund: Die Scality Cloud Storage Technologie

Bei Scality handelt es sich um ein Storagesystem, welches auf einem Key/ Value Store basiert und darüber hinaus über umfangreiche Möglichkeiten verfügt, weitere Metadaten zu verwalten. Scality baut dazu auf drei Konzepte auf, die im folgenden kurz erläutert werden.

Ring

Der Kern der gesamten Scality Technologie ist die patentierte RING Technologie, die für die gesamte Verwaltung des Speichers und der Bereitstellung der gespeicherten Daten zuständig ist. Inspieriert durch die Peer-to-Peer Technologie wurde sie entwickelt, um Anbietern die sichere Bereitstellung von Daten bzgl. Verfügbarkeit und Zuverlaässigkeit zu gewährleisten. Ein RING besteht aus einer Anzahl von Nodes, typischerweise handelsübliche Standardserver. Jeder Node ist dabei für seinen eigenen Teil des gesamten Storage-Puzzle verantwortlich, wobei jeder Node in seiner Funktionalität komplett gleichwertig ist. Das bedeutet, dass ein Node ohne weiteres entfernt werden kann oder eine neuer Node hinzugefügt und vom System automatisch und ohne Unterbrechnung des Gesamtsystems integriert wird. Darüber hinaus ist keine Datenbankmaster oder ein Verzeichnisdienst erforderlich. Jeder Node überwacht und sorgt automatisch für die Replikation und Balance der Last, wodurch das Gesamtsystem über ein vollständiges Selbstheilungssystem verfügt.

Connectors

Ein Connector ist für die Kommunikation mit den Anwendungen zuständig. Hier stehen bereits mehrere Accessors u.a. für HTTP REST, RS2, Zimbra, Open-Xchange, Dovecot zur Verfügung. Des Weiteren können mit den API Tools von Scality weitere Accessors für die eigenen Bedürfnisse entwickelt werden.

BizIOD

BizIOD ist ein spezieller IO Daemon der von Scality entwickelt wurde um direkt mit spezifischer Speicherhardware zu kommunizieren. Der Daemon unterstützt dazu eine Vielzahl bereits existierender Speichersysteme. Dazu gehören AS, SCSI, SATA, or network attached – iSCSI, Fiber Channel, NFS v3 and NFS v4, Dispersed Storage usw.


So arbeitet Scality

Jedes Speichern oder Abrufen eines Objekts durchläuft einen sogenannten "Accessor". Der Accessor ist in der Nähe der Anwendung angesiedelt und entscheidet in Abhängigkeit von Daten-Attributen intelligent, wie die jeweilige Anfrage zu bearbeiten ist. Ferner entscheidet der Accessor darüber, wie die Daten bereitgestellt werden. Eine große Filmdatei würde beispielsweise gestreamt werden.

Ein Accessor kontaktiert einen Knoten des RINGS. Dabei ist es egal, welcher Knoten angesprochen wird. Der angesprochene Knoten empfiehlt den nächsten zu kontaktierenden Knoten, sofern er nicht selber Kenntnis über das Objekt besitzt. Das Protokoll ist so konzipiert, dass ein Hop für einen 10 Knoten-RING benötigt wird, zwei Hops für einen 100 Knoten-RING und drei Hops für 1000 Knoten RING benötigt werden. Jeder Knoten kann in der Regel 10-50 TB Speicherkapazität verwalten. Innerhalb von drei Hops können so 50 Petabyte mit maximal 20 ms Latenz auf einem typischen Gigabit-LAN adressiert werden.

Es ist weiterhin ein Caching von häufiger genutzten Daten durch hinzufügen eines Tier 2 zu erzielen. Ein RING-Knoten steuert dann, welche Objekte ausgelagert werden sollten.Das Ringsystem kann so eingestellt werden, das Daten nie gelöscht werden und unterstützt ebenso ein Wiederherstellen (undelete) von Daten.

Tier 2 Speicher kann durch hinzufügen eines RING-Subsystems erreicht werden. Dieses RING Sub-System besitzt kann uns sollte eine andere Hardwarekonfiguration besitzen, wie z.B. ein NAS-System.

Quelle: http://scality.com