Overview
Resilient File System (ReFS) is a new file system introduced in
Windows Server 2012. Initially, it is being targeted for implementation
as a file system that is primarily used for file servers. However,
starting as the file system for a file server is just the beginning.
Like its predecessor, NTFS, ReFS will begin as a file server system,
then become a mainstream file system. Before long, we will all be using
ReFS on our boot partitions.
So why would you want to change file systems? If NTFS is working, why
should anybody even consider switching to ReFS? ReFS is better and
faster in many ways than NTFS, but in one way more than all others: its
resiliency.
Resilient File System will likely replace NTFS completely within the
next versions of Windows, and here are some reasons why you are going to
really love the new file system.
4) ReFS Supports Long File Names and File Path. Really Long.
Capacity is just one of the ways that ReFS is making changes. There
will no longer be a limitation of 255 characters for a long file name. A
file name in ReFS can be up to 32,768 unicode characters long! The
limitation on full path size has also been updated from 255 characters
for the total path size to 32K (32,768).
The legacy 8.3 naming convention is no longer stored as part of the
file data. There is only one file name, and it can be a very long name.
Other changes have increased the capacity as well, though it is
unlikely that the maximum size of a single volume will impact a real
person. NTFS already had a maximum volume size of 16 Exabytes. The ReFS
format allows a maximum volume size of 262,144 Exabytes.
3) ReFS is Much Better at Handling Power Outages
NTFS stores all of its file information in metadata. The filename is
stored in the metadata. The location on the hard disk is stored in the
metadata. When you rename a file, you’re changing the metadata.
Likewise, ReFS stores its file information in metadata.
One big difference in how NTFS and ReFS are different is in the way
they update the metadata. NTFS performs like metadata updates, which
means that the metadata is updated “in-place.” The metadata says your
new folder is named “New Folder,” and then you rename it to “Downloaded
Files.” When you make the change, the actual metadata itself is written
over. When a power outage occurs at the time you’re updating a disk, the
metadata can be partially or completely overwritten, causing data
corruption (called a “torn write”). You may
experience a BSOD when you try to restart, or you may find that your data is no longer accessible.
ReFS does not update the metadata in-place. Instead, it creates a new
copy of the metadata, and only once the new copy of the metadata is
intact and all the writes have taken place does the file update itself
with the new metadata. There are further improvements to the way that
ReFS handles writes to the metadata, but for the most part the other
changes are performance improvements. This new way of updating metadata
allows you to reliably and consistently recover from power outages
without disk corruption.
“We perform significant testing where power is withdrawn
from the system while the system is under extreme stress, and once the
system is back up, all structures are examined for correctness. This
testing is the ultimate measure of our success. We have achieved an
unprecedented level of robustness in this test for Microsoft file
systems. We believe this is industry-leading and fulfills our key design
goals.”
- Surendra Verma,
“Building the Next Generation File System for Windows 8”
Development Manager, Storage and File Systems
Microsoft
2) ReFS works with Storage Spaces to Better Detect and Repair Problems
Storage Spaces is a storage virtualization technology. Storage Spaces
was not made to run exclusively with ReFS, but they do work great
together. ReFS has improved functionality when used in conjunction with
Storage Spaces. Likewise, some of the redundancy features that Storage
Spaces offers are able to be leveraged because of the abilities of ReFS.
So ReFS can be used without Storage Spaces, and Storage Spaces can be
used without ReFS, but when they are used together, both ReFS and
Storage Spaces both work more effectively. Storage Spaces uses
mirroring, spreading copies of data across multiple physical data
drives. When Storage Spaces finds a problem with even one piece of
corrupt data on a drive, the corrupt data will be removed from the
drive, and will be replaced with a known good copy of the data from
another one of the physical drives.
ReFS uses checksums on the metadata to ensure that the data has not
been corrupted. When Storage Spaces finds mismatched data between two or
more copies of the same file, it can rely on the built-in metadata
checksums that are a feature of ReFS. Once the checksums are validated,
the correct data is copied back to the other physical drives, and the
corrupted data is removed.
Occasionally, an ReFS drive controlled by Storage Spaces will undergo routine maintenance called
“scrubbing.”
Scrubbing is a task that runs on each file in a Storage Space.
Checksums are verified, and if there are any checksums that are found to
be invalid, the corrupted data is replaced with known good data from a
physical drive that has a valid checksum. Scrubbing is on by default,
but can be customized and configured even on individual files.
1) ReFS Volumes can Stay Live even if they have Irreparable Corruption
With NTFS, even a small amount of data corruption can cause big
problems. With ReFS you are much less likely to have problems. In a case
where a system is not using Storage Spaces and mirroring, or if for
some strange reason one part of the data across the whole mirror is
corrupt, only the corrupt parts will be removed from the volume, and the
volume itself will stay active, thanks to
“salvage.”
Salvage can remove even a single file that is corrupt. Once the
corrupt data is removed, the volume is brought back. This turns what is
usually a server that is brought offline for time consuming disk
checking utilities to find and repair the entries, to a volume which is
repaired except for the corrupt data files and brought back online in
under one second.
Conclusion
Just like NTFS, ReFS brings with it some major improvements which
will become a normal part of our industry for the likely future.
Specifically, ReFS brings improvements in the way that metadata is
updated, and by using checksums to ensure that corrupt data is easily
found and repaired.
ReFS is the most robust file system from Microsoft to date, with
reliability built in to make the most of our time and reduce the total
cost of ownership on Windows Servers.
Michael Simmons