
Explanation:
Partitioning in Azure Synapse Analytics dedicated SQL pools is a technique used to divide large tables into smaller, more manageable pieces called partitions. This improves query performance by allowing the query engine to eliminate entire partitions from scanning when they don't contain relevant data.
The key requirements are:
Query Pattern Alignment: Since analysts primarily filter by month, partitioning on TransactionMonth enables efficient partition elimination, where the query engine can skip entire partitions that don't contain the requested month's data.
Optimal Partition Size: With 65 million rows per month, each partition contains sufficient data for efficient columnstore compression while remaining manageable in size.
Best Practices Compliance: Microsoft recommends partitioning on date columns when queries commonly filter by date ranges, as this naturally aligns with data loading and query patterns.
Performance Benefits: Monthly partitioning allows for:
Some confusion exists regarding parallel processing and "hot partitions." In Azure Synapse Analytics:
TransactionMonth is the optimal partitioning column because it directly supports the primary query pattern, provides appropriate partition sizing, and follows Azure Synapse Analytics best practices for time-based data analysis scenarios.
Ultimate access to all questions.
You are designing a financial transactions table with a clustered columnstore index in an Azure Synapse Analytics dedicated SQL pool. The table has the following columns and estimated rows per value:
The query requirements are:
You need to recommend a partitioning column for the table to minimize query times. Which column should you choose?

A
CustomerSegment
B
AccountType
C
TransactionType
D
TransactionMonth
No comments yet.