Amazon Elastic File System (Amazon EFS) provides serverless, fully elastic file storage so that you can share file data without provisioning or managing storage capacity and performance. Amazon EFS is built to scale on demand to petabytes without disrupting applications, growing and shrinking automatically as you add and remove files. Because Amazon EFS has a simple web services interface, you can create and configure file systems quickly and easily. The service manages all the file storage infrastructure for you, meaning that you can avoid the complexity of deploying, patching, and maintaining complex file system configurations.
Note: EFS supports Linux Only.
Amazon EFS supports the Network File System (NFS) version 4 (NFSv4.1 and NFSv4.0) protocol, so the applications and tools that you use today work seamlessly with Amazon EFS. Amazon EFS is accessible across most types of Amazon Web Services compute instances, including Amazon EC2, Amazon ECS, Amazon EKS, AWS Lambda, and AWS Fargate.
The service is designed to be highly scalable, highly available, and highly durable. Amazon EFS offers the following file system types to meet your availability and durability needs:
Regional (Recommended) – Regional file systems (recommended) store data redundantly across multiple geographically separated Availability Zones within the same AWS Region. Storing data across multiple Availability Zones provides continuous availability to the data, even when one or more Availability Zones in an AWS Region are unavailable. One Zone – One Zone file systems store data within a single Availability Zone. Storing data in a single Availability Zone provides continuous availability to the data. In the unlikely case of the loss or damage to all or part of the Availability Zone, however, data that is stored in these types of file systems might be lost.
Amazon EFS provides file-system-access semantics, such as strong data consistency and file locking. For more information, see . Amazon EFS also supports controlling access to your file systems through Portable Operating System Interface (POSIX) permissions. For more information, see .
Here's an overview of its key features and functionalities:
EFS file system types
Amazon EFS offers Regional and One Zone file system types.
Regional – Regional file systems (recommended) store data redundantly across multiple geographically separated Availability Zones within the same AWS Region. Storing data across multiple Availability Zones provides continuous availability to the data, even when one or more Availability Zones in an AWS Region are unavailable.
One Zone – One Zone file systems store data within a single Availability Zone. Storing data in a single Availability Zone provides continuous availability to the data. In the unlikely case of the loss or damage to all or part of the Availability Zone, however, data that is stored in these types of file systems might be lost.
The following table compares the file system types, including their availability, durability, and other considerations.
Durability (designed for)
EFS storage classes
Amazon EFS offers different storage classes that are designed for the most effective storage depending on use cases.
EFS Standard – The EFS Standard storage class uses solid state drive (SSD) storage to deliver the lowest levels of latency for frequently accessed files. New file system data is first written to the EFS Standard storage class and then can be tiered to the EFS Infrequent Access and EFS Archive storage classes by using lifecycle management. EFS Infrequent Access (IA) – A cost-optimized storage class for data that is accessed only a few times each quarter. EFS Archive – A cost-optimized storage class for data that is accessed a few times each year or less. The EFS Archive storage class is supported on EFS file systems with Elastic throughput. You cannot update your file system’s throughput to Bursting or Provisioned once the file system has data in the Archive storage class. The following table compares the storage classes. For more details about the performance of each storage class, see . Durability (designed for)1
Minimum billing charge per file2
Core Features
Amazon EFS is a fully managed service, eliminating the need for manual infrastructure management tasks. It provides an implementation of NFS file share and is accessed using the NFS protocol. Elastic Storage Capacity: EFS offers elastic storage capacity, allowing you to scale storage based on demand. Pay only for the storage capacity you use, without the need for pre-provisioning. Mount-points can be configured in one or multiple Availability Zones (AZs) within a region. File systems are replicated across multiple AZs for high availability and durability. Amazon EFS can scale up to petabytes of data and automatically grows and shrinks based on data usage. Concurrently connect thousands of Amazon EC2 instances from multiple AZs. File systems can be accessed concurrently from all AZs in the region where they are located. Access from on-premises servers is enabled via AWS Direct Connect or AWS VPN. Common use cases include big data and analytics, media processing workflows, content management, web serving, and home directories. Data consistency in Amazon EFS
Amazon EFS provides the close-to-open consistency semantics that applications expect from NFS.
In Amazon EFS, write operations for Regional file systems are durably stored across Availability Zones in these situations:
An application performs a synchronous write operation (for example, using the open Linux command with the O_DIRECT flag, or the fsync Linux command). An application closes a file. Depending on the access pattern, Amazon EFS can provide stronger consistency guarantees than close-to-open semantics. Applications that perform synchronous data access and perform non-appending writes have read-after-write consistency for data access.
File locking
NFS client applications can use NFS version 4 file locking (including byte-range locking) for read and write operations on Amazon EFS files.
Remember the following about how Amazon EFS locks files:
Amazon EFS only supports advisory locking and read/write operations don’t check for conflicting locks before executing. For example, to avoid file synchronization issues with atomic operations, your application must be aware of NFS semantics (such as close-to-open consistency). Any one particular file can have up to 512 locks across all instances connected and users accessing the file. Connectivity and Integration
On-Premises Connectivity: EFS can be mounted on on-premises Linux servers using AWS Direct Connect or VPN connections. Requires enabling DNS hostnames in the VPC of the connecting instance. Compatible with all Linux-based AMIs for Amazon EC2 instances. Load Balancer Integration: Instances accessing EFS can be behind an Elastic Load Balancer (ELB) for load distribution.
Data Management and Backup
Provides a familiar file system interface and access semantics, including strong consistency and file locking. Data Replication and Consistency: Data is stored across multiple AZs within a region, ensuring high availability and durability. Offers read-after-write consistency for data integrity. EFS-to-EFS Backup solution enables automatic incremental backups of EFS file systems. Amazon EFS is a versatile and scalable solution for storing and managing file-based data in the cloud, catering to a wide range of use cases with its flexible and reliable features.
storage characteristics of EFS vs EBS