DEA-C01 Practice Question 42: Step Functions Distributed Map
AWS Certified Data Engineer – Associate (DEA-C01) · Test 5 · question 2 of 10
A Step Functions Standard workflow must call an AWS Lambda function once for each of roughly 4 million JSON objects under an Amazon S3 prefix. The current design reads the object list into the workflow and passes it to an inline Map state. The workflow now fails: the state input exceeds the payload limit, the execution history limit is reached, and throughput is capped because only a few dozen iterations run at a time.
Which change fixes all three problems?
Show answer and explanation
Answer:
The documentation names these exact conditions as the trigger for Distributed mode: use it "when you need to orchestrate large-scale parallel workloads that meet any combination of the following conditions: the size of your dataset exceeds 256 KiB; the workflow's execution event history would exceed 25,000 entries; you need a concurrency of more than 40 concurrent iterations." A Distributed Map's ItemReader reads "a large-scale Amazon S3 data source" directly, so the object list never passes through the state payload. Each iteration runs as a child workflow execution with "its own, separate execution history from that of the parent workflow", which keeps the parent's history small. And if no MaxConcurrency is set, "Step Functions runs 10,000 parallel child workflow executions in parallel."
Option B cannot work: the inline Map is limited to 40 concurrent iterations, and raising the setting does nothing about the oversized payload or the 25,000-entry history limit.
Option C is manual sharding. It multiplies the operational surface by a hundred, needs a mechanism to divide and assign the object ranges, and each of the hundred workflows still runs an inline Map capped at 40 concurrent iterations.
Option D trades one limit for worse ones. Express workflows have a five-minute maximum duration, far too short for 4 million invocations, and the documentation explicitly warns that "Distributed mode is supported in Standard workflows but not supported in Express workflows", so this choice also closes off the actual solution.
Reference: Using Map state in Distributed mode for large-scale parallel workloads