AWS - EC2 Essentials
After compute, storage is the second most commoditised product in your technology stack.
CPU and Storage are like food and water for any software application. The storage requirements can be broadly categorised into two sections one is persistence storage (in other words databases) and second one is object/static storage. Although you have a lot of options for database services, your best option for object storage is S3.
S3 is the most widely adapted service in AWS after EC2. You have a lot of options within S3 and other manages services use S3 to store and process data in object/blob/file format.
At high level, S3 looks like a simple service to use, there are so many interesting things you can do with S3. Here is a non-exhaustive list.
- S3 object storage is very easy to get started and let you store any any file type and size.
- You can access objects in a folder structure by using prefixes when querying the objects.
- You can use versioning of objects to store only diff of the object instead of rewrite entire object. This is a very powerful feature.
- S3 has a usage-based billing i.e. your costs only depend on the storage and access patterns.
- You can host a static website in S3 and your bucket name can work as a subdomain. You can also configure your domain DNS to make it available on your own domain.
- S3 can work as a best storage for images and static assets for your SPAs built with React, Angular etc.
- Policy configuration at the bucket (in other words folder) level helps to control the access to objects.
- You can configure access at the object level also, which provides most fine-grained ACLs.
- There are other services like Athena that lets you query the S3 objects using SQL. This makes S3 powerful service for data analysis and other specific application requirements.
- Last and most important feature is, S3 is best service to store DB Backups and application builds. These 2 are the most important use case for software development.
Overall, S3 can be your most cost-effective object storage solution that can boost your cloud adoption and transform your business.