Davvero non so da dove cominciare, dato che tutto ciò è un'informazione eccellente. Inizierò con alcune informazioni su SSD, quindi una descrizione di tutti i diversi metodi di memorizzazione nella cache e passerò da lì. Spero che tu
Vantaggi e svantaggi
- Prezzo: gli SSD sono in qualche modo costosi
- Capacità massima e comune: gli SSD ad alta capacità sono molto rari e costosi
- Velocità: è qui che gli SSD ottengono il vantaggio
- Durabilità: un SSD non ha parti in movimento
Meglio avere un sistema ibrido, avere il meglio di entrambi i mondi (capacità, affidabilità, velocità, ecc.)
Il kernel Linux 3.9 (reso disponibile il 28 aprile 2013) introduce la cache SSD. Il Device Mapper del kernel ora include un target cache chiamato dm-cache che consente di utilizzare SSD o altri dispositivi di archiviazione come cache per un disco rigido. In sostanza, accelera la scrittura e la lettura dei dati poiché consente all'SSD più veloce di memorizzare prima i dati nella cache e quindi trasferirli sul disco rigido più lento.
Fonte: Iwn
Flashcache è un modulo originariamente scritto e rilasciato da Facebook (Mohan Srinivasan, Paul Saab e Vadim Tkachenko) nell'aprile del 2010. È un modulo del kernel che consente la memorizzazione nella cache di Writethrough di un'unità su un'altra unità. Questo viene spesso utilizzato per la memorizzazione nella cache di un'unità rotazionale su un'unità a stato solido più piccola per motivi di prestazioni. Questo ti dà la velocità di un SSD e le dimensioni di un'unità di rotazione standard per i file memorizzati di recente nella cache. FlashCache è una cache di blocco writeback per scopi generici per Linux.
Fonte: ArchLinux
Bcache è una cache del livello di blocco del kernel Linux. Consente a una o più unità disco veloci come unità a stato solido (SSD) basate su flash di fungere da cache per una o più unità disco rigido più lente.
I dischi rigidi sono economici e grandi, gli SSD sono veloci ma piccoli e costosi. Non sarebbe bello se tu potessi ottenere in modo trasparente i vantaggi di entrambi? Con Bcache puoi avere la tua torta e mangiarla anche tu.
Le patch bcache per il kernel Linux consentono di utilizzare SSD per memorizzare nella cache altri dispositivi a blocchi. È analogo a L2Arc per ZFS, ma Bcache esegue anche la cache di writeback (oltre a scrivere tramite la cache), ed è indipendente dal filesystem. È progettato per essere acceso con il minimo sforzo e per funzionare bene senza alcuna configurazione. Per impostazione predefinita, non memorizza nella cache I / O sequenziali, solo le letture e le scritture casuali in cui eccellono gli SSD. È pensato per essere adatto a desktop, server, array di archiviazione di fascia alta e forse anche incorporato.
L'obiettivo di progettazione è quello di essere veloci quanto l'SSD e il dispositivo memorizzato nella cache (a seconda dell'hit della cache rispetto a quello perso e delle scritture writewrrough vs. writeback) entro il margine di errore. Non è ancora del tutto lì, principalmente per letture sequenziali. Ma i test hanno dimostrato che è enfaticamente possibile, e anche in alcuni casi fare di meglio, principalmente scritture casuali.
Fonte: Bcache
Bcache ha un grosso svantaggio e che toglie memoria al sistema per implementare la cache.
EnhanceIO è una soluzione che funziona al di sotto del livello dell'applicazione, consentendo alle applicazioni di utilizzare i vantaggi in termini di prestazioni degli SSD senza grandi cambiamenti nell'infrastruttura IT. Una cache SSD può offrire la maggior parte dei vantaggi del passaggio da HDD a SSD a una frazione del costo di un sistema tutto SSD. Un sistema con cache funziona in genere con meno energia rispetto a un sistema basato su HDD con prestazioni simili e ciò crea un vantaggio laterale riducendo i requisiti di raffreddamento.
Una cache SSD può anche prolungare la vita utile di un sistema esistente migliorando le prestazioni per soddisfare le crescenti richieste attraverso un investimento incrementale, piuttosto che attraverso un aggiornamento / sostituzione all'ingrosso del sistema esistente.
La memorizzazione nella cache consente inoltre un accesso più rapido ai dati senza l'ulteriore sovraccarico dell'amministrazione dello storage di acquisire e installare nuovi shelf di dischi, configurando nuovi LUN e migrando i dati verso i nuovi LUN. La memorizzazione nella cache è quasi trasparente e richiede tempi di inattività minimi. EnhanceIO si basa su Flashcache.
Fonte: Stec-Inc
bcache è il più inutile di tutti perché richiede una partizione di dati (formattata) appositamente preparata. Ciò rende difficile (se possibile) collegare la cache alla partizione esistente con i dati in quanto si richiederebbe una capacità del 200% ed eseguire lunghi spostamenti di dati per attivare / disattivare la memorizzazione nella cache.
Il vantaggio di EnhanceIO è che non necessita affatto di un dispositivo intermedio e può essere collegato al volo a qualsiasi dispositivo a blocchi anche quando il dispositivo è già montato. Un'altra cosa fantastica è che puoi collegare la cache EnhanceIO non solo alla partizione ma al dispositivo a blocchi partizionato per memorizzare in cache tutte le sue partizioni contemporaneamente. Proprio come i moduli enchanceio di flashcache sono creati con DKMS e possono essere usati con kernel più vecchi.
Fonte: Debian
Vantaggi della cache DM
Le cache DM utilizzano un'architettura semplificata, che le rende adattabili e facili da personalizzare. Gli utenti possono regolare la dimensione del blocco e la capacità della cache in base alla quantità di dati che dovrà gestire o al valore dei dati. Se una particolare applicazione deve archiviare una grande quantità di dati in sequenza, gli utenti possono configurare la cache a tale scopo. Se un utente desidera registrare informazioni in un database contemporaneamente alla cache, ciò non interferirà con le operazioni della cache.
Svantaggi della cache DM
Uno svantaggio dell'utilizzo di una cache DM è che il sistema operativo Linux ha uno spazio limitato per l'archiviazione dei metadati. Se la cache è di grandi dimensioni e include molti piccoli blocchi, ciò aggiunge molti metadati per le informazioni memorizzate. Per risolvere questo problema, l'utente deve aumentare la dimensione del blocco. Un altro possibile problema è che, dopo un arresto anomalo del server, i metadati della cache potrebbero non corrispondere più al contenuto della cache, sebbene alla fine sia possibile ripristinare la configurazione corretta.
Fonte: complementi di Fraser Sherman
Quindi dalle informazioni di cui sopra è chiaro che EnhanceIO è la strada da percorrere, ma a mio avviso poiché è basato su Flashcache, andrei con la cache flash. Ma proverò sicuramente entrambi prima di prendere una decisione finale.
zram-config
che avrà la priorità sull'uso dello swap. E, archivia il gioco sull'SDD e testalo. Alcuni giochi non funzioneranno molto più velocemente, altri funzioneranno alla grande! Preferisco non usare SDD come cache a causa del suo limite di scritture, ma gli SDD stanno diventando più economici, quindi non è più così preoccupante :)