Courseiva
Develop data processingeasyMultiple SelectObjective-mapped

DP-203 Develop data processing Practice Question

Which TWO actions should you take to optimize a Spark job in Azure Synapse Analytics that is experiencing excessive shuffling and long execution times?

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

Broadcast one of the tables if it is small enough to fit in memory.

Broadcasting a small table avoids shuffle operations during joins, as the small table is sent to all executors. Option E is correct because increasing the number of shuffle partitions (via spark.sql.shuffle.partitions) can distribute data more evenly, reducing the size of each shuffle block and improving parallelism. Option A is incorrect: coalescing reduces the number of partitions, which may increase the amount of data shuffled per task and worsen skew. Option B is incorrect: checkpointing improves fault tolerance but does not directly reduce shuffling. Option D is incorrect: disabling dynamic resource allocation can lead to resource contention or waste, not optimized shuffling.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Coalesce the number of partitions to reduce overhead.

    Why it's wrong here

    Coalescing reduces partitions, potentially increasing shuffle size.

  • Enable checkpointing to persist intermediate results.

    Why it's wrong here

    Checkpointing adds disk I/O but does not directly reduce shuffling.

  • Broadcast one of the tables if it is small enough to fit in memory.

    Why this is correct

    Broadcast join eliminates shuffle by replicating the small table to all executors.

  • Disable dynamic resource allocation.

    Why it's wrong here

    Disabling dynamic allocation may cause resource underutilization or contention.

  • Increase the number of shuffle partitions using 'spark.sql.shuffle.partitions'.

    Why this is correct

    More partitions can reduce the amount of data per task, reducing shuffle pressure.

About these practice questions

This DP-203 question is part of Courseiva's 760-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This DP-203 practice question is part of Courseiva's free Microsoft certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the DP-203 exam.