DEA-C01 Practice Question 43: Glue Flex Execution Class
AWS Certified Data Engineer – Associate (DEA-C01) · Test 5 · question 3 of 10
A team runs a set of AWS Glue 4.0 Spark jobs on G.1X workers that reprocess historical data and refresh a pre-production environment. Nobody consumes the output until the following week, so the jobs have no deadline and a variable start time is acceptable. Finance has asked for the cheapest way to run them.
Which change should the data engineer make?
Show answer and explanation
Answer:
AWS Glue offers a standard and a flexible execution class. "The standard execution-class is ideal for time-sensitive workloads that require fast job startup and dedicated resources. The flexible execution class is appropriate for non-urgent jobs such as pre-production jobs, testing, and one-time data loads", which is this workload, almost word for word. Flex changes the billing model: "Flex job runs are billed based on the number of workers running at any point in time… Instead of billing as a simple calculation of Max Capacity * Execution Time, each worker will contribute for the time it ran during the job run." The trade is a variable start time and potentially longer runtime, which the stem has already accepted. Glue 4.0 with G.1X workers is supported (Flex requires Glue 3.0 or later and G.1X or G.2X).
Option A rests on a false premise. AWS Glue is billed per DPU-hour at a rate that does not vary by time of day, so moving the schedule saves nothing.
Option B changes the engine, not the price tier, and breaks the workload. Python shell jobs run a single-node Python script with a small DPU allocation; they cannot run the distributed Spark transformations these jobs depend on.
Option C is a real optimization but a different one, and it is orthogonal to the pricing class. Auto scaling helps a job that has uneven resource demand across stages; it does not give the non-urgent workload the discounted flexible execution class, and it can be combined with Flex rather than substituted for it.
Reference: Configuring job properties for Spark jobs in AWS Glue - Flex execution