Archiviazione a zone e ReFS: dischi magnetici e flash a prova di futuro

Traduzione e adattamento a cura di Naonis dell’articolo apparso nel sito del produttore al seguente link.

I dischi magnetici e flash dominano da lungo tempo il settore dello storage.

Entrambe le tecnologie continuano ad essere innovate sia in termini di capacità che di costo e prestazioni. Sebbene in molti abbiano previsto la morte dei supporti magnetici imminente, questi rimangono ancora la scelta migliore per rapporto tra capacità di archiviazione e costo per unità.

In questo articolo tratteremo alcune delle caratteristiche delle moderne memorie magnetiche e flash e di come stia diventando sempre più un vero collo di bottiglia per le loro prestazioni e per l’innovazione mantenere la compatibilità con i dischi rigidi tradizionali.

Settori ad accesso casuale da 512 byte

Il settore è l’unità minima di archiviazione su un disco rigido. Ogni settore o blocco ha una quantità fissa di memoria. I dati vengono indirizzati, letti e scritti sempre in settori completi.

Rispettando questo vincolo, qualsiasi settore su un disco può essere letto e scritto individualmente. Questi settori sono quasi universalmente di 512 byte. Questa struttura rappresentava quella reale di tutti i dischi magnetici fino all’introduzione nel 2010 dell’Advanced Format in cui la dimensione del settore è diventata di 4096 byte. Al contempo, c’è da dire che i supporti Flash non hanno mai utilizzato una struttura interna suddivisa in blocchi di 512 byte.

Nonostante le strutture di archiviazione sottostanti siano molto diverse, il protocollo principale per leggere e scrivere da un disco rigido è rimasto lo stesso. L’unica innovazione è stata l’astrarre la posizione fisica del settore sul disco passando dall’indirizzamento CHS (geometrico) a quello LBA (lineare).

Il firmware di un disco moderno contiene algoritmi sofisticati per mappare la sua struttura interna su questo protocollo avente settori da 512 byte per mantenerne la compatibilità con i vari filesystem e il firmware di avvio e i sistemi operativi cercando di minimizzare il così detto effetto dell’ “amplificazione di scrittura” che fa sì che il sistema di storage sia costretto a farne altre di servizio per sistemare le cose al suo interno [3].

Struttura dei supporti magnetici interni

Come evidenziato in precedenza, la prima rottura con la struttura interna a 512 byte è stata il passaggio a settori interni più grandi (tipo 4K) per mantenere l’efficiente la correzione degli errori. Più recentemente, su alcuni dischi SMR di capacità maggiore, sono state introdotte zone dove le tracce sono parzialmente sovrapposte (tipo 256K) per aumentare significativamente la densità di archiviazione.

Struttura dei supporti Flash interni

I media Flash sono strutturati a pagine. Hanno dimensioni variabili, ma sono sempre molto più grandi di 512 byte. Inoltre, per aggiornare una pagina, è necessario prima cancellarla, ciò richiede tempo e inoltre ogni pagina flash può sopportare solo un numero finito di cicli di cancellazioni.

A parte la strategia di riempire più celle sulle memorie flash di silicio, anche il numero di bit che possono essere immagazzinati in una singola cella è aumentato via via passando da 1 a 2 a 3 e ultimamente a 4 bit per singola cella di memoria (Single/Multi/Triple/Quad Level Cell). All’aumentare del numero di bit per cella, sfortunatamente, corrisponde una diminuzione del numero delle operazioni di scrittura nella singola cella di memoria e la conseguente diminuzione della longevità dell’unità. Le celle SLC a bit singolo hanno la densità più bassa di celle di memoria, ma la massima longevità, mentre una cella QLC a 4 bit ha caratteristiche opposte. Le memorie flash SLC sono generalmente utilizzate per i dispositivi professionali, mentre le celle a densità più elevata sono utilizzate più comunemente sui dispositivi consumer.

Tradizionalmente un dispositivo adotta un solo tipo di cella. Ciò fa sì che si eviti l’uso di celle QLC quando sono previste scritture frequenti, anche nel caso queste scritture siano di pochi byte e riguardino quindi solo una piccola regione del disco.

Protocollo di archiviazione a zone

Poiché sia la memoria magnetica che quella flash continuano a cercare di aumentare lo spazio di archiviazione, rendendo i dispositivi più veloci ed economici, l’emulazione trasparente di settori da 512 byte ad accesso casuale sta diventando sempre più un collo di bottiglia per questo progresso.

Il prezzo dell’emulazione dei settori da 512 byte è che le operazioni di I/O siano demandate al firmware senza contestualizzazione, dando al firmware una limitata libertà per ottimizzare le sue operazioni interne. La soluzione sarebbe spostare la gestione dei sottostanti blocchi di archiviazione nello stack fino a livello filesystem o addirittura a livello di applicazione nei casi ad alta intensità di uso di dati come nei database. Se Se il filesystem riflettesse nell’interfaccia più da vicino la struttura reale del disco, potrebbe ottimizzare i suoi schemi di scrittura attorno a quelli più efficienti per il dispositivo utilizzato.

Per l’archiviazione magnetica, le estensioni dell’insieme di comandi sono già state standardizzate (ZBC per ATA e ZAC per SCSI). Ciò consente di interrogare il posizionamento e lo stato della zona e di aprire e chiudere una zona. I dati possono essere scritti solo in sequenza nella zona e solo mentre è aperta. I dispositivi SMR gestiti dall’host implementano questi comandi e hanno trovato una certa penetrazione nel mercato dell’archiviazione aziendale e cloud.

Un simile insieme di comandi esiste anche per i dispositivi NVMe per i dispositivi di tipo Zoned Name Space (ZNS). Un ulteriore vantaggio dell’archiviazione flash è che permette ad un dispositivo ZNS di offrire un’archiviazione eterogenea, ad esempio un’allocazione di pagine SLC per i dati che cambiano rapidamente e pagine QLC per i dati che cambiano raramente.

Supporto del file system

Sulla piattaforma Windows, ReFS (Resilient File System) è l’unico filesystem intrinsecamente in grado di supportare dispositivi ZNS strutturati a zone gestite dall’host.

Introdotto nel 2012 con Windows 2012 e Windows 8.1, ReFS si è contraddistinto per la gestione automatica dell’integrità dei dati, la pulizia dei dati e le funzionalità RAID integrate. Dopo aver inizialmente aver  ottenuto poco interesse nel modo consumer, è stato rimosso dalle edizioni di Windows 10 destinate al mercato consumer con l’aggiornamento Fall Creators 2017.

Per coloro che desiderano informazioni più approfondite, vale sicuramente la pena guardare la presentazione di Lee Prewitt di Microsoft cliccando qui.

Macrium, prevede che la prospettiva congiunta di prestazioni migliorate e di uno storage più economico da parte dei dispositivi ZNS porterà finalmente ad una sempre più diffusa adozione del file system ReFS per i dispositivi ZNS. Macrium si aspetta di vedere aumentare in futuro la diffusione dei dispositivi SMR gestiti da host e in particolare nelle unità NAS dove il costo per unità di archiviazione è un parametro chiave.

Per questo motivo Macrium si è impegnata a rendere Macrium Reflect a prova di futuro il proprio applicativo Reflect aggiungendo il supporto ReFS dalla prossima major release 8.