Esistono diversi modi per utilizzare un SSD come cache per il normale disco rigido. Questa non è una nuova idea e ha già diverse implementazioni.
In Windows:
La migliore implementazione è di NVelo: Dataplex - Ha la cache di lettura e cache di scrittura opzionale. Sfortunatamente, come ExpressCache è disponibile solo per gli OEM. Il modo più economico per ottenerlo è acquistare un SSD OCZ che comprime un adattatore PCIE con un piccolo SSD e utilizza il software dataplex per memorizzare nella cache il disco rigido esistente.
Esistono tuttavia anche pure implementazioni di software: FancyCache - Funziona come ci si potrebbe aspettare eseguendo la cache di lettura e scrittura a livello di blocco. Esiste principalmente come cache di memoria, ma recentemente ha ottenuto il supporto per una cache SSD di secondo livello (un po 'come ZFS L2ARC), che può essere arbitrariamente grande.
Se stai solo cercando di massimizzare gli IOPS a scapito della durata in scrittura (perfettamente bene insieme ad un UPS per esempio), un'alternativa potrebbe essere qualcosa di simile a: SuperCache - Questo utilizzerà solo RAM, nessun SSD. Ma a differenza degli altri, supererà felicemente 100.000 IOPS sull'hardware delle materie prime. Molto utile, ad esempio, per memorizzare nella cache il dispositivo a blocchi contenente indici di database. Essenzialmente fornendo prestazioni come RAM-Disk per qualsiasi volume di dimensioni (supponendo che il dispositivo sottostante possa tenere il passo con il volume di scrittura).
In Linux, le cose sono un po 'più belle:
Come menzionato in un precedente poster, hai Flashcache : funziona piuttosto bene, ma le sue prestazioni variano notevolmente con il tuo carico di lavoro. In molti casi con località di accesso scadente non funzionerà come ci si potrebbe aspettare. Non sono sicuro del perché, ma per la maggior parte dei carichi di lavoro questa è un'ottima opzione.
L'opzione migliore (anche se il codice non è ancora del tutto "pronto per la produzione") è bcache (maggiori informazioni qui , anche se alcune sono obsolete) - Offre le migliori prestazioni di qualsiasi cache SSD che abbia mai provato, e diversamente da tutte le altre le opzioni menzionate supportano la memorizzazione nella cache di più dispositivi a blocchi su un'unica cache. Supporta anche (anche se non l'ho provato personalmente, potrebbe non funzionare ancora) più dispositivi cache, quindi puoi utilizzare più SSD più economici per massimizzare il tuo IOPS. Il codice è in un repository git: git: //evilpiepirate.org/~kent/linux-bcache.git . Si parla di fonderlo nella prossima versione del kernel, anche se non è ancora stato deciso con certezza.
Personalmente trovo che l'opzione con le migliori prestazioni sia bcache (il mio carico di lavoro è principalmente legato al database, anche se memorizzo nella cache il mio laptop principale nella sua interezza). Nella mia esperienza, il throughput in scrittura sequenziale dell'HDD è spesso il collo di bottiglia, poiché la cache si riempie rapidamente e l'HDD deve scrivere i settori memorizzati nella cache, quindi più veloce è, meglio è. Questo è ovviamente per un carico di lavoro pesante in scrittura, in un carico di lavoro in lettura-scrittura più bilanciato le cose saranno probabilmente diverse.
Dovrei anche avvertirti che, a tutta velocità, brucerai i limiti di scrittura del tuo SSD abbastanza rapidamente. Sono attualmente al mio terzo OCZ Vertex 3. Gli SSD, anche se molto veloci, semplicemente non sono molto resistenti, quindi aspettatevi di sostituirli ogni pochi mesi.