Amazon Web Services (AWS) is a cloud computing platform that offers a wide range of services to help organizations and individuals build and run applications in the cloud. AWS was launched by Amazon in 2006 and has since become the world’s most comprehensive and widely adopted cloud platform.
AWS provides a variety of services including compute, storage, databases, networking, security, machine learning, analytics, and more. AWS services are designed to provide flexibility, scalability, and reliability, enabling users to quickly and easily deploy and manage their applications in the cloud. These services are available on a pay-as-you-go basis, meaning that users only pay for what they use.
AWS services are organized into categories based on their primary functions, including compute, storage, databases, networking, security, machine learning, analytics, and more. Here is an overview of some of the most popular AWS services in each category.
Compute
Amazon Elastic Compute Cloud (EC2)
Amazon Elastic Compute Cloud (EC2) is a service that provides resizable compute capacity in the cloud. EC2 instances can be launched in minutes and scaled up or down based on demand, allowing users to pay only for the resources they need. EC2 supports a wide range of operating systems and provides complete control over the computing environment.
AWS Lambda
AWS Lambda lets you run code without provisioning or managing servers. You pay only for the compute time you consume — there is no charge when your code is not running. With Lambda, you can run code for virtually any type of application or backend service — all with zero administration. Just upload your code, and Lambda takes care of everything required to run and scale your code with high availability. You can set up your code to automatically trigger from other AWS services, or you can call it directly from any web or mobile app.
AWS Elastic Beanstalk
Elastic Beanstalk is an easy-to-use service for deploying and scaling web applications and services developed with Java, .NET, PHP, Node.js, Python, Ruby, Go, and Docker on familiar servers such as Apache, Nginx, Passenger, and Internet Information Services.
You can simply upload your code, and AWS Elastic Beanstalk automatically handles the deployment, from capacity provisioning, load balancing, and auto scaling to application health monitoring. At the same time, you retain full control over the AWS resources powering your application and can access the underlying resources at any time.
Storage
Amazon Simple Storage Service(S3)
Amazon S3 (Simple Storage Service) provides object storage, which is built for storing and recovering any amount of information or data from anywhere over the internet. It provides this storage through a web services interface. While designed for developers for easier web-scale computing, it provides 99.99 percent durability and availability of objects and stores data for millions of applications for companies all around the world. It can also store computer files up to 5 terabytes in size.
Amazon Elastic Block Store (EBS)
Amazon Elastic Block Store (EBS) is a service that provides persistent block-level storage volumes for use with EC2 instances. EBS volumes can be attached to EC2 instances and used as primary storage for data that requires low-latency access.
Unlike EC2 instance storage volumes which are suitable for holding temporary data EBS volumes are highly suitable for essential and long term data. EBS volumes are specific to availability zones and can only be attached to instances within the same availability zone.
Amazon Elastic File System(EFS)
EFS is a file-level, fully managed, storage provided by AWS that can be accessed by multiple EC2 instances concurrently. Just like the AWS EBS, it is designed to provide massively parallel shared access to thousands of Amazon EC2 instances, enabling your applications to achieve high levels of aggregate throughput and IOPS with consistent low latencies.
Amazon EFS is a regional service storing data within and across multiple Availability Zones for high availability and durability.
Databases
Amazon Relational Database Service (RDS)
Amazon Relational Database Service (RDS) is a service that makes it easy to set up, operate, and scale a relational database in the cloud. RDS supports a variety of database engines, including Amazon Aurora, MySQL, PostgreSQL, Oracle, and SQL Server. RDS provides automated backups, patching, and monitoring, enabling users to focus on their applications instead of database management. Amazon RDS makes it easy to set up, operate, and scale a relational database in the cloud.
Amazon Aurora
Amazon Aurora is a MySQL and PostgreSQL compatible relational database engine that combines the speed and availability of high-end commercial databases with the simplicity and cost-effectiveness of open-source databases. Amazon Aurora is up to five times faster than standard MySQL databases and three times faster than standard PostgreSQL databases.
Amazon DynamoDB
Amazon DynamoDB is a fast and flexible NoSQL database service that provides seamless scalability and high performance for applications that require low-latency data access. DynamoDB supports both document and key-value data models, with automatic scaling and built-in encryption. Hundreds of thousands of AWS customers have chosen DynamoDB as their key-value and document database for mobile, web, gaming, ad tech, Internet of Things (IoT), and other applications that need low-latency data access at any scale.
Networking
Amazon Virtual Private Cloud (VPC)
Amazon Virtual Private Cloud (VPC) is a service that enables users to launch AWS resources into a virtual network that is logically isolated from other virtual networks in the cloud. VPC provides complete control over network configurations, including IP address ranges, subnets, routing tables, and network gateways. You can use both IPv4 and IPv6 in your VPC for secure and easy access to resources and applications.
Amazon API Gateway
Amazon API Gateway is a fully managed service that makes it easy for developers to create, publish, maintain, monitor, and secure APIs at any scale. With a few clicks in the AWS Management Console, you can create an API that acts as a “front door” for applications to access data, business logic, or functionality from your back-end services, such as workloads running on Amazon EC2, code running on AWS Lambda, or any web application. Amazon API Gateway handles all the tasks involved in accepting and processing up to hundreds of thousands of concurrent API calls, including traffic management, authorization, access control, monitoring, and API version management.
Amazon Route 53
Amazon Route 53 is a highly scalable and available domain name system (DNS) service that enables users to route traffic to their applications in the cloud. Route 53 supports a variety of routing policies, including latency-based routing, weighted round-robin routing, and geolocation-based routing.
Security
Amazon Identity and Access Management (IAM)
Amazon IAM enables you to securely control access to AWS services and resources for your AWS users, groups, and roles. IAM allows you to manage users and their level of access to the AWS console. IAM enables the organization to create multiple users, each with its own security credentials, controlled and billed to a single AWS account. IAM allows the user to do only what they need to do as a part of the user’s job.
Amazon Web Application Firewall (WAF)
Amazon Web Application Firewall (WAF), is a web application firewall that helps protect your web applications or APIs from common web exploits and attacks. AWS WAF gives you control over how traffic reaches your applications by enabling you to create security rules that control bot traffic and block common attack patterns, such as SQL injection or cross-site scripting. You can also customize rules that filter out specific traffic patterns.
Machine Learning
Amazon SageMaker
Amazon SageMaker is a fully managed service that enables users to build, train, and deploy machine learning models at scale. SageMaker provides all of the components used for ML in a single toolset so models get to production faster with much less effort and at a lower cost.
Amazon Rekognition
Amazon Rekognition is a service that enables users to easily add image and video analysis to their applications. Rekognition can detect objects, scenes, and activities in images and videos, as well as detect any inappropriate content. Amazon Rekognition also provides highly accurate facial analysis and facial search capabilities that you can use to detect, analyze, and compare faces for a wide variety of user verification, people counting, and public safety use cases.