Storage on AWS

Amit Tidke
4 min readFeb 16, 2023

--

As we had a good look at Compute on AWS, it’s time to look after another important component of AWS and that is Storage. In this blog, we are going to explore various services provided by AWS for storage. You might question, why multiple services just for storage. AWS provides multiple services because there are several different use-cases in the real-life world. Just like, sometimes you want to store objects like images, word files in a cost-effective way and some other times you might want to load databases which should have a faster response time.

There are 2 main types of storage: Block Storage & Object Storage

Block Storage:

In block storage, files are saved in blocks and these blocks are stored in a Volume. So, if you want to pull any data, you just pull that specific block and that is the reason Block storage is having a better response time. Block Storage generally provides very low latency. And as it has low latency, we can attach it with instances(servers) as a hard drive. On top of Block storage, you can install Databases, software because they store their contents in blocks.

Object Storage:

Object Storage is plain storage, where you can store anything like images, audios, videos, documents etc. It’s just a big box where you can put anything inside it. But note that you can’t install any kind of OS, software or database on top of object storage because it is not structured. We can consider Google Drive, One Drive as an exmaple of Object storage.

Coming back to the AWS. AWS provides several storage services like S3(Simple Storage Service), Glacier, EBS(Elastic Block Storage), EFS, Cloudfront and others. Let’s have a look at each service one by one.

S3(Simple Storage Service)

This service provides object storage for any kind of object. I think that’s why AWS named it as a “Simple” Storage Service. This is a very popular service for object storage because you can use S3 in a lot of use cases. Virtually, AWS S3 has unlimited storage capacity. When you are thinking about using S3, remember there is no capacity barrier for you! Additionally, S3 provides better availability, durability and it is cheaper. You just have to create a folder(AWS calls it a “Bucket”) and start using it for storage.

Glacier

Glacier is very similar to the S3 but it is cheaper than S3. So why Glacier? S3 is used for frequently accessed objects whereas Glacier was introduced to store infrequently accessed data which can be stored as archival. For example, You have to store patient’s data for 7 years and you are hardly going to use it after 90 Days. In this case, you can choose to shift your data from S3 to Glacier after 90 Days. You can use Life Cycle policies to do this shifting task without any manual intervention. Remember, Glacier has a lower storage cost but has a higher cost when it comes to retrieval. Glacier takes time when you want to retrieve the data because AWS has to unzip those files.

EBS(Elastic Block Storage)

You can consider it as a Hard Drive attached to your laptop. As the name suggests this is a Block Storage and should be attached with instances(servers) as root or additional hard drive. These EBS volumes are attached to instances via the network. This is elastic, why? Because unlike your traditional hard drives you can increase the capacity of drive on the go. But unfortunately, you can’t decrease the size of EBS volumes. As you can attach your hard drive to only one laptop, you can’t attach an EBS volume to multiple instances at a time.

EFS(Elastic File System)

This is File-level storage, similar to EBS but this can be shared with multiple instances at a time. EFS is optimized for low latency. You can store your files on EFS which will be accessible to other resources on the network. EFS is one of the service which is fully-managed, durable and highly scalable(up to petabytes). You can call EFS as a shared file system. This can be used with a fleet of instances that share a common file system structure.

Cloudfront(CDN)

Cloudfront is basically a cache management service that can be used as a Global CDN(Content Delivery Network). In case, you want to distribute your content all over the globe from your central location and with minimal latency, then you should think of CDN(Cloudfront in AWS). Your data(from source) will be cached over the edge locations(spread across the globe) so that end-users experience the minimum latency while retrieving the required content.

I think we have covered all primary services provided for Storage. There are a few other services like storage gateway or snowball which are being used for data migration from On-Premise datacenter to AWS Cloud. Let’s cover these services some another day. Till then go ahead and have an overview of these services on AWS Console. See you soon!

--

--

Amit Tidke

Hi! I’m Amit, working with AWS Platform & several DevOps tools. I really like to automate and make things easier on the cloud. Let’s make Cloud a better place!