MLA-C01 · Question #38
An ML engineer needs to use an Amazon EMR cluster to process large volumes of data in batches. Any data loss is unacceptable. Which instance purchasing option will meet these requirements MOST cost-ef
The correct answer is D. Run the primary node and core nodes on On-Demand Instances. Run the task nodes on Spot. D is correct because in Amazon EMR, core nodes store data in HDFS - if a Spot Instance is reclaimed mid-job, any data on those nodes can be lost, violating the "no data loss" requirement. Task nodes are pure compute workers with no HDFS storage responsibility, so Spot interruptio
Question
An ML engineer needs to use an Amazon EMR cluster to process large volumes of data in batches. Any data loss is unacceptable. Which instance purchasing option will meet these requirements MOST cost-effectively?
Options
- ARun the primary node, core nodes, and task nodes on On-Demand Instances.
- BRun the primary node, core nodes, and task nodes on Spot Instances.
- CRun the primary node on an On-Demand Instance. Run the core nodes and task nodes on Spot
- DRun the primary node and core nodes on On-Demand Instances. Run the task nodes on Spot
How the community answered
(42 responses)- A17% (7)
- B10% (4)
- C31% (13)
- D43% (18)
Explanation
D is correct because in Amazon EMR, core nodes store data in HDFS - if a Spot Instance is reclaimed mid-job, any data on those nodes can be lost, violating the "no data loss" requirement. Task nodes are pure compute workers with no HDFS storage responsibility, so Spot interruptions cause job delay, not data loss. The primary node must also be On-Demand since its termination kills the entire cluster.
Why the distractors fail:
- A is safe but wasteful - task nodes can safely use Spot, so paying full On-Demand price for them is unnecessarily expensive.
- B puts core nodes (and the primary node) on Spot, risking both data loss and total cluster failure when instances are reclaimed - directly violates the requirement.
- C is the most dangerous distractor: it correctly protects the primary node but runs core nodes on Spot, which still risks HDFS data loss on interruption.
Memory tip: Use the acronym "Core = Committed (On-Demand), Task = Temporary (Spot)" - core nodes commit data to HDFS so they need committed pricing; task nodes are just temporary compute horsepower and are safe to gamble on Spot.
Topics
Community Discussion
No community discussion yet for this question.