Suchen

Womit sich Startups beschäftigen Ein schreiboptimiertes File-System für Flash-Racks

| Autor / Redakteur: Ariane Rüdiger / Rainer Graefen

SSDs arbeiten anders als Festplatten. Allerdings berücksichtigen das viele Speichertechniken noch nicht. Weka.io hat nun ein Filesystem entwickelt, das speziell auf sehr große Datenmengen und SSD als Speichermedium zugeschnitten ist.

Firmen zum Thema

Aufbau einer Weka.io-VM
Aufbau einer Weka.io-VM
(Bild: Weka.io)

„Mit konventioneller Software holt man aus SSDs einige hundert Prozent mehr Leistung – wir können um Dimensionen mehr“, sagt Michael Raam, CEO von Weka.io. Gerade hat das junge Unternehmen einen Vice President Sales angestellt – er kommt von einem anderen Silicon-Valley-Startup, Hedvig, das ebenfalls an einer neuen Form werkelt, die Datenmassen der Zukunft zu speichern und zugänglich zu machen.

Anscheinend hat die Idee von Weka.io, sich zunächst auf eine Lösung für Flash zu konzentrieren, derzeit mehr Reiz. Das Unternehmen hat im Moment über 30 Mitarbeiter in San José (Silicon Valley) und Israel und ist für die nächsten Jahre durchfinanziert. Raam: „Wir haben 32 Millionen Dollar eingeworben.“ Das Geld kommt von diversen Venture-Capital-Firmen, aber auch Qualcomm hat die Startup-Firma für sich entdeckt.

Datenspeicherung als virtuelle Applikation

Das Produkt, das die Schwächen bisheriger SSD-Produkte durch neue Software in Gestalt eines neuartigen globalen File-Systems mit unlimitierter Kapazität ausmerzen soll, wurde ein paarmal bei Betakunden installiert. Es wird ein weit breiteres Anwendungsfeld als die bisherigen Produkte dieser Kategorie wie GPFS von IBM oder das im wissenschaftlichen Hochleistungsrechnen gern verwendete „Lustre“ haben. Gleichzeitig ist die technik maßgeschneidert für SSDs und das heißt vor allem: schreiboptimiert, da das Medium umso länger hält je seltener darauf geschrieben wird.

„Unser Management kennt die Probleme der bestehenden SSD-Lösungen aus eigener Erfahrungen und weiß genau, wo man ansetzen muss“, ist Raam überzeugt. Einige Mitglieder des Gründungsteams sind von IBM, Intel, Netapp, Papasas und anderen zu Weka.io gestoßen. Raam kommt von Sandforce, das von LSI Logic gekauft wurde und inzwischen auf einigen Umwegen bei Seagate landete.

Die Entwicklung fokussiert sich vollständig auf Software. „Wir nutzen ausschließlich Commodity-Hardware“, sagt Raam. Programmiert wird mit dem Open-Source-Nachfolger von C++, „D“, einer relativ neuen Programmiersprache.

Das von Weka.io entwickelte Erasure-Coding-Verfahren schont die SSD-Medien und bietet gleichzeitig den Daten guten Schutz.
Das von Weka.io entwickelte Erasure-Coding-Verfahren schont die SSD-Medien und bietet gleichzeitig den Daten guten Schutz.
(Bild: Weka.io)

Grundsätzlich betrachtet Weka.io die Datenspeicherung als virtuelle Applikation im Compute-Cluster, was bedeutet, dass man dafür keine separaten Geräte mehr braucht. Zur Konnektivität zwischen den Knoten eines Systems reicht Ethernet, spezielle Technologien wie Infiniband sind unnötig.

Auch wenn man sich bisher auf SSDs konzentriert, ist Weka.io auf NVMe vorbereitet. „Wir denken auch über die Speichertechnologien der Zukunft nach und haben die Software so gebaut, dass wir sie darauf anpassen können“, betont Raam. Erste Zielmärkte sind Bereiche, in denen große Mengen an Files unterschiedlicher Größe verarbeitet werden müssen. Raam führt Entertainment, Web 2.0 und Genomics an.

Neues Erasure-Coding-Verfahren

