AWS Service Comparison & Trade-offs
In the AWS SAA-C03 exam, success isn’t just about knowing what a service does; it’s about knowing why you would choose it over another. Architecture is the art of balancing trade-offs between cost, performance, and reliability.
The “Toolbox” Analogy
Imagine you are building a house. You have a Sledgehammer (Amazon EMR), a Standard Hammer (AWS Lambda), and a Nail Gun (Amazon EC2). While you could theoretically use a sledgehammer to hang a picture frame, it is overkill, expensive, and likely to cause collateral damage. Conversely, you wouldn’t use a standard hammer to demolish a concrete wall. In AWS, choosing the wrong “tool” leads to architectural debt, high costs, or system failure.
Core Concepts: The Well-Architected Lens
When comparing services, always filter your decision through these three pillars:
- Cost Optimization: Are you paying for idle time? (e.g., EC2 vs. Lambda).
- Performance Efficiency: Is the latency acceptable for the use case? (e.g., EBS vs. EFS).
- Reliability: Does the service offer the required durability? (e.g., S3 One Zone-IA vs. Standard).
Comparison Table: Storage Solutions
| Feature | Amazon S3 | Amazon EBS | Amazon EFS |
|---|---|---|---|
| Type | Object Storage | Block Storage | Network File System |
| Access | HTTP/API (Global) | Attached to 1 Instance* | Thousands of Instances |
| Performance | High Throughput | Ultra-low Latency | Consistent Latency |
| Scalability | Virtually Infinite | Manual/Elastic Volumes | Elastic (Auto-scaling) |
| Use Case | Static Assets, Data Lakes | Boot Volumes, Databases | Shared Media, Home Dirs |
*Note: EBS Multi-Attach is available for specific volume types (io1/io2) but has limitations.
Scenario-Based Decision Matrix
If/Then Decision Logic
- If the requirement is sub-millisecond latency for a transactional database, Then use Amazon EBS (Provisioned IOPS).
- If you need to share files across multiple Linux instances in different AZs, Then use Amazon EFS.
- If you need to store petabytes of data for compliance at the lowest cost, Then use S3 Glacier Deep Archive.
- If you have a bursty, unpredictable workload that can be interrupted, Then use Spot Instances.
Exam Tips: Golden Nuggets
- The “Shared” Keyword: If the exam mentions “shared storage” for Windows, look for FSx for Windows File Server. If it’s for Linux, look for EFS.
- Latency vs. Throughput: EBS is for low latency (IOPS). S3 is for high throughput (MB/s).
- Durability: S3 Standard offers 11 9s of durability. If the question mentions “reproducible data” or “non-critical,” consider S3 One Zone-IA to save 20% in costs.
- Statelessness: To scale horizontally, move session data from EC2 to DynamoDB or ElastiCache.
Architectural Decision Paths
Visualizing the flow from Request to Storage
Architecture Flow: Deciding between Structured (RDS) and Unstructured (DynamoDB) data paths.
Key Services
- Lambda: Event-driven, zero idle cost.
- Aurora: 5x performance of standard MySQL.
- CloudFront: Global content delivery/caching.
Common Pitfalls
- Using EBS when multiple EC2s need to write simultaneously (Use EFS).
- Choosing RDS for simple Key-Value lookups (Use DynamoDB).
- Storing logs in S3 Standard (Use S3 IA or CloudWatch Logs).
Quick Patterns
- Static Site: S3 + CloudFront + Route 53.
- Microservices: API Gateway + Lambda + DynamoDB.
- Big Data: S3 + EMR + Redshift.