Link copied to clipboard!
Group 1: Core Compute
Foundational virtual machines and compute infrastructure: EC2, Lambda, Batch, Auto Scaling, Spot Instances.
Compute Principle: Select compute services based on workload patterns, scalability requirements, and cost optimization strategies.
Services & Roles
EC2
Virtual servers with full control over instance configuration and operating system.
- Virtual machines
- Multiple instance types
- Full OS control
Lambda
Serverless compute for event-driven functions with automatic scaling.
- Serverless functions
- Event-driven execution
- Automatic scaling
Batch
Managed batch computing for large-scale parallel workloads.
- Batch job processing
- Queue management
- Resource optimization
Auto Scaling
Automatic capacity adjustment based on demand and performance metrics.
- Dynamic scaling
- Performance monitoring
- Cost optimization
Spot Instances
Cost-optimized EC2 instances using spare capacity with potential interruption.
- Cost savings up to 90%
- Fault-tolerant workloads
- Flexible scheduling
Key Differences
| Dimension | EC2 | Lambda | Batch | Auto Scaling | Spot Instances |
|---|---|---|---|---|---|
| Execution Model | Persistent VMs | Event-driven functions | Batch jobs | Scaling automation | Interruptible VMs |
| Management | Full control | Serverless | Managed queues | Policy-based | Bid-based pricing |
| Scaling | Manual/Auto Scaling | Automatic | Job-based | Metric-driven | Availability-based |
| Use Case | General purpose | Event processing | Parallel computing | Dynamic workloads | Fault-tolerant tasks |
| Billing | Instance hours | Request/duration | Compute time | Instance hours | Bid price |
Selection Model
0–10 sliders weight compute requirements, workload characteristics, and operational preferences.
Score_EC2 = 0.30*C_persistentWorkloads + 0.24*C_fullOSControl + 0.18*C_customConfiguration + 0.12*C_generalPurposeCompute + 0.10*C_longRunningApplications + 0.06*C_dedicatedResources
Score_Lambda = 0.32*C_eventDrivenProcessing + 0.26*C_serverlessCompute + 0.18*C_automaticScaling + 0.12*C_shortDurationTasks + 0.08*C_payPerRequest + 0.04*C_noServerManagement
Score_Batch = 0.34*C_batchProcessing + 0.28*C_parallelComputing + 0.16*C_queueManagement + 0.12*C_jobScheduling + 0.06*C_resourceOptimization + 0.04*C_largescaleWorkloads
Score_AutoScaling = 0.30*C_dynamicScaling + 0.26*C_performanceMonitoring + 0.18*C_costOptimization + 0.14*C_demandBasedScaling + 0.08*C_metricDrivenActions + 0.04*C_capacityManagement
Score_SpotInstances = 0.36*C_costSavings + 0.28*C_faultTolerantWorkloads + 0.16*C_flexibleScheduling + 0.10*C_interruptibleTasks + 0.06*C_nonCriticalWorkloads + 0.04*C_spareCapacityUsage
EC2 {{vm.scores.ec2|number:2}}
Lambda {{vm.scores.lambda|number:2}}
Batch {{vm.scores.batch|number:2}}
Auto Scaling {{vm.scores.autoscaling|number:2}}
Spot Instances {{vm.scores.spotinstances|number:2}}
Primary Emphasis: {{vm.recommended.name}} ({{vm.recommended.score|number:2}})
Heuristics
- High C_persistentWorkloads + C_fullOSControl → EC2 for traditional applications.
- Strong C_eventDrivenProcessing + C_serverlessCompute → Lambda for event handling.
- High C_batchProcessing + C_parallelComputing → Batch for large-scale jobs.
- C_dynamicScaling + C_performanceMonitoring → Auto Scaling for elastic workloads.
- C_costSavings + C_faultTolerantWorkloads → Spot Instances for cost optimization.
Anti-Patterns
- Using Lambda for long-running processes (use EC2 or Batch instead).
- Using EC2 for short-lived event processing (use Lambda).
- Using Spot Instances for critical workloads (use EC2 with Auto Scaling).
- Manual scaling for predictable workloads (use Auto Scaling).
Summary
Choose EC2 for persistent workloads, Lambda for events, Batch for jobs, Auto Scaling for elasticity, Spot for cost savings.