Enterprise e Client SSD

Sempre più data center aziendali, che richiedono elevati throughput dati e basse latenze di transazione e che prima facevano affidamento sui tradizionali hard disk (HDD) per i propri server, si trovano ora a dover fronteggiare colli di bottiglia nelle prestazioni e pertanto si stanno orientando sempre più verso soluzioni basate su drive a stato solido (SSD), come soluzione alternativa per incrementare prestazioni, efficienza e affidabilità, oltre che per minimizzare i costi di esercizio complessivi (OpEx).

Per iniziare a comprendere le differenze tra le diverse classi di SSD è prima necessario distinguere i due componenti chiave di un drive SSD, ossia il controller di storage Flash (in genere chiamato più semplicemente controller SSD) e la memoria NAND Flash non volatile utilizzata per la memorizzazione dei dati.

Attualmente, sul mercato il consumo di drive SSD e di memorie NAND Flash si suddivide in tre categorie principali:
  • Dispositivi consumer (tablet, fotocamere, telefoni cellulari),
  • Dispositivi client (netbook, notebook, ultrabook, all in one e personal computer desktop) computer embedded/industriali (chioschi per gaming, sistemi ad-hoc e segnaletica digitale)
  • Piattaforme per ambienti aziendali (HPC e server per data center).

La scelta del dispositivo di storage SSD ideale per i data center aziendali può essere un processo lungo e complicato, che richiede la conoscenza e la valutazione di una moltitudine di dispositivi SSD di marche e tipologie differenti, in quanto non tutti gli SSD e le memorie NAND Flash sono uguali.

I drive SSD sono realizzati per essere facilmente implementabili come unità che sostituiscono o si affiancano ai tradizionali hard disk a dischi magnetici (HDD) e sono disponibili in un'ampia gamma di fattori di forma differenti, tra cui il formato da 2,5", e con svariati protocolli di comunicazione/interfacce, tra cui quelle Seria ATA (SATA), Serial Attached SCSI (SAS) e la più recente PCIe, per il trasferimento dei dati da e verso l'unità di elaborazione centrale (CPU) di un server.

Tuttavia, la semplicità di implementazione non offre la certezza che, a lungo termine, tutti gli SSD si dimostrino adeguati alle applicazioni aziendali per cui sono stati scelti. I costi legati alla scelta di un drive SSD non adeguato spesso annullano il risparmio iniziale e i vantaggi prestazionali offerti da questi dispositivi; ciò accade per esempio quando un drive SSD si usura prematuramente a causa delle eccessive operazioni di scrittura a cui è stato sottoposto, oppure quando le operazioni di scrittura eseguite sono notevolmente inferiori a quelle previste in rapporto al suo ciclo di vita stimato, oppure ancora quando il disco causa incrementi dei tempi di latenza nell'array di storage, imponendo la necessità di una sostituzione anticipata.

Esamineremo qui le tre principali qualità che distinguono un drive SSD di classe aziendale da un drive SSD destinato a dispositivi client, con l'obiettivo di supportare gli utenti nell'acquisto del dispositivo più adatto alle loro esigenze quando si presenta la necessità di sostituire o aggiungere ulteriore capacità di storage a un data center aziendale.

Prestazioni

I drive SSD sono in grado di garantire prestazioni incredibilmente elevate in lettura e scrittura, sia nel caso di richieste dati sequenziali, sia in caso di richieste casuali da parte della CPU, attraverso l'uso di un'architettura multicanale con accesso parallelo da parte del controller SSD verso i chip della NAND Flash.

Nel caso di un ambiente tipico di data center, che comporta l'elaborazione di milioni di byte di dati aziendali casuali, tra cui dati di collaborazione su disegni tecnici CAD e dati sismici destinati all'analisi (come Big Data, per esempio), o l'accesso ai dati di clienti sparsi in tutto il mondo, per l'esecuzione di transazioni bancarie (come i processi OLTP per esempio), i dispositivi di storage devono essere in grado di offrire un accesso caratterizzato da latenze minime e possono essere soggetti all'accesso simultaneo da parte di numerosi client, che richiedono gli stessi dati, senza alcun rallentamento delle prestazioni in termini di tempi di risposta. L’esperienza utente si misura sul riscontro di bassi lavori di latenza, il che implica un aumento di produttività dell’utente.

