Last Update: Aug 05, 2022 | Published: Apr 04, 2022
Organizations looking to move some or all of their file systems to cloud storage have choices. The options from the two biggest public cloud service providers are Microsoft Azure Files, Amazon Elastic File System (EFS), or Amazon FSx.
All these platforms offer cloud-based serverless storage, allowing you to avoid maintaining complex file systems. This article compares these options based on 4 key parameters – performance, price, features, and support.
One fundamental building block of Microsoft’s Azure storage services is Storage Accounts, which are top-level resources that represent a shared pool of storage. These resources offer table, queue, and blob storage for an application’s persistent storage requirements.
In 2014, Microsoft launched Azure Files, an extension of the Storage Account resource, allowing access to file storage with the Server Message Block (SMB) and Network File System (NFS) protocols used in traditional file system infrastructure.
In 2020, Azure Files was enhanced to integrate with Windows Active Directory for familiar share and NTFS Access Control List (ACL) management. This added functionality meant augmenting or even replacing traditional on-premises SMB-based file systems with a serverless cloud infrastructure was now feasible.
Azure Files can be provisioned in two flavors:
SMB and NFS are not Wide Area Network (WAN)-optimized protocols. Organizations looking to utilize Azure Files at the enterprise scale can use Azure File Sync to cache data on the Local Area Network (LAN), reduce latency, and improve user experience.
Furthermore, security-conscious organizations can protect Azure Files with a Private Link, and make sure that files are only accessible using private IP addresses. They can also ensure that traffic is tunneled through a site-to-site virtual private network (VPN) or Express Route connection, disabling the public endpoint and the risks associated with access to the Internet.
Fully integrated with Azure backup for point-in-time recovery, server-side Volume Shadow Copy Service (VSS) snapshots allow self-service restoration through previous versions. Data in Azure Storage is encrypted using 256-bit Advanced Encryption Standard (AES) encryption.
The Amazon Web Services (AWS) cloud has several storage services that we detailed in a previous guide:
Amazon EFS and Amazon FSx are the main file system options on AWS. Amazon EFS offers NFS access only. It can only be mounted on Linux Amazon EC2 instances and not Windows VMs. For SMB access from Windows, Amazon launched FSx in 2018.
Amazon EFS offers 2 storage classes:
Files stored on EFS standard storage classes are replicated across multiple availability zones (AZs) for site recovery, whereas One Zone storage classes are only available within a single availability zone.
EFS can be accessed from on-premise endpoints using AWS Direct Connect or an AWS VPN connection to the Amazon Virtual Private Cloud (VPC). You can learn how to set up an AWS EFS File System here.
For organizations that require SMB access to files, Amazon FSx is available. FSx offers both SSD and HDD storage types, and similar to Azure Files, an Amazon FSx file system can be joined to Microsoft Active Directory to allow familiar NTFS permission management. Amazon FSx for Windows File Server also supports the use of Amazon FSx File Gateway to provide low latency from the LAN (similar to Azure File Sync).
FSx can be deployed into single-AZ or Multi-AZ configuration, and VSS capable point-in-time backups are taken using AWS backup. Capacity is effectively limitless, with thousands of Amazon FSx systems in an AWS account permitted, each allowing up to 64 TB of data. You can check out our How to Set Up Amazon FSx for Windows File Server guide on Petri for more details.
Both EFS and FSx encrypt the file system data and backups at rest using keys managed through the AWS Key Management Service (KMS) to ensure 256-bit AES encryption at rest.
The maximum performance of Azure Files is bound by the storage account type:
The actual performance received depends on the provisioned capacity with a baseline of 3000 IOPS + 1 IOPS per GiB, up to 100,000 per file share, and 100MiB/sec plus 0.1MiB/s per GiB throughput being available.
Similarly, the performance of Amazon EFS scales as the file system grows, going as far as 3 GB/sec along with 100,000 of disk IOPS. EFS file shares can be provisioned in either Bursting Throughput mode (default) or in Provisioned Throughput mode. Instead of scaling throughput with used capacity, Provisioned Throughput mode allows specific throughput to be guaranteed (at cost).
With Amazon FSx, throughput capacity is defined at the time of provisioning and determines the network and disk speeds available for the file share (8-2048Mbps of throughput and 2K-80K IOPS).
Azure Files follows 2 billing models:
Here’s what you can expect for Amazon EFS and Amazon FSx:
In addition to the above, expect charges for data backup and data egress charges.
The table below compares file system features:
Feature | Azure Files | Amazon EFS (FSx) |
Protocols | SMB 2.1, 3.0, 3.1.1 NFSv4 REST | (SMB 2.0, 3.0, 3.1) NFSv4 |
Availability | Premium Storage (LRS, ZRS) – 99.9% SLA Standard Storage (LRS, ZRS, GRS, GZRS) – 99.9% SLA | One Zone Storage (Single Availability Zone) – 99.99% SLA Standard Storage (Multiple Availability Zones) – 99.99% SLA (FSx – 99.99% SLA) |
Authentication | Active Directory Domain Services (SMB only, not NFS) Azure AD DS (SMB only, not NFS) | (AD DS – SMB only, not NFS) |
Encryption | AES256 encryption at rest (MS or customer-managed keys) | AES256 encryption at rest with AWS KMS |
Connectivity | Internet S2S VPN Express Route | Internet AWS VPN AWS Direct Connect |
Performance | Azure File Sync for LAN cache Premium – 3000 IOPS + 1 IOPS per GiB and 100MiB/sec plus 0.1MiB/s per GiB Standard – Up to 20k IOPS and 300 MiB/sec | (Amazon FSx File Gateway for LAN cache) (8-2048Mbps of throughput and 2k-80k IOPS) 100,000 of IOPS and up to 512 MiBps |
Data Protection | Azure Backup | Backed up to Amazon S3 |
Microsoft provides an availability Service Level Agreement (SLA) of 99.9% for read and write transactions, which increases to 99.99% for read transactions if the storage account is configured for Read-Access Geo-Redundant (RA-GRS) replication. Amazon provides an availability SLA of 99.99% for all configurations of EFS and FSx.
That’s it for our overview of Microsoft Azure Files, Amazon Elastic File System (EFS), and Amazon FSx. There are a lot of different parameters to take into consideration before moving your organization’s file systems to cloud storage services, and we hope that this guide will help the service that best fits your needs.