How to Choose AWS Data Store

Tech Tim (@TechTim42)
4 min readSep 26, 2022

--

AWS offers different data store for files, these are used for difference using cases.

  • Object Storage, i.e. AWS S3
  • Block Storage (POSIX), i.e. EBS, EFS
  • And many different database options, such as DynamoDB, AWS Aurora etc
One Table of AWS Storage Services Updated 2024

In this article, we are focusing on files storage only (S3, EBS, EFS).

Object Storage — AWS S3

Object Storage it is an “abstract” level to store files, in AWS, it is AWS S3 (Simple Storage Service), there are bucket (folder/directory) to store files and folders. It is very similar to Dropbox (actually Dropbox is powered by AWS S3)

Pricing

The price model is actually simple, users are charged by the storage size, for example in us-east-1,

  • $0.023/GB/Month at the first 50TB
  • when store more than 50TB, it is cheaper per GB per month,
  • for infrequent access or glacier archive, it is cheaper

Overall, AWS S3 is cheap, comparing all other data/file storage options.

Block Storage — EBS

Block Storage in the other hand, it is used as a POSIX-compliant file system. AWS EBS and EFS are both POSIX-compliant and can be used to store files.

EBS is required for running an EC2 instance, imagine that AWS Cloud Services as a local computer components, EC2 will be the CPU and RAM, EBS will be the Storage Drive. So users cannot share an EBS to different EC2 instances when they are running. To solve this restriction, AWS has another storage option, EFS.

Price

EBS Price model is a little bit more expensive, instead of charging through the storage size, it charges users through the EBS Volume size. it has a few different EBS options. For example, in us-east-1, the price for GP2 (SSD) is $0.125/GB-Month. (GP3 has a more flexible price model)

Block Storage — AWS EFS

Same to EBS, EFS is POSIX-compliant as well, at the same time, it is able to be shared across different EC2 instances.

EFS offer the capability to share files between different instances. Let’s imagine the AWS Services as local computer again, EFS is not EBS as a local storage drive, EFS it will be a NAT device in your LAN, all computers are able to visit it, but at the same time, you cannot boot your OS from it.

Pricing

The price mode is similar to S3, it basically charges users based on the storage users use, but price is the most expensive one among S3, EBS, EFS. $0.30/GB-Month

Simple Comparing Table between AWS S3, EBS and EFS

We have been discussing the limit and the price about these 3 service above, but actually there are more differences.

comparing between S3, EBS, EFS

How to choose then?

This diagram is based on price, consistency/scalability factors in the AWS data solutions.

References

Other Related Projects/Services

With the popularity of some AWS Service, other cloud provider and open source community, they provide the compatible AWS services as well, especially for AWS S3.

AWS S3 Compatible Options

  • minio Open source S3 Compatible object storage
  • Cloudflare R2 gives you the freedom to create the multi-cloud architectures you desire with an S3-compatible object storage.
  • Oracle object storage Using the Amazon S3 Compatibility API, customers can continue to use their existing Amazon S3 tools (for example, SDK clients) and make minimal changes to their applications to work with Oracle Object Storage.

--

--

Tech Tim (@TechTim42)

❤️Learn, Share and Grow => ☘️Passionate about Improving Dev Experience, Software Engineering, Cloud Architect, AWS Community Builder