Un'applicazione client comporta l'accesso da parte di un singolo utente o di una singola applicazione, con un'elevata forbice di tolleranza tra tempi di risposta minimi e massimi (cd. latenza) per qualunque azione intrapresa dall'utente o dal sistema.

Gli array di storage complessi che utilizzano drive SSD (come le piattaforme di storage NAS o SAN), sono inoltre influenzati negativamente dalla presenza di eventuali incongruenze prestazionali, le quali possono causare numerosi problemi alle latenze dell'array di storage, con un impatto negativo sulla continuità delle prestazioni e, di conseguenza, sulla qualità del servizio così come viene percepito dall’utente.

A differenza delle soluzioni SSD client, gli SSD per impieghi aziendali di Kingston non solo sono ottimizzati per garantire le massime prestazioni dopo pochi secondi dall'accesso, ma, utilizzando anche una maggiore area di over provisioning (OP), sono anche in grado di garantire una maggiore stabilità di funzionamento per periodi di tempo più lunghi. È possibile ottenere ulteriori informazioni sui singoli drive sul sito web di Kingston nella sezione dedicata agli SSD aziendali.{{Footnote.N48213}}

Ciò garantisce la massima costanza e stabilità prestazionale degli array di storage, in linea con le esigenze delle aziende in termini di qualità del servizio (QoS) in caso di elevati picchi di traffico.

Affidabilità

Le memorie NAND Flash sono caratterizzate da svariate problematiche associate all'affidabilità, le cui due principali sono una durata del ciclo di vita limitata, dal momento che le celle delle memorie Flash sono soggette a usura durante le scritture ripetute, e una tendenza naturale alla generazione di errori.

Durante il processo di produzione delle memorie NAND Flash, ogni matrice di memoria NAND Flash ricavata dal wafer di silicio viene testata e caratterizzata da un tasso di errore dei bit (detto anche BER o RBER).

Il BER definisce la frequenza di generazione naturale degli errori in una data memoria NAND Flash, quando non viene utilizzata la funzione Error Correction Code (ECC); tali errori vengono corretti dal controller SSD in tempo reale attraverso funzionalità ECC avanzate (in genere denominate funzioni di correzione di errore BCH, EEC, EEC strong o LDPC dai diversi produttori di controller SSD), senza causare alcuna interruzione dei processi dell'utente né bloccare l'accesso al sistema.

La capacità dei controller SSD di correggere questi errori dei bit può essere valutata attraverso un parametro denominato "tasso di errore dei bit non correggibile" (UBER), ovvero "un sistema di misurazione del tasso di corruzione dei dati pari al numero degli errori dati rilevati in rapporto ai bit letti, dopo aver applicato uno qualsiasi dei metodi di correzione degli errori specificati".{{Footnote.N48213}}

Come definito e standardizzato dall’associazione degli standard di settore JEDEC nel 2010, attraverso i documenti JESD218A:Solid State Drive (SSD) Requirements and Endurance Test Method (Metodi di test di durata e dei requisiti dei drive a stato solido) e JESD219:Solid State Drive (SSD) Endurance Workloads (Resistenza ai carichi di lavoro dei drive a stato solido), i dispositivi SSD destinati ad impieghi aziendali sono caratterizzati da numerose differenze rispetto agli SSD destinati ai dispositivi client, tra cui, ma non solo, la capacità di sostenere carichi di lavoro in scrittura più elevati, operare in condizioni ambientali più estreme ed eseguire il ripristino dei dati anche in caso di valori BER più elevati rispetto a quelli degli SSD destinati a dispositivi client.{{Footnote.N52081}}{{Footnote.N52082}}

