La richiesta di dati e di velocità a cui sono sottoposte le infrastrutture di rete spinge la tecnologia ad una continua ricerca delle performance. Le componenti in gioco sono diverse, prime fra tutte la CPU, la banda di rete e i dispositivi di archiviazione.
Nonostante in commercio si trovino dischi con capacità sempre maggiore, in termini di prestazioni conta soprattutto l’ I/O, ossia la velocità di scrittura e lettura. Questo fattore è determinante in quanto deve tenere il passo con gli altri componenti, altrimenti si crea un collo di bottiglia.
Per diversi anni i data center, che utilizzano RAID composti da moltissime unità, hanno impiegato dischi SCSI fino a 15.000 rpm. Per aumentare ulteriormente le prestazioni si ricorreva ad alcune strategie, come usare solo le tracce esterne più veloci. Questo sistema limitava tuttavia la memoria utilizzabile, rendendo necessaria l’aggiunta di altri server.
Gli SSD hanno successivamente cambiato il modo di gestire l’archiviazione e, con la discesa dei prezzi, hanno cominciato ad essere usati in sistemi di storage su larga scala. Rispetto ai dischi rigidi, quelli a stato solido sono sicuramente avvantaggiati in termini di velocità. Ma sono davvero la soluzione definitiva per architetture complesse come i RAID?
SSD e HDD a confronto
Oltre agli IOPS (Input/Output Operations Per Second) elevati, gli SSD presentano altri vantaggi. Hanno una banda di lettura maggiore e non sono composti da componenti meccanici. L’assenza di parti mobili permette di resistere meglio agli urti e in genere offre un’affidabilità migliore.
Gli SSD hanno però anche delle limitazioni, come i costi elevati e la capacità ridotta. Inoltre, la sovrascrittura avviene in modo diverso. I dati devono essere prima cancellati dal blocco di destinazione e solo successivamente possono essere scritti. Questo processo si ripete anche se l’utente modifica un numero minimo di file, influendo negativamente sulla velocità di scrittura. A ciò si aggiunge anche un’usura precoce e non uniforme della memoria flash.
Gli HDD hanno un costo minore e una capacità maggiore, il che li rende efficienti per applicazioni che usano grandi volumi di dati. Con l’avanzare della tecnologia, anche la resistenza ai guasti e all'usura è migliorata. Nonostante esistano modelli ad alta velocità dalle performance interessanti, le prestazioni sono generalmente inferiori rispetto a dischi a stato solido. Inoltre la presenza di parti meccaniche in movimento genera attrito, che a sua volta genera surriscaldamento. E le temperature elevate non solo espongono le unità a guasti, ma provocano anche latenza e un peggioramento delle performance.
In un RAID sembra difficile dire quale tecnologia sia la migliore. Sostituire tutti gli HDD con SSD non sempre è una soluzione vincente, mentre unirli può portare dei vantaggi.
RAID ibrido HDD e SSD
Per configurare un RAID ibrido è necessario utilizzare HDD, SSD e un controller hardware che supporta entrambi. In alternativa, si può gestire l’array tramite un controller software.
I dischi possono essere trattati allo stesso modo oppure in configurazioni particolari, ad esempio leggendo i dati dagli SSD e scrivendo le copie ridondanti su HDD. Di solito le combinazioni utilizzate sono HDD e SSD abbinati, HDD e SSD-cache e SSD e HDD-mirrored.
HDD e SSD abbinati
Abbinare semplicemente HDD e SSD in un RAID ibrido è la soluzione più semplice, ma non la migliore. Il problema sta nella diversa velocità di scrittura. Anche se tecnicamente possibile, un sistema che combina dischi con performance diverse avrà sempre una velocità uguale a quella del disco più lento. In questo caso il RAID funzionerà alla velocità degli HDD, sia che utilizzi striping, mirroring o parità.
C’è un secondo problema, quello dell'organizzazione dei dati. Un HDD ha bisogno di essere deframmentato regolarmente per ottimizzare lo spazio e correggere eventuali errori. Scrivendo i dati in maniera diversa, gli SSD non necessitano di questo passaggio. Una deframmentazione non farebbe altro che aumentare il numero di scritture, riducendo la vita utile dell’unità.
Perciò non conviene abbinare in maniera semplicistica due tipi di dischi. È preferibile scegliere quello che risponde meglio alle esigenze, che si tratti di capacità, budget, sicurezza o prestazioni.
HDD e SSD cache
I moderni controller hardware hanno un modulo cache alimentato a batteria che funziona come una memoria temporanea. Questo componente memorizza i dati non ancora sincronizzati sui dischi per accelerare gli accessi frequenti e per proteggere dalla perdita dei dati. Le informazioni vengono conservate per circa 72 ore, tempo in cui la batteria mantiene in vita il dispositivo in caso di blackout prolungato.
Oltre a questa soluzione, è possibile utilizzare gli SSD come memoria cache. A seconda della capacità richiesta, le unità a stato solido vengono usate in parte o in tutto. Una configurazione del genere è in grado di migliorare drasticamente le performance rispetto alla tradizionale cache del controller.
La cache SSD è configurabile in modalità Lettura o Lettura/Scrittura. In modalità Lettura il RAID copia sugli SSD i dati con accesso frequente. Quando l’utente accede a questi file, essi sono immediatamente disponibili senza essere letti dai dischi. Se invece non sono disponibili, il sistema li copia nella memoria temporanea per accelerare eventuali richieste. Per non esaurire lo spazio, il software che gestisce il RAID deve organizzare in modo intelligente i dati. Quelli vecchi o meno richiesti vengono spostati di nuovo sugli HDD e sostituiti con quelli recenti e frequentemente utilizzati.
La modalità Lettura/Scrittura funziona in entrambi i sensi. Anche i file che vengono modificati di frequente sono memorizzati su SSD, in modo da accelerare ulteriormente le operazioni di I/O. L'organizzazione della memoria avviene come in sola lettura, eliminando o copiando i file in base al comportamento dell’utente.
SSD e HDD mirrored
Un terzo modo di costruire un RAID ibrido è assegnare ad ogni tipo di unità operazioni specifiche. Il concetto di base è impostare la lettura dei dati da SSD e le scritture su SSD e HDD. È vero che le scritture saranno alla velocità dei dischi rigidi, ma è anche vero che sono meno frequenti delle letture e possono essere bufferizzate. Le letture invece saranno alla velocità dei dischi a stato solido.
Prendiamo ad esempio un RAID 1 con 2 unità. Il sistema salva i dati su entrambe, ma utilizza il disco veloce in lettura e quello lento come copia speculare. Rispetto a 2 unità HDD si guadagna in prestazioni, rispetto a 2 unità in SSD si guadagna in costi. Inoltre, il rischio di rottura per causa unica diminuisce. È molto probabile che i danni che colpiranno un'unità (ad esempio calore o eccessive scritture) lasceranno indenne l’altra, e viceversa.
Altri esempi di RAID ibridi
Configurare un RAID ibrido in altri modi è possibile e permette di ottenere vantaggi nell'uso dello spazio, nei tempi di avvio e nelle prestazioni. Una soluzione potrebbe essere un RAID 10 con 4 unità: 2 SSD dedicati alla lettura dei dati e al caricamento del sistema operativo, e 2 HDD come mirror disk.
RAID 1 o RAID 10 non sono gli unici livelli testati in una configurazione ibrida. Un recente studio condotto in Cina e pubblicato su ScienceDirect (Liu, Wang, Chen, Li, Zhaoyan Shen, Zhang . 2023. H2-RAID: Improving the reliability of SSD RAID with unified SSD and HDD hybrid architecture. https://www.sciencedirect.com/...) ha effettuato un test su un RAID 5 dove ogni unità SSD effettua un backup su HDD. Si tratta di una configurazione inusuale, in cui viene anche implementata una funzione intelligente che aggrega scritture casuali in sequenziali per diminuire la latenza dei dischi rigidi.
I risultati sono interessanti e mostrano un incremento notevole dell’affidabilità con una perdita di prestazioni di solo il 5%. Lo studio dimostra come un RAID ibrido è un concetto aperto a sperimentazioni e soluzioni di archiviazione specifiche per l'utente finale.
Recupero dati da RAID ibrido
Per quanto riguarda la protezione dei dati, un RAID ibrido offre alcuni vantaggi. Le unità a stato solido hanno un’affidabilità che tende a calare nel tempo a causa dei limitati cicli di scrittura, mentre quelle meccaniche non soffrono di questo problema. Una configurazione ibrida è perciò più resistente, affidabile e duratura.
Un RAID ibrido è esposto agli stessi tipi di guasti di uno tradizionale, ma è probabile che un danno interessi solo un tipo di unità. Di seguito vediamo come recuperare i dati in base ai tipi di guasti più comuni.
Guasti logici
I guasti logici sono solitamente provocati da:
- interruzioni di corrente: interrompono le scritture bruscamente lasciando i dati incompleti o corrotti.
- virus e malware: sono software maligni che provocano la corruzione o crittografia dei file, comprese le copie speculari.
- errori umani: includono la cancellazione accidentale dei dati, la formattazione, l'eliminazione di partizioni o la configurazione errata dell’array.
- problemi con il firmware: i bug o i mancati aggiornamenti provocano conflitti con il sistema operativo e con l’hardware.
Se le unità interessate non vengono riconosciute dal sistema operativo, e il numero di danni è superiore alla tolleranza del livello RAID, è necessario ricostruire l’array in laboratorio.
La diversa logica con cui HDD e SSD registrano le informazioni influenza il processo di recupero. Ad esempio, la moderna tecnologia a stato solido usa un livellamento dell’usura fra le varie celle scrivendo i dati sparsi in vari blocchi. La logica di distribuzione è nota solo al dispositivo e non al sistema operativo. Ecco perché, anche riconoscendo l’unità, un software di recupero non sempre è in grado di individuare tali blocchi e ricostruire i file.
Inoltre, gli SSD possono essere impostati con il comando TRIM, il quale cancella definitivamente i dati eliminati dall’utente. Al contrario, i dischi rigidi si limitano a marcare la porzione di disco come libera, senza distruggere i file precedenti. Di conseguenza, recuperare le informazioni eliminate da un’unità a stato solido potrebbe essere più complesso.
Oltre a queste premesse, il recupero file deve considerare anche lo stress degli SSD dovuto ad un’intensa scrittura. Per evitare questo problema e per preservare l’originalità delle informazioni, cloniamo le unità e lavoriamo su immagini.
In seguito, usiamo un software per accedere alle unità, analizzando il file system e i metadati. Se le unità non vengono riconosciute, il RAID deve essere ricostruito manualmente impostando i parametri corretti, come ad esempio la dimensione di stripe.
Una volta che le unità ed eventuali partizioni sono impostate, usiamo il software per una scansione dettagliata. Per recuperare i file corrotti su SSD, a volte è necessaria una lettura diretta delle celle NAND in modo da bypassare eventuali errori e recuperare i dati grezzi. Per gli HDD, il recupero si concentra invece sui settori danneggiati. Verificata l’integrità dei dati, essi vengono trasferiti su un supporto esterno o inviati al cliente.
Guasti fisici
I guasti fisici che possono interessare un RAID ibrido sono:
- usura e danno meccanico (solo HDD): le parti in movimento come i piatti, le testine e i motori si possono usurare e rompere, soprattutto se sottoposte ad alti carichi di lavoro.
- guasti della PCB: le sovratensioni causano danni alla PCB con conseguente malfunzionamento o arresto dell'unità.
- disastri naturali: allagamenti o incendi sono in grado di distruggere irreversibilmente i supporti.
- usura delle celle NAND (solo SSD): ogni cella NAND ha un limite di cicli scrittura superato il quale comincia a deteriorarsi.
- guasti del controller: il controller gestisce il flusso di dati da e verso il RAID. Un guasto può compromettere l’intero array se i dati sono in fase di scrittura.
- surriscaldamento: i supporti di archiviazione generano calore durante operazioni intense. Un insufficiente raffreddamento o un danno alla ventola causano degrado termico delle celle NAND, o dilatazione dei componenti metallici nei dischi rigidi.
Quando le tecniche di recupero software non sono in grado di ripristinare i dati persi, o i dischi non sono avviabili, procediamo con un’apertura in camera bianca. Se possibile, valutiamo la riparazione/sostituzione delle parti danneggiate. In alternativa, dobbiamo estrarre le parti su cui sono registrati i dati (memoria flash NAND o piatti) per l’inserimento in un disco donatore. Il chip NAND è anche leggibile usando un dispositivo apposito.
L’obiettivo è quello di accedere ai file e analizzare se ci sono settori o blocchi di memoria corrotti. In caso positivo, recuperiamo i dati seguenza la procedura per i guasti logici. Il lavoro si conclude solo quando i dati sono stati verificati e consegnati al cliente.
In sintesi
Un RAID ibrido è una soluzione di archiviazione interessante che unisce prestazioni, sicurezza e costi contenuti per una vasta categoria di utenti. La chiave per ottenere questi risultati è assegnare ad ogni tipo di unità un compito specifico. Ossia utilizzare gli HDD prevalentemente per la ridondanza e l’archiviazione, e gli SSD per la lettura del sistema operativo, dei dati e della cache.
Sebbene i RAID offrano ridondanza, e l’uso di HDD e SSD mitighi il rischio di fallimento multiplo delle unità, è comunque possibile perdere i dati, specialmente in assenza di backup.
Ripristinare un RAID ibrido richiede conoscenze avanzate e strumenti adeguati, che solo un laboratorio specializzato possiede. Perciò, non provate a ripristinare da soli l’array, potreste perdere definitivamente i vostri dati. Potete scriverci utilizzando questo form, spiegando il vostro problema. Vi contatteremo il prima possibile per offrirvi una soluzione sicura in tempi rapidi.
Recupero Dati Professionale