Fusion-io veröffentlicht angeblich APIs für Flash-Operationen
Der Hersteller von Flash-Speicherkarten will drei Schnittstellen unter einer Open-Source-Lizenz veröffentlicht haben. Dabei scheint es jedoch vor allem um Marketing zu gehen.
- Christian Kirsch
Drei wichtige APIs für den optimierten Zugriff auf Flash-Medien will der SSD-Hersteller Fusion-io anlässlich der Open Source Convention (OSCON) veröffentlicht haben. Eine erlaube atomic writes, wie sie aktuelle Versionen der MySQL-Ableger MariaDB und Percona verwenden. Eine weitere ermögliche den effizienten Einsatz von Flash-Medien als Swap-Devices unter Linux, und die dritte biete ein Interface für Schlüssel-Wert-Speicher wie memcached. Zu den Lizenzbedingungen macht Fusion-io keine Angaben.
Bei den für atomare Schreiboperationen zuständigen NVM Primitives findet man jedoch keinen Code, sondern nur eine Schnittstellen-Definition. Source-Code sei herstellerspezifisch, heißt es dort. Der von Fusion-io beim Standardisierungsgremium INCITS eingereichte Vorschlag zur Normierung von atomic writes ist dort nur nach Anmeldung und Zustimmung zu Patentvorschriften zugänglich.
Eine Rückfrage bei den Entwicklern von MariaDB ergab, dass sie lediglich ein weiteres Flag für den System-Aufruf ioctl verwenden, um das atomare Schreiben zu aktivieren. Einen Zusammenhang zu den NVM Primitives, wie ihn die Mitteilung von Fusion-io nahelegt, gebe es nicht. Nutzen lasse sich die Technik bisher nur mit dem Dateisystem DirectFS von Fusion-io, das Teil eines SDK sei. Ein Blick in die MariaDB-Quellen bestätigt das: Sie enthalten keine Aufrufe mit dem Präfix nvm_, das die Fusion-io-APIs verwenden. Sein SDK wiederum kündigte der Hardware-Hersteller schon 2012 an, es ist jedoch auf seiner Website nicht zu finden. Downloads gibt es dort nur für Kunden mit einem Wartungsvertrag.
Den Quellcode für die beworbene Schlüssel-Wert-API will Fusion-io am 30. August 2013 veröffentlichen, zurzeit gibt es nur Dokumentation und Beispiele dafür. Die Patches für die Auslagerung von Swap auf Flash-Devices wiederum sollen in einem Linux-Kernel 3.6.0 stecken (aktuell ist Version 3.6.10), den Fusion-io schon vor Monaten auf Github veröffentlicht hat. Eine Beschreibung zu den Änderungen oder eine Übersicht über die Patches war nicht zu entdecken. (ck)