Courseiva
Design and implement data storagehardMultiple ChoiceObjective-mapped

Synapse Dedicated SQL Pool Table Design

You are using Azure Synapse SQL Pool to store a large fact table partitioned by date. Queries frequently filter on a specific date range and aggregate by a column called 'product_id'. Which table distribution and indexing strategy will minimize query execution time?

Quick Answer

The logic here mirrors how Synapse handles any large-scale aggregation: if you distribute the fact table by the column you group on, all the rows that need to be combined for a given product_id already live on the same node, so the aggregation can happen locally instead of requiring rows to be shuffled across the cluster first. Since the query pattern described is filtering by date and then aggregating by product_id, hash-distributing on product_id directly serves the more expensive, more frequent operation, aggregation across a large fact table, while the date filter is handled separately through table partitioning, which lets the engine skip irrelevant date ranges before the aggregation even starts. The clustered columnstore index complements this by storing the table in a highly compressed, column-oriented layout that scans and aggregates far faster than a row-based heap or standard rowstore index would, particularly at the scale implied by a large fact table. Choosing to hash-distribute on the date column instead would speed up the filter but leave the aggregation doing expensive cross-node data movement, which is usually the costlier operation. The general pattern worth remembering: when a query's dominant, expensive operation is aggregating by a specific column, distribute on that column, and use partitioning and the columnstore index to handle filtering and raw scan speed on top of that distribution choice.

⚠ Common exam trap

Many candidates choose round-robin distribution (Option C) thinking it is best for large tables, but they overlook that hash distribution on the aggregation column eliminates expensive data shuffling, which is critical for minimizing query execution time.

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

Hash distribution on product_id with clustered columnstore index

Hash distribution on product_id ensures that rows with the same product_id are co-located on the same distribution, enabling efficient local aggregation without data movement. The clustered columnstore index provides high compression and fast scan performance for large fact tables, especially when queries filter on a date range and aggregate by product_id.

Answer analysis

Option-by-option breakdown

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

  • Hash distribution on product_id with clustered rowstore index

    Why it's wrong here

    Rowstore index is not optimized for large analytical queries; columnstore is better.

  • Replicated table with clustered columnstore index

    Why it's wrong here

    Replicated tables are only suitable for small dimension tables, not large fact tables.

  • Round-robin distribution with clustered columnstore index

    Why it's wrong here

    Round-robin causes data shuffling during joins and aggregations.

  • Hash distribution on product_id with clustered columnstore index

    Why this is correct

    Hash distribution enables co-location for aggregation, and columnstore is efficient for large scans.

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. Which THREE of the following are best practices for designing tables in a dedicated SQL pool in Azure Synapse Analytics?

hard
  • A.Avoid using clustered columnstore indexes on large tables.
  • B.Avoid data skew by choosing a good distribution key.
  • C.Use round-robin distribution for all large fact tables.
  • D.Use replicated tables for small dimension tables (less than 1 GB).
  • E.Use hash distribution on a column with high cardinality for large fact tables.

Why B: A good distribution key minimizes data skew, ensuring that data is evenly distributed across all distributions. This prevents performance bottlenecks where some distributions handle a disproportionate amount of data or queries, which is critical for parallel processing in a dedicated SQL pool.

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.