Slik blir Microsofts nye filsystem

Slik blir Microsofts nye filsystem

Etter 19 år med NTFS kommer Windows 8 Server med ReFS.

Neste generasjon av Microsoft Windows vil bli utstyrt med nye lagringsteknologi. Det ene er «Storage Pools» og «Storage Spaces», hvor heterogene harddisker samles i en «pool», og hvor den samlede lagringskapasiteten gjøres tilgjengelig gjennom en «space», som kan sammenlignes med en virtuell harddisk. Storage Spaces-løsningen støtter virtuell tilrettelegging («thin provisioning») og sørger for at alle data er lagret på minst to fysiske harddisker. Flere detaljer om dette er beskrevet i dette blogginnlegget.

Den andre store nyheten er at Microsoft har utviklet et nytt filsystem for Windows. Dette kalles for Resilient File System (ReFS) og er i motsetning til Storage Spaces beregnet kun for Windows Server 8 – i alle fall i første omgang.

Microsoft har hatt flere samtidige mål når selskapet har utviklet ReFS, som trolig er det samme filsystemet som har blitt omtalt ved kodenavnet «Protogon» tidligere. Flere av løsningene har mye til felles med det man finner i andre moderne filsystemer.

Et hovedmål har vært at ReFS skulle opprettholde en høy grad av kompatibilitet med den mest brukte NTFS-funksjonaliteten. Mindre brukt NTFS-funksjonalitet støttes ikke.

For å opprettholde kompatibiliteten har Microsoft gjenbrukt NTFS-koden som er ansvarlig for implementeringen av filssystemsemantikken i Windows. Dette tar seg av selve filsystemgrensesnittet for blant annet lesing, skriving, åpning og lukking, men også slik som håndheving av sikkerhet, mellomlagring i minne og synkronisering av fildata.

Blant det som ikke lenger støttes er NTFS-utgavene av «named streams», objekt-IDer, korte navn, komprimering, kryptering på filnivå (EFS), brukerdatatransaksjoner, harde lenker og diskkvoter.

Bedre skaleringsmuligheter og bedre robusthet er to andre hovedmål.

Tabellen nedenfor viser kapasitetsgrensene til ReFS, dersom alle nødvendige ressurser, slik som lagringsplass og minne, er tilstede.

Begrensninger i ReFS.
Begrensninger i ReFS. Bilde: Microsoft

Dagens implementering av NTFS støtter filstørrelser på opptil 16 terabyte (244) , volumstørrelser på opptil 256 terabyte (232 clusters) og nærmere 4,3 milliarder (232) filer per volum.

ReFS vil ha en helt ny lagringsmotor som oppbevares på harddisken. Den tar seg av strukturer på harddisk og manipulering av disse. Utad tilbyr dette et nøkkel/verdi-grensesnitt til det overliggende laget, mens det er fullstendig basert på B+-trær internt. Det betyr at all informasjon på harddisken er lagret i denne typen strukturer. Ved hjelp av dette og et sett med ulike tabeller, skal både filer og kataloger kunne være svært store uten at det går utover ytelsen.

Filstrukturer i ReFS
Filstrukturer i ReFS Bilde: Micrsofort

Datasikker er selvfølgelig viktig i et lagringssystem. I ReFS lagres det en sjekksum for alle metadata ved skriving, mens det er valgfritt som dette også skal gjøre med selve innholdsdataene. Det sistnevnte kalles for integritetsstrømmer og vil sørge for at ReFS alltid lagrer filendringer på et annet stedet enn der originalen befinner seg. Dette sikrer at eksisterende data ikke går tapt på grunn av filen lagres på nytt. Sjekksumoppdateringen av filen gjøres atomisk med skrivingen av dataene, slik at dersom strømmen går under skrivingen, så har man fortsatt en verifisert versjon av filen.

ReFS er laget for å komplimentere de nevnte Storage Spaces. Kombinert kan disse, når det oppdages sjekksumfeil ved en fil på én harddisk, rettet feilen ved å hente dataene fra en annen harddisk.

Bitråte, hvor det på deler av harddisken oppstår datafeil over tid, og da typisk i data som sjeldent leses, skal bekjempes ved hjelp av en systemoppgave som periodisk renser alle metadata og data i integritetsstrømmene ved å sammenligne dataene med sjekksummene. Dersom det oppdages sjekksumfeil, vil dataene erstattes ved at de overskrives med data av en kopi på en annen disk, hvor dataene er i overensstemmelse med sjekksummen.

Dersom brukeren velger ikke å speile dataene mellom flere harddisker ved hjelp av Storage Spaces, eller i de tilfellene hvor dataene er korrumpert på alle de redundante kopiene, skal ReFS sikre at det ikke nødvendig å deaktivere lagringsvolumet og kjøre en omfattende disksjekk på det. I stedet vil filsystemet sørge for at de korrumperte dataene rett og slett fjernes fra filsystemet, dersom de ikke automatisk kan repareres. Dette skal sikre at korrumperte fildata det ikke kan påvirke de ikke-korrumperte dataene i filsystemet.

I dette blogginnlegget, som omfatter langt mer informasjon og detaljer om ReFS, skriver Microsofts Surendra Verma, at ReFS i utgangspunket vil tilbys som et lagringssystem for Windows Server, men at det senere også vil kunne brukes i klientsystemer. Først enda noe senere vil det kunne brukes i forbindelse med oppstartsvolum.

ReFS-filsystemer vil kunne deles over nettverk ved hjelp av protokollene SMB eller NFs.

Ulempene med ReFS er først og fremst knyttet til sjekksummene, som vil kreve noe CPU-kraft og noe ekstra lagringsplass. Men Microsoft mener at fordelene er verdt denne kostnaden.

Verma sier ingenting om at ReFS vil gi bedre ytelse en NTFS. På direkte spørsmål i en kommentar svarer han bare at Microsoft tror at systemet vil møte ytelseskravene til vanlige filsserverscenarier.

    Les også:

Til toppen