Amazon Elastic File System Part-1

grayscale photo of computer laptop near white notebook and ceramic mug on table
Reading Time: 4 minutes

Amazon Elastic File System (Amazon EFS) provides a simple, server-less & elastic file system that lets you share your data without provisioning or managing storage. It can be use with AWS cloud services or On-Premises resources and it is build to scale on demand without disrupting your applications.

With Amazon EFS , we can use EFS as a shared file system with EC2 instances. Application running on multiple EC2 instances can access the file system at the same time. Amazon EFS uses the industry standard network file system or NFS v.45 Protocol.

When to use Elastic File System?

Amazon supports File storage, Object storage & Block level storage.

  • File Storage uses AWS EFS
  • Object Storage uses AWS S3
  • Block Storage uses AWS EBS

Now in order to understand when to use Elastic File System, let us see the difference between the types of storages.

File Storage

Elastic File System can be used for application which required a shared file system. It can be accessed by the multiple computers at the same time. It can be used by application that access data using the standard file system interface provided through the operating system. They can take advantage of scalability & reliability of storage in a cloud without writing any new code or adjusting applications.

Object Storage

It can be used by the application that do not require a file system structure and are designed to work with object storage. Those types of application can use Amazon S3 which provides a massively scalable & cost efficient storage, to store any type of data in its native format.

Block Storage

In Block Storage, data is broken down into blocks and then stored as a separate piece. Each block has its unique identifier. We can use AWS Elastic Block Storage for a broad range of workloads for instance Enterprise application, Containerised application, Big-data analysis & Media workflows.

Now let you have some idea about when to use EFS, let’s see some benefits of EFS.

Benefits of using AWS EFS

Let’s see some other benefits of using AWS EFS –

  • Dynamic Elasticity – Amazon EFS automatically scales your file system storage capacity Up or Down as you add or remove file without disrupting your applications.
  • Fully Managed by AWS – Amazon EFS provides a shared file system storage for Linux workloads. It provides a simple interface allowing you to create and configure the file system quickly and amazon manages the file storage infrastructure for you. It will remove the complexity of deploying, patching and maintaining the under-planning of file system.
  • Cost Effective – With Amazon EFS storage, you only pay for what you use. There is no need to provision storage in advance and there is no minimum commitment or upfront fees. With EFS life-cycle management you can automatically move file access less frequently to cost optimise storage class, which will reduce the file storage cost by 92%. We can also use AWS budgets monitor our file system cost.

Use Cases of AWS EFS

Here we will take a look at some of its use cases.

  • Machine Learning & Analytics – EFS provides the ease of use, scale and performance needed for machine learning and big-data analytic workloads. Data scientists can use efs to create personalised environment with home directory storing notebooks files, training data and modern artifacts. We can also integrate amazon sage-maker with efs for training jobs allowing data scientist to iterate quickly.
  • Web serving & Content Marketing – Amazon EFS provide a durable high throughput file system for content management system and web serving application. It stores and serve information for a range of application like websites, online publications and archives.
  • Application development & Testing – Next use is application testing & development. EFS provides development environment, a common storage repository that gives you the ability to share codes in other files in an organised way. You can provision duplicate scale or archive with test development and production environment with a few clicks. AWS EFS also delivers a scalable and highly available solution, that is ideal for testing and development workloads.

Conclusion

In this article we’ve learned about AWS Elastic File System. When to use EFS, some of the benefits and use cases of EFS. This is the first introductory part of AWS Elastic File System and in its second part I’m going to give you a quick demo of EFS.

Written by 

Shubham Gupta is a DevOps Consultant at knoldus. He is practising Devops - Docker, Jenkins, Ansible, Kubernetes. He is passionate about DevOps technology and cloud computing.