Resilient File System (ReFS) è il nome del nuovo file system per Windows Server 8, basato su un sottoinsieme delle funzionalità di NTFS, con l’aggiunta di nuove caratteristiche che offrono integrità, verifica e autocorrezione dei dati. ReFS permette di gestire volumi di grandi dimensioni e funziona in combinazione con gli Storage Space.
Con un dettagliato post pubblicato sul blog ufficiale di Windows 8, Microsoft spiega che ReFS non è stato progettato da zero, ma sono state prese le migliori feature di NTFS, riutilizzando il codice che implementa l’interfaccia del file system, e aggiungendo un nuovo motore per le strutture on-disk, come la MFT (Master File Table) che rappresenta file e directory. Per questo motivo, i volumi ReFS saranno accessibili anche dalla versione client di Windows 8.
La struttura del nuovo file system è organizzata in tabelle, come in un database. La tabella principale, denominata Object Table, contiene tutti i riferimenti alle directory. Ogni directory è essa stessa una tabella, in cui ogni riga rappresenta un file. Ad ogni file è associato un campo File Metadata che corrisponde ad un’altra tabella, le cui righe sono gli attributi dei file. In sostanza, ReFS è formato da uno stream di tabelle e ciò permette di avere file e directory molto grandi senza effetti negativi sulle prestazioni.
A differenza di NTFS che aggiorna i metadati sul posto, ReFS sfrutta un approccio allocate-on-write che scrive i metadati in differenti locazioni, garantendo dunque una maggiore affidabilità. Le transazioni, ad esempio la scrittura dei dati su disco, vengono completate sempre correttamente, sfruttando anche la logica di recupero dai fallimenti presente in NTFS. ReFS inoltre combina le scritture per parti correlate, eseguendo poche (ma più grandi) operazioni di I/O.
Per rilevare e correggere eventuali corruzioni dei dati, ReFS utilizza un checksum e scrive i file in una locazione differente dalla precedente. In questo modo i dati possono essere recuperati, in quanto la versione precedente non viene sovrascritta. Gli Storage Space, disponibili anche in Windows 8, funzionano insieme a ReFS e garantiscono la protezione dei dati conservando copie su più dischi. Quando ReFS rileva un problema su un disco, chiede a Storage Space di leggere tutte le copie dei dati, di scegliere quella corretta in base al checksum e di correggere la copia danneggiata. Tutto ciò avviene in modo trasparente per le applicazioni.
ReFS è esclusivamente un file system progettato per lo storage dei dati, per cui non può essere utilizzato sui dischi di boot né su media removibili. Il nuovo file system sarà integrato in Windows Server 8, mentre la versione client di Windows 8 può solo leggere i volumi ReFS.