Classe applicazioneCarico di lavoro (vedere JESD219)Uso attivo (acceso)Modalità ritenzione (spento)Requisiti UBER
Client Client 40° C 8 ore/giorno 30° C 1 anno ≤10 -15
Enterprise Enterprise 55° C 24 ore/giorno 40° C 3 mesi ≤10 -16

Tabella 1 - JESD218A: Solid State Drive (SSD) Requirements and Endurance Test Method (Metodi di test di durata e dei requisiti dei drive a stato solido)
Copyright JEDEC. Riprodotto con il consenso di JEDEC.

Utilizzando i valori UBER raccomandati dal JEDEC, per una comparazione tra SSD aziendali e SSD client, le stime indicano che i primi manifestano 1 errore di bit non recuperabile con una frequenza pari a 1 bit di errore ogni 10 quadrilioni di bit (~1,11 PB), a differenza dei secondi che invece manifestano 1 errore di bit per ogni quadrilione di bit (~0,11 PB) elaborati.

I drive SSD Kingston di classe aziendale dispongono di tecnologie aggiuntive che permettono di ripristinare i blocchi corrotti di dati utilizzando dati di parità archiviati in altri chip della NAND (analogamente a quanto avviene nel processo RAID dei drive, è possibile recuperare blocchi specifici che saranno poi ricostruiti grazie ai dati di parità archiviati in altri blocchi).

In aggiunta alle tecnologie di ripristino dei blocchi di dati ridondanti, nei drive SSD Kingston di classe aziendale sono state anche integrate funzionalità di creazione periodica dei checkpoint, uno schema di protezione interna end-to-end basato sulla tecnologia di controllo della ridondanza ciclica (CRC) e una funzionalità di correzione di errori ECC, al fine di garantire l'integrità del flusso dati in transito dal dispositivo host fino alla memoria Flash e quindi nuovamente al dispositivo host. Per protezione dati end-to-end si intende un controllo sull’integrità dei dati ricevuti dall’host durante il processo di archiviazione nella cache interna del drive SSD, oltre che successivamente durante la loro scrittura o lettura nelle aree di storage della memoria NAND.

Analogamente a quanto previsto dalla protezione EEC avanzata contro gli errori bit dei drive SSD di classe aziendale, è possibile che venga integrata una circuiteria fisica che rileva l’interruzione di alimentazione e gestisce i condensatori di alimentazione dello storage nei drive SSD. La funzione di protezione contro le interruzioni dell'alimentazione nell’hardware monitora l’energia in entrata nel drive SSD e, nel caso in cui rilevi un’imprevista interruzione, utilizza i condensatori Tantalum per somministrare temporaneamente ai circuiti del drive SSD l’energia che occorre a completare eventuali scritture in transito verso l’interno o l’esterno, per poi disattivare il drive SSD. I circuiti per la protezione contro le interruzioni di alimentazione si rivelano praticamente indispensabili per le applicazioni in cui la perdita dei dati non sarebbe ripristinabile.

La protezione contro le interruzioni di alimentazione può essere implementata anche nel firmware del drive SSD attivando un flusso frequente dei dati nelle aree della cache del controller SSD (ad esempio, nella relativa tabella FTL - ovvero livello di conversione Flash) verso lo storage NAND – il che non garantisce che non vi sarebbe alcuna perdita di dati durante un’interruzione di alimentazione, ma sicuramente riduce l’impatto delle pericolose conseguenze di un arresto improvviso. La protezione contro le interruzioni di alimentazione basata su firmware assicura inoltre che il drive SSD non rischi di diventare inutilizzabile in seguito a un arresto improvviso. 

In molti casi, vengono utilizzate soluzioni di Software Defined Storage o di Server Clustering che replicano i dati all’interno di un dispositivo di storage separato e integrato in uno o più server esterni, così da attenuare la necessità della protezione contro le interruzioni di alimentazione basata su hardware. I data center a servizio del Web spesso fanno a meno della protezione contro le interruzioni dell’alimentazione ricorrendo alle soluzioni di Software Defined Storage per effettuare il RAID dei server e conservare così copie ridondanti degli stessi dati.

