Are you wondering what is AWS, and what business problems does it solve? You're in the right place!
I took a short course on AWS because I wanted to understand Amazon Web Services and why many businesses choose AWS as their cloud provider. This article comes out of pure curiosity.
I will learn:
What is AWS.
What business problems does AWS solve.
The features of AWS.
AWS helps businesses by:
Having a pay-as-you-go model: with AWS, businesses only pay for their services.
Controlling a spike in expenditure: with AWS, businesses can control a price creep.
Horizontal scaling: with AWS, businesses can auto-scale based on the incoming demand.
Let's imagine the following scenario:
There is a startup based in Silicon Valley that wants to create an online library where users have access to a large number of eBooks they can choose to read. This online library will be updated with more eBooks from the startup's employees every month (or even more).
This startup can either:
Go down the "old-school" and less maintainable way, configuring servers and storage. If the startup grows in the future, it will be challenging to scale and meet any increased demand.
Or, they can choose AWS, which offers ready-to-use services that allow the startup to grow gracefully and reduce boilerplate processes.
Many e-commerce businesses choose to rely on AWS because they can meet their growing demands through the vast infrastructure that AWS offers.
In software engineering, it is a great practice to ensure that one of the software requirements to guarantee the long-term success of a software project is to lower the cost of development throughout its lifecycle.
You can read more here about software requirement analysis.
What is AWS?
AWS is one of the most popular cloud providers that offer:
If you're not sure what Cloud Computing is, this is an excellent definition from Wikipedia:
This means that AWS gives you what you need when you need it. For example, if you need a set number of servers, AWS will provide them. When you don't need those servers anymore, you can return them. This is why AWS allows for flexibility and scalability.
Now, my question is: what problems does AWS solve?
A huge advantage of AWS is that you only pay for what you use.
AWS allows you to deploy a server within minutes.
AWS has 6 core characteristics:
Let's discuss each of these features.
You know that software engineering is an error-prone job if you're a software engineer. It's easy to make mistakes. No wonder we use so many tools to help us reduce the error rate.
AWS helps with this. It automates many manual tasks. This is particularly helpful because it improves internal processing within a business.
AWS is responsible for ensuring that the cloud remains safe at all times. But, the customer has duties as well. The customer is responsible for making safe usage of the cloud.
Reliability ensures that the workload fulfils its purpose when expected to do so.
Reliability relies on resiliency. AWS defines resiliency as:
[...]The ability of a workload to recover from infrastructure or service disruptions, dynamically acquire computing resources to meet demand, and mitigate disruptions, such as misconfigurations or transient network issues.
AWS provides compute engine to their consumers, and it cares about doing this most efficiently, especially as the demand changes.
Cost-optimization delivers the business needs while keeping the costs low and the return on investments high. This is a continuous process of improvement and enhancement.
With AWS, you don't have to pay anything upfront. You only pay for what you use.
Sustainability has to do with the environmental impact of the business activity.
AWS defines sustainability as:
[...]The practice of sustainability is understanding the impacts of the services used, quantifying impacts through the entire workload lifecycle, and applying design principles and best practices to reduce these impacts.
Three acronyms are great to know when learning AWS:
- AWS S3.
- AWS ECS.
- AWS CF.
What is AWS S3?
AWS S3 stands for Amazon Simple Storage Service.
It's a bucket that stores Object.
An S3 object has:
metadata: name-value pairs
AWS S3 is flexible: if the demand varies frequently, AWS S3 scales accordingly.
Amazon S3 is highly performant. It can process thousands of requests per second.
AWS S3 delivers strong consistency without impacting performance and availability.
What is Amazon EC2?
Amazon ECS2 stands for Amazon Elastic Compute Cloud.
Going back to the scenario of the online library startup based in Silicon Valley.
This startup can access Amazon EC2 for virtual servers. Amazon EC2 helps provide computing power so that the business can provide its services.
Amazon EC2 makes running a business easier than possessing physical servers.
What is Amazon CF?
Amazon CF stands for Amazon CloudFront is a global network responsible for content delivery to clients.
I hope you now have a clear idea of how Amazon Web Services helps businesses solve their problems.
Do you use AWS? What do you enjoy most about it? Let me know in the comments.
Thanks for reading.
Until next time! 🙋🏾♀️
- AWS Documentation
- AWS Solving some of the world’s most difficult problems with AWS and AI for Good
- JavaTPoint - Features of AWS
- Simplilearn - AWS CloudFront: Everything You Need to Know
- Colby Fayock on freeCodeCamp - AWS Cheatsheet: The Top 5 Things to Learn First When Getting Started with Amazon Web Services