Was bringen PCIe-Flash-Technologien im Speicherumfeld?
Leserfrage: Gerade im Big-Data-Umfeld scheint Flash-Technologie immer wichtiger zu werden. Gerade neu angekündigt wurde der VFCache von EMC. Was bringen einem generell diese Flash- oder PCIe-Flash-Technologien im Speicherumfeld und wie unterscheiden sie sich von Lösungen wie denen von Fusion-IO?
Antwort Doc Storage:
Die Speicherhersteller können ihre Arrays heute noch so schnell machen, beispielsweise unter Verwendung von Flash-Laufwerken oder auf Flash aufgebauten Caching-Modulen, sie können jedoch einen Faktor kaum oder gar nicht beeinflussen: das Netzwerk. Es ist egal, ob die Daten über Ethernet oder FC-Anschlüsse transportiert werden. Die Latenzen, die durch den Weg vom Speichersystem zum Rechner erzeugt werden, lassen sich auf herkömmlichem Wege nicht aus der Welt schaffen. Und hier kommt einiges zusammen.
Die Anwendung fordert einen Block an, diese Anforderung geht von der CPU über den rechnerinternen Bus an den HBA, von hier über einen oder mehrere Switche an das Speichersystem und dort über den Cache an die Laufwerke im Backend. Und natürlich den ganzen Weg auch wieder zurück. Im Durchschnitt kostet das für jeden Lesevorgang eine bis acht Millisekunden, für jeden Schreibvorgang gar bis zu elf Millisekunden. Egal, wie schnell das Speichersystem arbeitet.
Diesem Problem widmen sich nun immer mehr Hersteller. Die Lösung scheint – oh Wunder – mit rechnerinternen Speichern gefunden zu sein. Diese werden direkt auf dem PCIe-Bus installiert und kommunizieren somit ohne weitere Verzögerungen mit der CPU. Die verwendeten Flash-Karten zeigen dabei Leselatenzen von zirka 100 Mikrosekunden. Ein Nebeneffekt sind die wesentlich höheren Transaktionsraten, die im Bereich jenseits der zehnfachen Leistung eines Standardarrays mit SSD-Laufwerken liegen.
Im Wesentlichen liegt der Unterschied in den Lösungen von EMC und Fusion-IO darin, dass EMC keine Änderungen am eigentlichen I/O-Verhalten der Anwendung vornimmt, während Fusion-IO durch eine ECM (»Auto Commit Memory«) genannte Schicht die Kommunikation zwischen Speicher und CPU aufbricht. Durch diesen Vorgang fungiert der Flash-Speicher quasi als vergrößerter Hauptspeicher, was die Geschwindigkeit gegenüber vergleichbaren Lösungen nochmals erhöht. Allerdings kommt dieser Effekt mit steigenden I/Os umso weniger zum Tragen. So wurde der vor kurzem durch die Presse gegangene Rekord von über einer Milliarde I/Os pro Sekunde mit 64 Byte kleinen Blöcken erzielt, während die EMC-Lösung sich in ihrer Blockung realitätsnäher an die Vorgaben der Anwendung hält.
Gruß
Doc Storage