Skip to content

Commit 9572424

Browse files
20250130 troubleshoot-dsql-perf-slow-query.md
1 parent 4dbe950 commit 9572424

1 file changed

Lines changed: 4 additions & 5 deletions

File tree

support/azure/synapse-analytics/dedicated-sql/query-execution-performance/troubleshoot-dsql-perf-slow-query.md

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ Follow the steps to troubleshoot the issue or execute the steps in the notebook
3030
>
3131
> To save troubleshooting time, make sure that the statistics are [created and up-to-date](/azure/synapse-analytics/sql/develop-tables-statistics#update-statistics) and [rebuild clustered columnstore indexes in the dedicated SQL pool](dsql-perf-cci-health.md).
3232
33-
<a id="#step-1-identify-the-request_id-aka-qid"></a>
33+
<a id="step-1-identify-the-request_id-aka-qid"></a>
3434

3535
## Step 1: Identify the request_id (also known as QID)
3636

@@ -328,8 +328,7 @@ Have your statistics up-to-date to ensure that the query optimizer generates an
328328

329329
**Mitigations**
330330

331-
[Check statistics accuracy on a dedicated SQL pool](https://learn.microsoft.com/troubleshoot/azure/synapse-analytics/dedicated-sql/query-execution-performance/dsql-perf-stats-accuracy)
332-
[Create/Update statistics](/azure/synapse-analytics/sql/develop-tables-statistics#update-statistics).
331+
First, [check statistics accuracy on a dedicated SQL pool](dsql-perf-stats-accuracy.md). If necessary, [create or update statistics](/azure/synapse-analytics/sql/develop-tables-statistics#update-statistics).
333332

334333
<br/>
335334
</details>
@@ -384,7 +383,7 @@ In-flight data skew is a variant of the [data skew (stored)](#data-skew-stored)
384383

385384
**Mitigations**
386385

387-
- Ensure that statistics are [created and up-to-date](/azure/synapse-analytics/sql/develop-tables-statistics#update-statistics). You can verify the accuracy of statistics by following the steps outlined in [Check statistics accuracy on a dedicated SQL pool](https://learn.microsoft.com/troubleshoot/azure/synapse-analytics/dedicated-sql/query-execution-performance/dsql-perf-stats-accuracy)
386+
- Ensure that statistics are [created and up-to-date](/azure/synapse-analytics/sql/develop-tables-statistics#update-statistics). You can verify the accuracy of statistics by following the steps outlined in [Check statistics accuracy on a dedicated SQL pool](dsql-perf-stats-accuracy.md).
388387
- Change the order of your `GROUP BY` columns to lead with a higher-cardinality column.
389388
- Create multi-column statistics if joins cover multiple columns.
390389
- Add query hint `OPTION(FORCE_ORDER)` to your query.
@@ -455,7 +454,7 @@ The optimizer relies on statistics to estimate the number of rows that will be r
455454
456455
For example, if the actual number of rows for a given table is 60 million, and the estimated number of rows is 1,000 (at control node level), the optimizer might choose a Broadcast move operation. This is because the cost is perceived to be lower compared to a Shuffle Move, given the optimizer's assumption that the table contains only 1,000 rows. However, once the actual execution begins, the engine will move 60 million rows as part of the execution using a Broadcast move, which can be an expensive operation considering both the data size and row count. Consequently, if the data size is substantial, it might lead to performance issues for the query itself and other queries, resulting in high CPU usage.
457456

458-
To remedy this situation, ensure all [statistics are up-to-date](/azure/synapse-analytics/sql/develop-tables-statistics#update-statistics), and a maintenance plan is in place to keep them updated for user workloads. You can verify the accuracy of statistics by following the steps outlined in [Check statistics accuracy on a dedicated SQL pool](https://learn.microsoft.com/troubleshoot/azure/synapse-analytics/dedicated-sql/query-execution-performance/dsql-perf-stats-accuracy)
457+
To remedy this situation, ensure all [statistics are up-to-date](/azure/synapse-analytics/sql/develop-tables-statistics#update-statistics), and a maintenance plan is in place to keep them updated for user workloads. You can verify the accuracy of statistics by following the steps outlined in [Check statistics accuracy on a dedicated SQL pool](dsql-perf-stats-accuracy.md).
459458

460459
**Heavy IO workloads**
461460

0 commit comments

Comments
 (0)