Durata

Tutte le memorie NAND Flash integrate nei dispositivi di storage flash subiscono un degrado in termini di affidabilità nel mantenimento dei bit di dati in memoria. Tale degrado si verifica a ogni ciclo di programmazione o cancellazione (ciclo P/E) eseguito da una memoria NAND Flash, fino a quando i relativi blocchi di memoria non sono più in grado di garantire l'affidabilità di memorizzazione dei dati. A questo punto, i blocchi degradati o malfunzionanti devono essere rimossi dal pool di storage utilizzabile dall'utente e l'indirizzo logico a questi assegnato (LBA) viene riallocato su un nuovo indirizzo di memoria fisico dell'array di storage della memoria NAND Flash. Il nuovo blocco di storage prende il posto di quello danneggiato all’interno del pool di blocchi disponibili facente parte dello storage di OP (Over Provisioning) del drive SSD.

Dato che le celle di memoria sono costantemente soggette a cicli di programmazione e cancellazione, anche il valore del BER tende a crescere in modo lineare; ed è per questo motivo che è necessario implementare una serie di complesse tecnologie di gestione sul controller del drive SSD, al fine di gestire in modo ottimale la capacità delle celle di memoria di conservare i dati durante l'intero ciclo di vita stimato del drive SSD. {{Footnote.N52083}}

La resistenza ai cicli di P/E di una determinata memoria NAND Flash può variare notevolmente, in base al tipo di processo di produzione litografico corrente e al tipo di memoria NAND Flash prodotta.

Tipo di memoria NAND FlashTLCMLCSLC
Architettura 3 bit per cella 2 bit per cella 1 bit per cella
Capacità Massima capacità Capacità elevata Capacità minima
Durata (P/E) Durata minima Durata media Massima durata
Costo $ $$ $$$$
Tasso approssimativo di errori dei bit NAND (BER) 10^4 10^7 10^9

Tabella 2 – Tipi di memoria Flash NAND {{Footnote.N52084}}{{Footnote.N52085}}

I drive SSD di classe aziendale si differenziano dai drive SSD per client anche rispetto ai relativi cicli di lavoro. Un drive SSD di classe aziendale deve essere in grado di sostenere intensi processi di lettura o scrittura, negli scenari tipici dei server utilizzati nei data center, con un impiego costante 24/7, a differenza degli SSD client, che vengono tipicamente utilizzati per 8 ore al giorno durante la settimana. I drive SSD di classe aziendale si caratterizza per cicli di lavoro di tipo 24x7, rispetto ai drive SSD per client che hanno cicli di lavoro di tipo 20/80 (20% del tempo attivi e 80% in pausa o in modalità sospensione durante l’uso del computer).

Comprendere i fattori che determinano la resistenza di un SSD ai cicli di scrittura può rappresentare un'operazione complessa. Ecco perché il comitato del JEDEC ha anche proposto un metodo di misurazione della durata che utilizza un parametro basato sui TeraByte scritti (TBW), che indica la quantità di dati grezzi Host che può essere scritta su un drive SSD prima che la memoria NAND Flash contenuta nel drive SSD diventi inaffidabile e richieda la sostituzione del drive.
Utilizzando le procedure proposte dai documenti JEDEC, JESD218A "Testing methods" (Metodi di test) e ESD219 "Enterprise class workloads" (Carichi di lavoro per dispositivi di classe aziendale), diventa semplice interpretare i calcoli di durata effettuati dai produttori di drive SSD attraverso il parametro TBW, per poi estrapolare e convertire i dati di durata in una forma maggiormente comprensibile, applicabile a qualunque data center.

Come indicato nei documenti JESD218 e JESD219, gli impieghi di carichi di lavoro relativi a classi di applicazioni differenti possono anche essere influenzati da un fattore di amplificazione di scrittura (WAF), con un ordine di grandezza superiore a quello delle operazioni di scrittura effettive inviate dal dispositivo host, che possono facilmente causare fenomeni non gestibili di usura delle memorie NAND Flash, elevati valori BER delle memorie NAND Flash a causa degli eccessivi cicli di scrittura nel tempo, nonché un rallentamento delle prestazioni determinato dalla presenza di elevate quantità di pagine non valide distribuite sul drive SSD.

