Whenever cloud computing professionals talk about Amazon Web Services (AWS) and storage, the conversation usually revolves around Amazon S3. However the AWS cloud offers a wide range of storage and cost management options, each of which has its own specific use case.
In this two part series, we will talk about various storage options available across AWS, exemplifying each one’s costs using specific use cases.
Note: Amazon Web Services is spread across 10 regions and pricing varies from region to region. In this blog post, US East (Northern Virginia) will be considered our base region. Therefore, the price calculations that we make here are only valid for that region.
1. EBS: Elastic Block Storage
Amazon Elastic Block Storage (EBS) is another common storage option offered by Amazon. Unlike Amazon S3, which is object storage, Amazon EBS volumes provide persistent block level storage designed for Amazon EC2. Think of it as an external hard drive attached to your system. Amazon EBS volumes offer different storage sizes from 1GB to 16TB and come in three options: General Purpose Magnetic storage, General Purpose SSD storage and Provisioned IOPS SSD storage. By default, AWS allows you to have 5,000 EBS volumes, 20TB of Magnetic storage, 20TB of SSD Storage, 20TB of Provisioned IOPS and 40,000 Provisioned IOPS. If you need more storage, you can simply request it from AWS.
For Amazon EBS Magnetic volumes, AWS charges $0.05 per GB/month and $0.05 per 1 million I/O requests.
For Amazon EBS SSD volumes and Amazon EBS Provisioned IOPS volumes, AWS charges $0.10 per GB/month and $0.125 per GB/month respectively.
For Provisioned IOPS, AWS additionally charges $0.065 per provisioned IOPS/month.
A healthcare company needs to store 7TB of data in distributed replicated mode, for their shared application and medical records. For this, they use Gluster storage, which allows their application instances to access the shared storage. They use two EC2 instances, each with four EBS 1TB SSD volumes. These volumes are configured in distributed replicated mode and the Gluster volume is mounted on other instances that also require access.
Now, let’s calculate the cost of this use case:
Total storage = 2 instances x 4TB EBS SSD volumes = 8TB EBS SSD volumes
Total price = 8TB (8,000GB) x $0.10 per GB/month = $800 per month
2. EFS: Amazon Elastic File System
As one of the latest AWS offerings, EFS was launched during the San Francisco summit in April, 2015. It is a storage service designed for Amazon EC2 that provides common shared storage between multiple EC2 instances. EFS is accessible to EC2 instances over NFSv4, and the beauty here is that unlike with EBS storage, you don’t need to pre-plan your EFS storage. EFS is a completely elastic and scalable storage solution that automatically expands and shrinks based on added data. The best part is, you only pay for what you use.
EFS costs $0.30 per GB/month. The storage amount billed per month is based on the average storage space that is used throughout the month.
To understand the pricing calculation for Amazon EFS, let’s take the scenario discussed above for EBS:
“A healthcare company needs to store 7TB of data in a distributed replicated mode, for their shared application and medical records. For this, they use gluster storage, which allows their application instances to access the shared storage. They use two EC2 instances with four EBS 1TB SSD volumes. These volumes are configured in distributed replicated mode and the gluster volume is mounted on other instances that also require access.”
When Amazon introduced EFS, the burden of managing shared storage was completely removed.
Total EFS cost: 7TB (7,000GB) x $0.30 per GB/month = $2100
3. Amazon Glacier
Amazon Glacier is a low cost storage solution offered for data archival and backup. The data retrieval process is long, so Glacier should only be used for data that is accessed very infrequently.
Glacier charges $0.01 per GB.
A Big Data company generates lots of log files (~5TB per month) from their data analysis that need to be retained for a long period of time due to compliance constraints. However, there is no immediate need to access this log data. Therefore, the company decided to go with Amazon Glacier for storage.
The estimated price for storing this data in Glacier is around $50 per month.
There you have it, three AWS storage cost options that may suit your needs better than S3. In part 2 of this series, we will look at three more storage options to give you a broader view of your storage possibilities.