Leading specialist and manager of Windows Storage and File System division Surendra Verma explains that ReFS will be based on NTFS and preserve compatibility with the key features and at the same time it will be an entirely different architecture. Some features and semantics of NTFS would be eliminated, including support for short names, object ID, compression, encryption at the level of files (EFS), disk limits (quotas), data flows, transactions, sparse files, extended attributes and hard links.
ReFS data structure organised as B+ trees
ReFS key goals
- Preserve maximum compatibility with a set of widely used NTFS features and get rid of unnecessary features that only complicate the system
- Data verification and automatic correction
- Maximum scalability.
- Inability of complete shutdown of file system due to isolation of bad sectors.
- Flexible architecture using such function as Storage Spaces specially created for and implemented in ReFS.
ReFS key functions
(some are available from Storage Spaces only)
- Integrity of metadata with checksums.
- Integrity streams: method of data recording to disk for additional protection of data in the event of partial disk failure.
- Transaction model "allocate on write" (copy on write)
- Large volume, file and directory sizes. Volume size is limited to 278 bites under cluster size of 16 KB (264 * 16 * 210), stack Windows supports 264. Maximum number of files in directory: 264. Maximum number of directories in volume: 264.
- Storage pooling and virtualization makes file system creation and management easy.
- Data striping for performance (bandwidth can be managed) and redundancy for fault tolerance.
- Disk scrubbing for protection against latent disk errors.
- Resiliency to corruptions with "salvage" for maximum volume availability in all cases.
- Shared storage pools across machines for additional failure tolerance and load balancing.
Additionally, ReFS will inherit many functions and semantics of NTFS, including BitLocker encryption, access control lists, USN journal, change notifications, symbolic links, junction points, mount points, reparse points, volume snapshots, file IDs and oplocks.
Of course, data stored on ReFS will be accessible for clients through the same APIs, that are used today on all operating systems that can access NTFS volumes.