Sebbene il TBW sia un argomento importante in termini di comparazione tra gli SSD di classe aziendale e quelli destinati al segmento client, esso rappresenta unicamente un modello predittivo che indica il livello di durata di una determinata memoria NAND Flash, mentre il tempo medio fra i guasti (MBTF) può essere considerato come un modello predittivo indicante il livello di affidabilità e durata dei componenti basato sull'affidabilità dei componenti utilizzati dal dispositivo. Le aspettative relative ai componenti utilizzati sui drive SSD di classe aziendale sono concentrate su elevata durata e alta resistenza nella gestione delle tensioni che attraversano la memoria NAND Flash, piuttosto che sulla durata del ciclo di vita stimata dei drive SSD. Tutti i drive SSD di classe aziendale dovrebbero attestarsi a un valore MTBF nominale di 1 milione di ore, il che vuol dire oltre 114 anni! Le specifiche dei drive SSD di Kingston riportano dati molto prudenti, eppure non è raro vedere valori MTBF ancora più elevati sui drive SSD di Kingston; è importante in ogni caso sapere che il valore di 1 milione di ore è molto più che un buon punto di partenza per un drive SSD di classe aziendale.

Le funzioni di monitoraggio e reporting S.M.A.R.T integrate nei drive SSD di classe aziendale consentono, con la massima semplicità, di analizzare il dispositivo per valutare la presenza di sintomi che indichino un imminente malfunzionamento e di determinarne la durata stimata, sulla base del fattore di amplificazione in scrittura (WAF) corrente e del livello di usura rilevato. Spesso questi dispositivi supportano anche le funzionalità di notifica predittiva relative ai malfunzionamenti che indicano guasti imminenti, come le perdite di potenza, gli errori dei bit presenti sull'interfaccia fisica o la presenza di una distribuzione dell'usura non uniforme. Per controllare lo stato di un drive è possibile scaricare l’applicazione Kingston SSD Manager dal sito web di Kingston.

Gli SSD di classe client offrono invece solamente le funzionalità S.M.A.R.T minime richieste per il monitoraggio dei drive durante il normale utilizzo, oppure dopo che il guasto si è verificato.

A seconda della classe dell'applicazione e della capacità dell'SSD è anche possibile allocare una maggiore quantità di memoria di riserva sulla memoria NAND Flash, da utilizzare come capacità di riserva avente funzioni di over provisioning (OP). La capacità di over provisioning (OP) viene nascosta all'utente e all'accesso da parte del sistema operativo e può essere utilizzata come buffer di scrittura temporaneo per garantire performance elevate per tempi prolungati, nonché fungere da memoria sostitutiva per compensare eventuali celle di memoria Flash difettose, durante il ciclo di vita del drive SSD, al fine di ottimizzare l'affidabilità e la durata dello stesso (grazie a un maggior numero di celle disponibili).

Conclusioni

Esistono delle differenze distintive tra SSD per impieghi aziendali e SSD di classe client; tali differenze spaziano dalla durata in rapporto al numero di cicli di programmazione/cancellazione della memoria NAND Flash, fino alle complesse tecnologie di gestione utilizzate sulla base dei carichi di lavoro generati dalle differenti classi di applicazioni.

La comprensione di queste differenze tra le varie classi di applicazioni, a loro volta correlate a prestazioni, affidabilità e durata, può rappresentare uno strumento efficace al fine di minimizzare e gestire il rischio di interruzioni causate dai tempi di fermo negli impegnativi ambienti aziendali, spesso caratterizzati da applicazioni di tipo mission critical. In caso di dubbi o domande, contattate pure il vostro rappresentante commerciale Kingston o utilizzate i servizi “Chiedete a un esperto” o “Chat di supporto tecnico” disponibili sul sito Kingston.com.