Das neue Filesystem hat mehrere Ziele: die höchstmögliche Geschwindigkeit aus der festplattenlosen Infrastruktur zu holen und die Speicherintensität bei Aufrechterhaltung der Datensicherheit zu minimieren – dies alles unter Rücksichtnahme auf die Schreibsensitivität der SSDs.

Dafür hat Wekao.io zunächst ein auf Erasure Coding beruhendes Redundanzverfahren entwickelt und patentieren lassen, das auf 18 Medien (16 plus 2 Parity-Medien) ausgelegt ist. Es erzeugt einen Schreib-Overhead von nur 150 Prozent (siehe:Tabelle) bei gutem Schutzniveau und einer Medienausnutzung von 80 Prozent. Systeme sind schon ab sechs Knoten möglich, dann liegen aber nur auf dreien Daten. Zwei der übrigen braucht man für die Parität, eine als Hotspare. Doch die angestrebten Zielmärkte arbeiten ohnehin mit größeren Systemen.

Grundeinheit der Lösung sind so genannte Knoten. Jeder Knoten besteht aus x86-Rechenpower (wobei Raam betont, man könne theoretisch auch ARM-Prozessoren nutzen) mit Linux als Betriebssystem plus einem oder mehreren integrierten SSD-Medien. Darauf läuft Weka.io mit Treibern für Posix oder NFS. Die Anwendung fokussiert sich also auf Files oder Objekte. Die Posix-Semantik wurde auf einen Compute- und Storage-Cluster in Cloud-Dimensionen angepasst, auch NFS ist aber als Zugriff möglich.

Heiße Daten in die SSD, kalte in den Objektspeicher

Je nachdem, ob es auf Leistung oder Kapazität ankommt, können mehr Rechenkerne mit wenigen angebundenen SSDs hinzugenommen oder einzelne Rechenkerne mit mehr SSDs für Speicherkapazität ausgerüstet werden. Weka.io läuft als virtuelle Maschine. Sie enthält unter anderem ein Modul, das alle im System installierten Hardwaremodule zu einer Einheit verbindet und die diversen Fileservices liefert.

Ein weiteres Modul bindet den Sekundärspeicher, einen Cloud-Objektstore an. Dabei kann das Tiering automatisch oder manuell erfolgen. Weka.io legt bei 30 Terabyte SSD 500 Terabyte Object Store zugrunde und verteilt unter anderem nach Dateigröße, Zeitstempel und weiteren Merkmalen.

Weka.io speichert auf SSDs ausschließlich Primärdaten und Metadaten. „Kalte“ Daten wandern in die Cloud, zum Beispiel in AWS S3, oder auch in eine Private-Cloud-Implementierung. Alle Daten gehören zu einem einzigen Namensraum, über den auf sie zugegriffen werden kann.

Jedes Speichermedium speichert auch Metadaten. Ob Dateien klein oder groß sind, soll die Effektivität der Speicherung nicht beeinträchtigen. Unterschiedslos werden alle Daten in Stücke (Chunks) von 1 Megabyte Größe unterteilt und dann verteilt.

Produktstart im kommenden Jahr

Die erste verkaufsfähige Produktversion der Software soll 2017 kommen – sie wird noch ohne Verschlüsselung, Kompression und Deduplizierung sein. Diese Funktionen stehen aber relativ weit oben auf der Feature-Liste. Ein weiteres Thema ist die Integration von WAN-Optimierungstechnologien, um Verzögerungen aus der Übertragung kalter Daten in die Cloud zu verringern.

Ein Proof-of-Concept wurde im Genomik-Bereich realisiert. Die Installation bestand aus einem System mit 300 Knoten und hatte insgesamt 600 Terabyte Kapazität. „Die Übertragungsleistung lag kontinuierlich bei 75 Gigabit pro Sekunde, und Weka.io lieferte kontinuierlich 7,5 Millionen IOPS. Zehnmal mehr als vergleichbare Lösungen.“

Das sind vielversprechende Daten. Wenn Weka.io es schafft, die unvermeidlichen Klippen des bei erfolgreichen Startups zu erwartenden rasanten Wachstums zu umschiffen, darf man auf die Entwicklung der Firma gespannt sein.

(ID:44392453)