Welcome to issue #1 of the โAWS services shortsโ, In each issue, I present to you an AWS service and explore what its strengths and weaknesses are, discover some use cases, and finally what the most common mistakes people are making with it.
Todayโs issue is about one of the most used services, Amazon S3!
Letโs start ๐
If you prefer you can listen to the podcast or watch the YouTube video!
Amazon Simple Storage Service (S3) is a cloud-based object storage service provided by Amazon Web Services (AWS).
Main Purpose of AWS S3
Provide highly reliable, scalable, and cost-effective storage for various data types in the cloud.
Official AWS docs: https://docs.aws.amazon.com/s3/
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2cf14137-b9c3-499f-92e2-96a537af303a_960x224.png)
Top Strengths
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F38e508b0-0d0e-4990-92ec-311589ab625c_960x400.png)
Durability and Reliability
AWS S3 is designed for 99.999999999% (11 nines) of data durability, ensuring that data is protected against hardware failures and errors.
- Data protection in Amazon S3 – Amazon Simple Storage Service
- Performance across the S3 Storage Classes
- How durable is AWS S3?
Scalability
It can scale to accommodate virtually unlimited data storage and handle high request rates, making it suitable for applications with varying data storage needs.
Security
S3 offers robust access control mechanisms, including bucket policies and access control lists (ACLs), to secure data from unauthorized access. It also supports encryption at rest and in transit.
- Amazon S3 Security Features – Amazon Web Services
- Amazon S3 security – Amazon Simple Storage Service
Performance
S3 provides low-latency access to stored objects, enabling quick retrieval and seamless integration with other AWS services and applications.
Cost-Effectiveness
AWS S3’s pay-as-you-go pricing model allows users to only pay for the storage they use, making it cost-effective for businesses of all sizes.
Top Weaknesses
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd76121b0-179f-463c-a4da-6d30b1a58626_960x301.png)
Amazon S3 does not support object locking for concurrent writers
If two PUT requests are simultaneously made to the same key, the request with the latest timestamp wins. However, the order in which Amazon S3 receives the requests and the order in which applications receive acknowledgments cannot be predicted because of various factors, such as network latency.
- https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html#ConsistencyModel
- Amazon S3 Update โ Strong Read-After-Write Consistency | Amazon Web Services
Updates are key-based
There is no way to make atomic updates across keys. For example, you cannot make the update of one key dependent on the update of another key unless you design this functionality into your application.
Versioning Complexity
Enabling versioning in S3 can increase storage costs, and managing multiple object versions can become complex if not properly handled.
Common Usage Scenarios
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff4560d12-54ef-4434-811b-3557fb4a72ac_960x398.png)
Data Backup and Recovery
S3 is frequently used as a reliable and secure backup solution for businesses, storing data backups that can be quickly retrieved when needed.
Static Website Hosting
S3 is an ideal platform for hosting static websites, allowing developers to serve static HTML, CSS, and JavaScript files directly from S3 buckets.
Media Storage and Distribution
Many applications, including streaming services and media platforms, use S3 to store and deliver media content, such as videos and images, to end-users.
Data Archiving
S3’s cost-effectiveness and durability make it a popular choice for long-term data archiving and compliance storage.
Big Data Analytics
AWS S3 integrates seamlessly with other AWS services like AWS Glue, Athena, and Redshift, making it a primary storage option for big data analytics and data lakes.
Common Mistakes
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff812cf2f-9d2f-4b95-be11-d901f3c2aef4_960x378.png)
![](https://substackcdn.com/image/fetch/w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb7d42720-d117-4c5c-bea6-1f1608f7a2c4_960x385.png)
Unsecured Buckets
Failing to set proper access controls can lead to data breaches and unauthorized access to sensitive information. The Web is full of examples.
Lack of Data Encryption
Failing to implement encryption can compromise data security, especially when handling sensitive data. Luckily, starting from January 5, 2023, all new object uploads to Amazon S3 are automatically encrypted.
Overlooking Data Transfer Costs
Neglecting to consider data retrieval and transfer costs can result in unexpected expenses.
- https://aws.amazon.com/s3/pricing/?p=pm&c=s3&z=4
- https://docs.aws.amazon.com/AmazonS3/latest/userguide/aws-usage-report-understand.html
Ignoring Data Lifecycle Policies
Not setting data lifecycle policies can result in the accumulation of outdated or unnecessary data, leading to higher storage costs.
No Backup Strategy
Relying solely on S3 for data storage without backup copies increases the risk of data loss in case of accidental deletions or hardware failures.
Ignoring Data Replication
Neglecting to enable cross-region replication can result in data loss in case of a regional outage or disaster.
Improper Logging and Monitoring
Failing to set up proper logging and monitoring can make it challenging to identify and resolve issues proactively.
Wrong Region Selection
Choosing the wrong AWS region for storing data can impact data access latency and costs, especially in global applications.
- https://aws.amazon.com/s3/pricing/?p=pm&c=s3&z=4
- https://docs.aws.amazon.com/AmazonS3/latest/userguide/MultiRegionAccessPoints.html
I hope you find this Amazon S3 overview useful!
Did you like it? Too long? To short? Something is missing?
Please let me know with a comment! ๐
Your feedback is truly precious to me ๐
Attributions:
- Icons from www.freepik.com