Courseiva

Optimize Star Join Queries in Azure Synapse Dedicated SQL Pool

You are optimizing an Azure Synapse Analytics dedicated SQL pool. The workload includes large fact tables and dimension tables. You need to improve query performance for star join queries. Which TWO actions should you take?

Quick Answer

Star join performance in Azure Synapse comes down to making sure related rows sit on the same compute node before a join happens, and the two recommended actions attack that from opposite directions. Hash-distributing the large fact table on the join key means every row needed for a given join value already lives on one distribution, so joining against a dimension table does not require shuffling fact rows across the network, and since fact tables are typically far larger than dimension tables, this is where the distribution choice matters most. Replicating the dimension tables works because those tables are comparatively small: keeping a full copy on every node means joins against them never need data movement at all, regardless of key. This rules out two tempting alternatives: round-robin distribution spreads fact rows evenly with no relationship to the join key, so it still forces data movement during joins even though it is fine for staging tables, and hash-distributing the small dimension tables instead wastes the technique on the side of the join that did not need it. A heap table also loses out here, since it skips the compression and batch-mode scanning a clustered columnstore index provides. When a star join question asks how to optimize fact-to-dimension joins, expect the fact table to be hash-distributed on the join key and the dimension tables to be replicated.

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

Use replicated distribution on dimension tables.

The correct actions are D and E. For star join queries in Azure Synapse Analytics dedicated SQL pool, best practices are to use hash distribution on fact tables using the join key (option E) to distribute data across distributions efficiently, and use replicated distribution on dimension tables (option D) to avoid data movement. Option A is wrong because round-robin distribution is suitable for staging or temporary tables, not for large fact tables in star schemas. Option B is wrong because dimension tables should be replicated, not hash-distributed, to minimize shuffling. Option C is wrong because heap tables are not optimized for analytical queries; clustered columnstore index is the recommended table structure for fact tables.

Answer analysis

Option-by-option breakdown

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

  • Use round-robin distribution on fact tables.

    Why it's wrong here

    Round-robin causes data shuffling.

  • Use hash distribution on dimension tables.

    Why it's wrong here

    Hash on dimension tables causes unnecessary data movement.

  • Use heap table structure for fact tables.

    Why it's wrong here

    Columnstore index is better for analytics.

  • Use replicated distribution on dimension tables.

    Why this is correct

    Replicated tables avoid data movement.

  • Use hash distribution on fact tables using the join key.

    Why this is correct

    Hash distribution aligns data for joins.

About these practice questions

One of 760 original DP-203 practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

Same concept, more angles

1 more way this is tested on DP-203

These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.

Variation 1. You are optimizing the performance of an Azure Synapse Analytics dedicated SQL pool. Which TWO actions can help reduce data movement during query execution?

hard
  • A.Use hash distribution on a column that is not used in joins.
  • B.Use replicated tables for small dimension tables.
  • C.Use round-robin distribution for large fact tables.
  • D.Increase the resource class for the loading user.
  • E.Distribute fact tables on the join key columns.

Why B: Options B and E are correct. Using replicated tables for small dimension tables avoids data movement during joins because the table is copied to all distributions. Distributing fact tables on the join key columns ensures that matching rows are co-located, reducing shuffling. Option A is incorrect: using hash distribution on a column not used in joins increases data movement because data is redistributed unnecessarily. Option C is incorrect: round-robin distribution distributes rows evenly but often requires data movement for joins. Option D is incorrect: increasing the resource class allocates more resources but does not directly reduce data movement.

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.