AWS Certified Developer – Associate (DVA-C02)Development with AWS ServicesHard
A developer is building a serverless application that needs to execute long-running batch jobs (up to 15 minutes) that process large datasets stored in Amazon S3. The jobs are triggered by S3 object creation events and require significant computational resources. The developer wants to minimize operational overhead and pay only for the compute time consumed. Which AWS service is the most appropriate for executing these batch jobs?
- AAmazon EC2 Spot Instances
- BAWS Fargate
- CAWS Batch
- DAWS Lambda
Show answer & explanationAnswer & explanation
Correct answer: C. AWS Batch
AWS Batch is a fully managed service that enables developers, scientists, and engineers to easily and efficiently run hundreds of thousands of batch computing jobs on AWS. It automatically provisions compute resources, manages job queues, and handles job execution for long-running, resource-intensive tasks, minimizing operational overhead.
Why the other options are wrong
- A. EC2 Spot Instances can be cost-effective but require significant operational overhead for managing instances, job queues, and retries, which the question seeks to minimize.
- B. AWS Fargate is a serverless compute engine for containers but is typically used for running services or short-lived tasks, and while it handles compute, AWS Batch provides a higher-level abstraction specifically for batch job scheduling and management.
- D. AWS Lambda has a maximum execution duration of 15 minutes, which is at the very limit of the requirement and might not be sufficient for 'significant computational resources' or future growth. It's better for short-lived, event-driven functions.
AWS Batch
A fully managed service that allows you to run batch computing workloads of any scale efficiently on AWS, provisioning and managing compute resources automatically.
- Manages compute resources, job scheduling, and queues.
- Supports Docker containers.
- Ideal for long-running, resource-intensive batch jobs.
Memory trick: Batch handles big jobs, Lambda for quick tasks.