A workspace admin creates a custom Spark pool and turns on both autoscale and dynamic executor allocation. A developer asks what each of the two settings actually adjusts while jobs run. Which statement is accurate?
Choose one.
Custom Spark pools have two independent scaling controls: autoscale (how many nodes the pool holds, between a min and max) and dynamic executor allocation (how many executors a single Spark application uses, within bounds).
Autoscale works at the pool level, adding nodes up to the configured maximum and retiring them after jobs finish. Dynamic allocation works at the application level, sizing a job's executor count to the data volume. The swapped statement is the common confusion. Node size, family, capacity units and driver memory are not run-time settings of either feature.
- Separate the two scopes: the pool (nodes) and the application (executors).
- Map autoscale to the pool's node count between min and max.
- Map dynamic allocation to a job's executor count.
- Reject options that change node size, family or capacity, which are fixed by configuration or the SKU.
Exam tip: Autoscale = nodes in the pool; dynamic allocation = executors in a job.
Configure Microsoft Fabric Workspace Settings: Spark, Domains, OneLake, Airflow — the lesson that teaches this.