Map of AWS, GCP, and Azure

In this post, we will learn about three popular cloud service platforms: Amazon Web Services (AWS), Google Cloud Platform (GCP), and Microsoft Azure. We hope to build up this post asynchronously as we explore more of this ecosystem.

Cloud computing has revolutionized the way applications are built, deployed, and scaled. AWS, GCP, and Azure offer a wide array of services and tools to cater to various computing needs. Each of the three have unique strengths and differentiators. Our primary interests with using cloud service providers span four domains - i) Compute, ii) Storage, iii) Machine Learning, and iv) Databases. Eventually, we hope to understand all the components involved in a “full” end-to-end ML deployment pipeline used in modern times.

Let us start with an overview of key compute, storage, machine learning, and database services offered by the three platforms:

Compute

AWS offers EC2 for secure and resizable compute capacity in the cloud with a wide selection of instance types. EC2 provides granular control over the underlying infrastructure. They also offer containerization services ECS and EKS. Serverless computing is offered with AWS Lambda and AWS Fargate.

GCP’s primary compute service is GCE which allows creating VMs with custom CPU and memory configurations. It provides automatic scaling and OS-level changes. They also offer GKE for containerization services.

Azure Compute offerings include Virtual Machines for Linux and Windows, and Azure Kubernetes Service. Serverless computing is offered with Azure Functions.

Storage

Amazon S3 is AWS’s scalable object storage service for storing and retrieving any amount of data. It offers industry-leading durability and integrates with many other AWS services. AWS also has Amazon EBS for block-level storage and Amazon EFS for file storage.

GCP has Cloud Storage, a unified object storage service for unstructured data. Persistent Disk provides network-attached block storage.

Azure offers Blob Storage for unstructured object data, Disk Storage for virtual machine disks, and Files for file shares accessible via the SMB protocol.

Machine Learning

AWS offers Amazon SageMaker, a fully managed machine learning platform that enables developers to build, train, and deploy ML models. AWS also has purpose-built AI services like Amazon Rekognition for image and video analysis, and Amazon Polly for text-to-speech.

GCP provides Vertex AI Platform, a managed service for training and deploying ML models. It has pre-trained APIs for vision, speech, natural language, and translation.

Azure Machine Learning allows data scientists to build, deploy, and manage ML models. Azure AI Services are pre-built AI capabilities for vision, speech, language, and more.

Databases

Amazon RDS is AWS’s managed relational database service supporting multiple engines like PostgreSQL, MySQL, and SQL Server. Amazon DynamoDB is a fully managed NoSQL database. Other options include Amazon DocumentDB, Amazon Neptune graph database, and Amazon QLDB ledger database.

GCP offers Cloud SQL, a fully managed relational database service for MySQL, PostgreSQL, and SQL Server. Cloud Spanner is a horizontally scalable relational database. Firestore and Bigtable are NoSQL options.

Azure provides Azure SQL Database, a managed relational database based on SQL Server. Azure Cosmos DB is a globally distributed multi-model AI database. Azure Database for PostgreSQL and Azure Database for MySQL are managed PostgreSQL and MySQL offerings.

Overall, the core offerings are comparable across all three providers. AWS tends to have the broadest and most mature set of services, while GCP emphasizes its strength in data analytics and machine learning. Azure provides tight integration with Microsoft’s on-premises technologies. The choice often depends on an organization’s specific requirements.


Assisted by claude-3-opus on perplexity.ai

Written on April 1, 2024