Microsoft’s new ReFS file system was originally introduced on Windows Server 2012. It’s included on Windows 10, where it can only be used as part of the drive-pooling Storage Spaces feature. ReFS will be improved in Windows Server 2016, and will be part of Windows 10 Pro for Workstations.
But what is ReFS, and how does it compare to the currently-used NTFS?
What Is ReFS?
Short for “Resilient File System”, ReFS is a new file system built using code from the current NTFS file system. At the moment, ReFS is not just a replacement for NTFS. It has its own advantages and disadvantages. You can’t just use ReFS instead of NTFS on your system drive.
As ReFS is Microsoft’s newest file system, it’s designed to address a few major issues with NTFS. ReFS is designed to be more resilient against data corruption, perform better for certain workloads, and scale better for very large file systems. We’ll look at exactly what that means.
ReFS Protects Against Data Corruption
The “Resilient” part is highlighted in the name. ReFS uses checksums for metadata—and it can optionally use checksums for file data, too. Whenever it reads or writes a file, ReFS examines the checksum to ensure it’s correct. This means the file system itself has a built-in way to detect data corruption on the fly.
ReFS is integrated with the Storage Spaces feature. If you set up a mirrored Storage Space using ReFS, Windows can easily detect file system corruption and automatically repair problems by copying the alternate copy of the data on another drive. This feature is available on both Windows 10 and Windows 8.1.
If ReFS detects corrupted data and doesn’t have an alternate copy it can restore from, the file system can immediately remove the corrupted data from the drive. It doesn’t require you reboot your system or take the drive offline, as NTFS does.
ReFS doesn’t just check files for corruption when reading and writing them. An automated data integrity scanner regularly checks all files on the drive to identify and fix data corruption, too. It’s an auto-correcting file system. You don’t need to use chkdsk at all.
The new file system is also resistant to data corruption in other ways, too. For example, when you update a file’s metadata—the file name, for example—the NTFS file system will directly modify the file’s metadata. If your computer fails or the power goes out during this process, there may be data corruption. When you update a file’s metadata, the ReFS file system will create a new copy of the metadata. ReFS points the file at the new metadata only after the new metadata is written. There’s no risk of the file’s metadata being corrupted. This is known as “copy-on-write”. Copy-on-write is also available on other modern file systems, like ZFS and BtrFS on Linux as well as Apple’s new APFS file system.
ReFS Drops Some Old NTFS Limitations
ReFS is more modern than NTFS, and supports much larger volumes and longer file names. In the long term, these are important improvements.
On an NTFS file system, file paths are limited to 255 characters. With ReFS, a file name can be up to 32768 characters long. Windows 10 now allows you to disable this short character limit for NTFS file systems, but it’s always disabled on ReFS volumes.
ReFS also discards the DOS-style 8.3 filenames. On an NTFS volume, you can still access C:\Program Files\ at C:\PROGRA~1\ for compatibility purposes with old software. These legacy file names are gone on ReFS.
NTFS has a theoretical maximum volume size of 16 exabytes, while ReFS has a theoretical maximum volume size of 262144 exabytes. That doesn’t matter much right now, but it will one day.
ReFS Can Be Faster, Sometimes
ReFS isn’t just designed to improve all performance over NTFS. Instead, Microsoft is focusing on a few important optimizations that make ReFS perform much better in certain cases.
For example, when used with Storage Spaces, ReFS supports “real-time tier optimization”. You could have a drive pool with both drives optimized for performance and drives optimized for capacity. ReFS will always write to the drives in the performance tier, maximizing performance. In the background, ReFS will automatically move large chunks of data to the slower drives for long term storage.
On Windows Server 2016, Microsoft improved ReFS to offer better performance with certain virtual machine features. Microsoft’s own Hyper-V virtual machine software takes advantage of these (and in theory, other virtual machine software could support them if they wanted to).
For example, ReFS supports block cloning, which accelerates virtual machine cloning and checkpoint-merging operations. To create a cloned copy of a virtual machine, ReFS only needs to create a new copy of metadata on the drive and point it at an existing data on the drive. That’s because, with ReFS, multiple files can point to the same underlying data on disk. When the virtual machine changes and new data is written to the drive, it’s written to a different location and the original virtual machine data is left on the drive. This makes the cloning process much faster and requires much less disk throughput.
ReFS also offers a new “sparse VDL” feature that allows ReFS to quickly write zeros to a large file. This makes it much faster to create a new, empty, fixed-sized virtual hard disk (VHD) file. Whereas this might take 10 minutes with NTFS, it can take just a few seconds with ReFS.
ReFS Can’t Replace NTFS (Yet)
All these features sound pretty good, but you can’t just switch to ReFS from NTFS. Windows cannot boot from a ReFS file system, and requires NTFS.
ReFS also omits other features NTFS includes, including file system compression and encryption, hard links, extended attributes, data deduplication, and disk quotas. However, ReFS is compatible with a variety of features. For example, while you can’t perform encryption of specific data at the file system level, ReFS is compatible with full-disk BitLocker encryption.
Windows 10 does not allow you to format any old partition as ReFS, either. You can currently only use ReFS with Storage Spaces, where its reliability features help protect against data corruption. On Windows Server 2016, you can choose to format volumes with ReFS instead of NTFS. You might want to do this for a volume you plan on storing virtual machines on, for example. However, you still can’t use ReFS on your boot volume. Windows can only boot from an NTFS drive.
It’s unclear what the future holds for ReFS. Microsoft may one day improve it until it can fully take the place of NTFS on all versions of Windows. It’s unclear when this may happen. But, for now, ReFS can only be used for specific tasks.
You’ll find more details about ReFS and the specific features it supports on Microsoft’s website.
How to Use ReFS
On a typical Windows 10 PC, you can only use ReFS through the Storage Spaces feature. Be sure to format your Storage Spaces as ReFS and not NTFS when you see the file system option. You’ll automatically benefit from the data integrity features in the ReFS file system if you choose it.
On Windows Server, you can choose to format some volumes as ReFS using the normal disk management tools, which may be particularly useful if you’re using virtual machines on those drives. But you can’t format your boot drive as ReFS, and you’ll lose access to some NTFS features.
ReFS functionality is now available as part of Windows 10 Pro for Workstations as well as Windows 10 Enterprise.