AWS Storage Explained: S3 vs EFS vs EBS

Migrating SAP to Azure: A Practical Guide
February 26, 2020
Cloud Computing
Using the Azure Cloud for Backup and Disaster Recovery
April 15, 2020
Show all

AWS Storage Explained: S3 vs EFS vs EBS

Amazon Web Services (AWS) is ranked amongst the top cloud vendors, offering over 175 services. AWS cloud services are distributed across 16 global regions and 42 availability zones. In this article, you will learn about three popular AWS storage services: S3, EFS, and EBS. You’ll learn what each service provides, and what are the key differences between them. 

What is AWS S3?

Amazon S3 was one of the first services offered on AWS and is still one of the most popular. It is based on object storage technology, and offers an unlimited storage pool that can be used to save huge quantities of data. S3 provides three main storage tiers:

  • S3 Standard—for general-purpose use, offers the highest throughput and lowest latency, but also the highest cost of all the tiers. Can be used to store data for web applications, big data analytics, and many other workloads.
  • S3 Standard-IA (infrequent access)—intended for files that are not frequently used, but require rapid accessibility. 
  • S3 Glacier—used for backup and archiving when data is seldom accessed, suitable for compliance data and historical backups. It offers the lowest cost of all tiers but has slower retrieval times, and an extra charge for data retrieval.

S3 use cases

Amazon S3 is commonly used for:

  • Backup and storage—backing up data for later access, or storing data for access in runtime by cloud-based or on-premise applications.
  • Media hosting—saving rich media like videos, music or images and allowing users to access them via the web, download them or upload their own files.
  • Application hosting—saving application files on S3 and using it to deploy and install web applications. 

What is AWS EFS?

Amazon Elastic File System (EFS) is a file system for Linux workloads, which you can use together with other AWS services or on-premise systems. EFS allows thousands of Amazon EC2 instances to access files in parallel. It provides high aggregate throughput and Input/output operations per second (IOPS), supporting maximum efficiency of 10GB/s and 500k IOPS. 

EFS is a fully managed service, and allows users to access storage volumes via standard file system interfaces such as NFS. Amazon manages the deployment and maintenance of storage systems. There are two storage tiers, Standard and Infrequent Access, which lets you migrate data that is less frequently used to a lower-cost storage tier. 

EFS allows users to control access via POSIX permissions, Amazon VPC, or AWS IAM, and is compliant with several standards including SOC, HIPAA and PCI/DSS.

EFS Use Cases

EFS is most useful for the following scenarios:

  • Data analytics—EFS provides massive scalability and parallel access for large numbers of nodes, suitable for massively parallel architectures such as Hadoop or Elasticsearch.
  • Lift and shift—EFS makes it easy to move existing applications as-is to the cloud, because it lets applications access data using the same protocol as they did on-premises. EFS can “pretend” to be an on-premise file server.
  • Content management systems—EFS is commonly used to serve websites to end-users and store rich media for broad distribution.

What is AWS EBS?

Amazon Elastic Block Store (EBS) provides persistent storage for Amazon EC2 instances. An EC2 instance has its own internal storage, but when the instance shuts down, this storage is lost. Amazon EBS makes it possible to save files so that they can survive the shut down of an instance.

EBS is based on block storage technology and offers high durability, with a guaranteed Service Level Agreement (SLA) of 11 nines (99.999999999%). It provides a range of volume sizes supporting different storage sizes.

EBS use cases

EBS can be used for the following types of workloads:

  • Relational databases like MySQL or SQL Server 
  • NoSQL databases like Cassandra or MongoDB
  • File systems used by one EC2 instance
  • Persistency for containerized applications
  • Storage for an individual node in Hadoop/Spark clusters

AWS S3 vs EBS vs EFS Feature Comparison


Storage LimitScalabilityReliabilitySLAConcurrency
S3Unlimited storage, file size up to 5TBManualMulti-AZ99.99% availabilityOver 1 million concurrent connections
EFSUnlimited storage, file size up to 47.9TBAutomaticMulti-AZNo guaranteed SLA, if uptime is lower than 99.9%, user receives service creditsUp to 1,000 EC2 instances
EBSLimited to 16TB per volumeManualSingle AZ99.99% availabilityOne EC2 instance

AWS S3 vs EBS vs EFS Pricing Comparison

Amazon storage services have a complex pricing model. Below we provide a radically simplified comparison of pricing across the three services. To fully understand pricing, consult the Amazon pricing section and use the AWS Pricing Calculator


Storage Cost / GB / MonthCost for IOPSCost for Throughput
S3$0.021-0.023 depending on data sizeAdditional I/O Operations Per Second (IOPS) for extra $0.065 / IOPS / monthN/A
EFS$0.045-$0.3N/AProvisioned throughput for $6 / GB / month
EBS$0.045-$0.125 depending on volume typeN/AN/A

Conclusion

Amazon S3 is an object storage typically used for backup and media hosting. AWS EFS is a file system typically used for data analysis and lift-and-shift migration. AWS EBS is a block storage service typically used as persistent storage for Amazon EC2 instances. Each service is uniquely different and priced accordingly. AWS offers free tiers, so you can experiment before choosing.

James Lee
James Lee
James Lee is a passionate software wizard working at one of the top Silicon Valley-based startups specializing in big data analysis. In the past, he has worked on big companies such as Google and Amazon In his day job, he works with big data technologies such as Cassandra and ElasticSearch, and he is an absolute Docker technology geek and IntelliJ IDEA lover with strong focus on efficiency and simplicity.

Leave a Reply

Your email address will not be published.

LEARN HOW TO GET STARTED WITH DEVOPS

get free access to this free guide, downloaded over 200,00 times !

You have Successfully Subscribed!

Level Up Big Data Pdf Book

LEARN HOW TO GET STARTED WITH BIG DATA

get free access to this free guide, downloaded over 200,00 times !

You have Successfully Subscribed!

Jenkins Level Up

Get started with Jenkins!!!

get free access to this free guide, downloaded over 200,00 times !

You have Successfully Subscribed!