Q64Design High-Performing Architectures
A company is moving a legacy application to AWS. The application runs a batch job once every hour and is CPU-intensive. On an on-premises server, the batch job takes 15 minutes on average. That server has 64 virtual CPUs (vCPUs) and 512 GiB of memory. Which solution will execute the batch job within 15 minutes with the **LEAST operational overhead**?
← → navigate · a answer
Community votes
Discussion · 20
22
The amount of CPU and memory resources required by the batch job exceeds the capabilities of AWS Lambda and Amazon Lightsail with AWS Auto Scaling, which offer limited compute resources. AWS Fargate offers containerized application orchestration and scalable infrastructure, but may require additional operational overhead to configure and manage the environment. AWS Batch is a fully managed service that automatically provisions the required infrastructure for batch jobs, with options to use different instance types and launch modes.
Therefore, the solution that will run the batch job within 15 minutes with the LEAST operational overhead is D. Use AWS Batch on Amazon EC2. AWS Batch can handle all the operational aspects of job scheduling, instance management, and scaling while using Amazon EC2 injavascript:void(0)stances with the right amount of CPU and memory resources to meet the job's requirements.
D 13
AWS Batch is a fully-managed service that can launch and manage the compute resources needed to execute batch jobs. It can scale the compute environment based on the size and timing of the batch jobs.
8
What happens if it EXCEEDS the 15 min AVERAGE?
Average = possibly can be more than 15min.
The safer bet would be option D: AWS Batch on EC2
D 7
The main reasons are:
AWS Batch can easily schedule and run batch jobs on EC2 instances. It can scale up to the required vCPUs and memory to match the on-premises server.
Using EC2 provides full control over the instance type to meet the resource needs.
No servers or clusters to manage like with ECS/Fargate or Lightsail. AWS Batch handles this automatically.
More cost effective and operationally simple compared to Lambda which is not ideal for long running batch jobs.
D 7
Not A because: "AWS Lambda now supports up to 10 GB of memory and 6 vCPU cores for Lambda Functions." https://aws.amazon.com/about-aws/whats-new/2020/12/aws-lambda-supports-10gb-memory-6-vcpu-cores-lambda-functions/ vs. "The server has 64 virtual CPU (vCPU) and 512 GiB of memory" in the question.
5
How? The on-prem server has 64 CPUs and 512 GB RAM, Lambda offers much less. And even on-prem it takes 15 minutes ON AVERAGE, sometimes more.
5
This is for certain a tough one. I do see that they have thrown a curve ball in making it Lambda Functional scaling, however what we dont know is if this application has many request or one large one.. looks like Lambda can scale and use the same lambda env.. seems intensive tho so will go with D
4
Wrong, the job takes "On average 15 minutes" and requires more cpu and ram than lambda can deal with. AWS Batch is correct in this scenario
D 4
The question needs to be phrased differently. I assume at first it was Lambda, because it says 15 minutes in the question which can be done. Yes it also does say CPU intensive however they go on with a full stop and then give you the server specs. It does not say it uses that much of the specs so they need to really rephrase the questions.
D 3
key-The batch job takes 15 minutes on average
key-LEAST operational overhead
key-the batch job
is not A because lambda execution takes 15 max and lambda dont support 512 GIB of memory
the answer is D batch it is designed to run large-scale batch jobs an automatically manages the scaling of resources also batch allow jobs to be distributed accross multiple instances because supports parallel execution
3
read the rest of the question which gives the answer:
"Which solution will run the batch job within 15 minutes with the LEAST operational overhead?"
Keyword "Within 15 minutes"
D 3
Not Lambda, "average 15 minutes" means there are jobs with running more and less than 15 minutes. Lambda max is 15 minutes.
D 3
AWS Batch
2
How are you going to get 64 vCPUS to a Lambda function?
2
A is the answer. Lambda is known that has a limit of 15 minutes. So for as long as it says "within 15 minutes" that should be a clear indication it is Lambda
2
I think what he means is that it takes on average 15 min on prem only
D 2
AWS batch on EC2
1
The 15 mins requirement is a distraction - lambda cannot process the requirement given the memory size of the job
A 1
On-Prem was avg 15 min, but target state architecture is expected to finish within 15 min
D 1
Lambda has a hard limit of 10 GB of memory and 6 vCPUs per function execution, Amazon Light sail has the limit of 8vCPUs and 32GB memory, so A and C out, B and D can meet vCPU and memory requirements, but B is more expensive than D, so correct answer is D.