Quindi, che dire, dopo mesi di anticipazioni guidate e rumors, oggi il Progetto lightning (o Virtual Flash Cache) di EMC ha finalmente visto la luce. Ero molto eccitato riguardo questo annuncio ma, alla fine, è sicuramente molto meno interessante di quanto mi aspettassi. Saremo costretti ad aspettare la prossima versione per vedere di più.

Nuovi paradigmi

Le infrastrutture scale out di nuova generazione stanno cercando nuovi metodi per gestire i dati e portarli vicino alle CPU: non più in silos verticali ma dispersi all’interno del cluster e vicino alle CPU che li usano.
Allo stesso tempo, diversi storage vendor, stanno lavorando duro a soluzioni di natura opposta: cercando di avvicinare la CPU a dove risiede il dato.
L’obiettivo finale è comune: trovare nuove (e più economiche) vie per spingere in alto IOps e throughput mentre si abbattono le latenze (il sogno di ogni infrastrutture architect).
Probabilmente, se puoi permetterti di disegnare una nuova architettura da zero, senza alcun tipo di costrizione (come ad esempio una grande infrastruttura cloud o un cluster Big Data), la prima soluzione sarà sicuramente quella preferita mentre, se si deve avere a che fare con dati e applicazioni aziendali tradizionali è probabile che l’altra possa essere la migliore.

Il progetto Lightning

Da un certo punto di vista l’annuncio di EMC è imporante perché è stata rilasciata una scheda PCI (da installare sui server) che utilizza memorie flash e funziona da cache per accelerare alcune attività di IO.
Quando ho letto di questo, mesi fa, ho pensato subito ad una tecnologia distruttiva ma, come spesso capita quando si parla di EMC, è stato fatto troppo dal lato marketing e troppo poco da quello R&D.
Questa è solo una versione 0.x del prodotto e mi ricorda molto quanto è già successo in passato con il FAST v1: il problema è lo stesso, l’idea è buona ma l’implementazione porta con se tante limitazioni che alla fine risulta non essere nulla di speciale, aggiungendo più complessità che vantaggi.

Ovviamente non è utilizzabile come write cache (a meno che non sia collegata ad un server singolo… quindi inutile) perchè è installata sul singolo server: i dati sono promossi in questa cache quando sono letti di frequente (@chrismevans, aka The Storage Architect, questa mattina ha scritto un tweet abbastanza chiaro a proposito: @Chris_Mellor Reading your review, the restrictions of Lightning make me think customers would be better off with simply more RAM – ed echo anche la recensione di Chris Mellor)… e io non potrei essere più d’accordo!

In realtà, l’array di backend non è minimamente coinvolto nelle operazioni di caching attraverso la scheda PCI. Questo significa che la scheda può essere usata con ogni tipo di storage ma anche che Virtual FAST Cache è veramente “virtual” (i.e. la cache dell’array o i meccanismi di auto tiering del FAST non vengono minimamente coinvolti). C’è anche uno “split-card mode” dove è possibile usare parte della scheda come local storage (ne più ne meno come per le altre schede flash di tipo DAS).

Se aggiungiamo che ci sono alcune limitazioni per l’utilizzo di questo oggetto con i cluster (es.: non si può usare VMware vMotion), avrete la chiara idea di quello che penso quando dico: poche funzionalità e molte limitazioni.

Compra oggi e ottieni domani

Le cose più importanti devo ancora arrivare: devi fidarti di EMC. Stanno già lavorando alla vera Virtaul Fast Cache. In futuro saranno presenti: maggiore integrazione con gli array, un sistema per garantire la coerenza della cache fra diversi sistemi e alcune funzionalità di management (spero evolute).

Nota finale

Si sa, il marketing EMC è molto forte, non hanno annunciato nulla di speciale oggi ma sono riusciti a creare un sacco di aspettative per il vero prodotto che, prima o poi, sarà rilasciato. Il vero messaggio importante qui è un altro: EMC sta facendo sul serio nel mercato SSD. Adesso sono veramente curioso di vedere la reazione degli altri big player e come i piccoli saranno in grado di affermare nuovamente la loro supremazia tecnologia (il mio pensiero va, prima di tutti, a Fusion-IO)