Microsoft Rejiggers File System for Windows Server 8

Windows Server 8 will feature a new kind of file system: Resilient File System, or ReFS. It's designed to auto-correct data, provide resiliency when paired with Storage Spaces, and optimize for extreme scaling. Data stored on ReFS will be accessible through the same file access APIs on clients that are used on operating systems that can access NTFS storage volumes.

ReFS, or Resilient File System, builds on NTFS, including many of its features but leaving out others.

It will be introduced only as part of Windows Server 8, in line with Microsoft's standard approach for putting out new file systems.

ReFS will verify and auto-correct data, optimize for extreme scale and provide a full end-to-end resiliency architecture when used in conjunction with Storage Spaces. The two were designed and built together.

"I like the idea of trying to make everything as compatible with NTFS while trying to scale up something large-scale underneath it," Wes Miller, a research analyst at Directions on Microsoft, told TechNewsWorld.

This new on-disk storage engine handles and manipulates on-disk structures. It uses B+ trees as the single common on-disk structure to represent all information on the disk.

A B tree is a tree data structure optimized for systems that read and write large blocks of data. It's commonly used in databases and file systems. B+ trees are one variant.

Trees can be very large and multi-level or really compact, having just a few keys, and embedded in another structure. This ensures extreme scalability up and down for all aspects of the file system, Microsoft said.

Reliability and ReFS

To maximize reliability, Microsoft uses an allocate-on-write approach that writes metadata updates to a different location in an atomic fashion instead of updating metadata in-place. Transactions are built on top of the allocate-on-write approach.

All ReFS metadata is checksummed at the level of a B+ tree page, and the checksum is stored separately from the page. This lets users detect all forms of disk corruption.

ReFS also offers an "integrity streams" option. When this is enabled, ReFS checksums files automatically and writes file changes using the allocate-on-write method. This ensures there's always a verifiable version of the file available to check for corruption if power is lost.

ReFS was designed to plug into the storage stack just like another file system. Microsoft expects it to work seamlessly with most file system filters.

Testing, Testing

ReFS has been tested with tens of thousands of tests that have been developed for NTFS. However, Microsoft apparently hasn't developed any new tests specific to ReFS.

That's not a problem, Directions on Microsoft's Miller suggested.

"The number of developers, especially in this country, that focus in on the file system and do the level of testing you need to do ... is so small that Microsoft has probably been doing plug fests with them ... the EMCs and StorageTeks," Miller said.

"Microsoft's coming up with a way that they can bring this new thing out and have it running while not breaking anything," Miller added.

There are no plans right now to make ReFS available on PCs, only on Windows Server 8 clients.

"ReFS would be used by an application, like Sharepoint, and the client would not change," Digistor's Ellis told TechNewsWorld. "There's nothing very satisfying."