Windows 2019 server has reached General Availability (GA) in October 2018. This release ships with a bunch of new features and improvements in Hyper-v, containers, Failover cluster, ReFs, deduplication, storage Direct spaces, SOFS improvements…So, it’s time to have a look at some of these features….
Windows 2019 Server has introduced an improved version of the Resilient File system (ReFS). ReFs is not widely used (as far as I know) because NTFS is the default and well known file system in Windows systems and because ReFS was missing major features when first introduced in Windows 2012 Server. This might change in the future because of the improvements and because Microsoft start to recommend its usage in specific scenario.
This post will not explain benefits or key factors of ReFS in deep details. If you need to have more technical information, please have a look at this post (https://docs.microsoft.com/en-us/windows-server/storage/refs/refs-overview). The aim of this post is to present situation where ReFS can be used and when it’s not recommended to use.
Let’s go !
Resilient File System (ReFS) is not a new feature of Windows 2019 server. ReFS technology has been made available with the release of Windows Server 2012. However, because of some limitations of the new file system, not a lot of people have been deploying or using this technology. This changed a little bit with the release of Windows 2016 server as significant improvements have been made.
The most common scenario where ReFs partition would have been recommended in Windows 2016 is for Virtual infrastructure. ReFs includes “Accelerated VM operations” feature that basically allows you to quickly copy VM disk or create new VM disks in seconds instead of minutes when using NTFS partitions. Technology like block cloning and sparse VDL improve speeds of disk operations for Hyper-V infrastructure. If you have a hyper-v server running on top of windows 2016 Server, you could try to create a brand new VM disk on NTFS partition and do the same on ReFS partitions and you will see the difference. On ReFS, creation time is really done in seconds…
NTFS partition needs to reboot if a check disk operation is needed. This is not the case anymore for ReFS partitions. The ReFS file was designed with resiliency in mind and checksum are done while system is running (so no need to reboot with CHKDSK).
ReFS support different storage Tier configuration. You can create Capacity Tier or Performance Tier. ReFS technology allows you to mix these kind of storage tier and will allow to configure systems using hot disks (used for performance) and cold disks (used for large data not changing a lot).
As you can see, ReFS seems to be production ready and can be used in a number of scenarios. Now, ReFS supports the following features
|Cluster Shared Volume (CSV) support||Yes||Yes|
|Failover cluster support||Yes||Yes|
|Offloaded Data Transfer (ODX)||No||Yes|
As you can see, there is a lot of stuff that needs to be covered when speaking about ReFs in order to become an expert and get the best of this new technology. Again, this is not the purpose of this post…What we wanna know is basically when to use this technology…or not.
When Not To Use ReFS
ReFs has seen a lot of improvements. However, there are still some limitations that make ReFS not useable in certain conditions. The most common situation where ReFS cannot be used would be when you install a new Operating System and you have to configure bootable volumes.
ReFS cannot be used on boot drives. You will have to use NTFS. When installing your system, you will see that there is basically no option to format the boot disk with ReFS.
Another limitation often mentioned is related to Disk Quotas. If you plan to provide file services and you need to control disk consumption, you would need to format the disk using NTFS technology
Other features are still not supported on ReFS file system. Some of them are:
- File encryption not supported (i.e.EFS)
- File compression not supported
- short names not supported
- Hard links not supported
Complete list of limitation can be found here
When to use ReFS
Accelerated VHDX operations
Based on the initial information provided here above, one of the obvious (and most common) scenario when to use ReFS file system is for Virtualization situation. Hyper-V CheckPoint and quick disk creation will benefit tremendously and speed up operations when working with your hyper visor.
ReFs would be beneficial to use in Virtual environment since Deduplication is now supported in Windows 2019. However, so far, Microsoft guidance is to use ReFs with deduplication when deploying VDI infrastructure. Because VDI will use the same disk template, deduplication can be indeed beneficial to use in conjunction with ReFs volumes.
Some people have been using ReFs and deduplication when using Hyper-v server to save some disk space in their Lab environment. This scenario is not recommended by Microsoft but seem to work. More testing and validation might be needed to make it production ready (and if it will be production ready for such scenario…)
Backup & Archive Infrastructure
ReFs come up with some block cloning technology as well (see https://docs.microsoft.com/en-us/windows-server/storage/refs/block-cloning) which can improve backup time and storage space consumed. Block technology API can be used by backup software vendors which result in copying pointers instead of full data.
ReFs file system can be also beneficial in Enteprise where archival data is needed. Combining all storage technology made available within Windows 2019 (Storage Spaces and ReFS), ReFS by design will provide high resilient file system and will ensure that archived data corruption can be find and fixed quickly ensure high data integrity
This something I discovered recently while digging into ReFS technology. Exchange 2013 support ReFS for Database files, logs files and index files (again not operating system and no exchange system files can be hosted on ReFS)
A dedicated post would be needed in order to see how ReFS can be used with Exchange technology. This might be one of the coming post…
Cluster Shared Volume (CSV)
This one is still unclear to me. Should I use NTFS or ReFS filesystem when using CSV ? Guidance in Windows 2016 was to use NTFS for CSV volumes because File system redirection mode technology used. In windows 2016, ReFs usage is supported and can be used only when using Storage Space direct technology. So, we could assume that the same recommendation is valid for Windows 2019 even if some improvements have been made in the way CSV handle redirect traffic….
As you can see, Windows 2019 is bringing some new stuff and new recommendations about ReFs usage. Reading and digging through internet, it’s seems obvious that ReFS can be really beneficial (speed and performance) in virtualization and backup scenarios.
Initially, this post was to provide a quick overview of what ReFS can do and when to use. A quite straight forward task, isn’t it. However, more we are reading about Windows 2019 and ReFs, more we see how Microsoft has introduced really new cool storage possibilities that needs to be understood in order to implement them properly.
This is probably one of the last post in year 2018. However, we can already how much work and study would be needed in 2019 in order to learn and master all these new features, technologies and recommendations shipping with Windows 2019 server…
It’s seem that year 2019 will be a busy one….:-)
Till next time