Skip to content

Commit 4a17259

Browse files
20240729 edit pass
1 parent 346b35f commit 4a17259

File tree

3 files changed

+36
-38
lines changed

3 files changed

+36
-38
lines changed

articles/synapse-analytics/sql-data-warehouse/resource-classes-for-workload-management.md

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -88,13 +88,13 @@ Resource classes are designed to improve performance for data management and man
8888

8989
These operations are governed by resource classes:
9090

91-
- INSERT-SELECT, UPDATE, DELETE
92-
- SELECT (when querying user tables)
93-
- ALTER INDEX - REBUILD or REORGANIZE
94-
- ALTER TABLE REBUILD
95-
- CREATE INDEX
96-
- CREATE CLUSTERED COLUMNSTORE INDEX
97-
- CREATE TABLE AS SELECT (CTAS)
91+
- `INSERT`-`SELECT`, `UPDATE`, `DELETE`
92+
- `SELECT` (when querying user tables)
93+
- `ALTER INDEX` - `REBUILD` or `REORGANIZE`
94+
- `ALTER TABLE REBUILD`
95+
- `CREATE INDEX`
96+
- `CREATE CLUSTERED COLUMNSTORE INDEX`
97+
- `CREATE TABLE AS SELECT` (CTAS)
9898
- Data loading
9999
- Data movement operations conducted by the Data Movement Service (DMS)
100100

@@ -107,21 +107,21 @@ Some queries always run in the smallrc resource class even though the user is a
107107

108108
The following statements are exempt from resource classes and always run in smallrc:
109109

110-
- CREATE or DROP TABLE
111-
- ALTER TABLE ... SWITCH, SPLIT, or MERGE PARTITION
112-
- ALTER INDEX DISABLE
113-
- DROP INDEX
114-
- CREATE, UPDATE, or DROP STATISTICS
115-
- TRUNCATE TABLE
116-
- ALTER AUTHORIZATION
117-
- CREATE LOGIN
118-
- CREATE, ALTER, or DROP USER
119-
- CREATE, ALTER, or DROP PROCEDURE
120-
- CREATE or DROP VIEW
121-
- INSERT VALUES
122-
- SELECT from system views and DMVs
123-
- EXPLAIN
124-
- DBCC
110+
- `CREATE` or `DROP TABLE`
111+
- `ALTER TABLE ... SWITCH`, `SPLIT`, or `MERGE PARTITION`
112+
- `ALTER INDEX DISABLE`
113+
- `DROP INDEX`
114+
- `CREATE`, `UPDATE`, or `DROP STATISTICS`
115+
- `TRUNCATE TABLE`
116+
- `ALTER AUTHORIZATION`
117+
- `CREATE LOGIN`
118+
- `CREATE`, `ALTER`, or `DROP USER`
119+
- `CREATE`, `ALTER`, or `DROP PROCEDURE`
120+
- `CREATE` or `DROP VIEW`
121+
- `INSERT VALUES`
122+
- `SELECT` from system views and DMVs
123+
- `EXPLAIN`
124+
- `DBCC`
125125

126126
<!--
127127
Removed as these two are not confirmed / supported under Azure Synapse Analytics
@@ -169,7 +169,7 @@ EXEC sp_droprolemember 'largerc', 'loaduser';
169169

170170
Users can be members of multiple resource classes. When a user belongs to more than one resource class:
171171

172-
- Dynamic resource classes take precedence over static resource classes. For example, if a user is a member of both mediumrc(dynamic) and staticrc80 (static), queries run with mediumrc.
172+
- Dynamic resource classes take precedence over static resource classes. For example, if a user is a member of both mediumrc (dynamic) and staticrc80 (static), queries run with mediumrc.
173173
- Larger resource classes take precedence over smaller resource classes. For example, if a user is a member of mediumrc and largerc, queries run with largerc. Likewise, if a user is a member of both staticrc20 and statirc80, queries run with staticrc80 resource allocations.
174174

175175
## Recommendations
@@ -226,8 +226,8 @@ For examples, see [Usage example](#usage-example).
226226
>[!NOTE]
227227
>If you are not getting output after executing stored procedure with parameters provided, then there could be two cases.
228228
>
229-
>1. Either DW Parameter contains an invalid SLO value
230-
>2. Or, there is no matching resource class for the CCI operation on the table.
229+
>- Either DW Parameter contains an invalid SLO value
230+
>- Or, there is no matching resource class for the CCI operation on the table.
231231
>
232232
>For example, at DW100c, the highest memory grant available is 1 GB, and if table schema is wide enough to cross the requirement of 1 GB.
233233
@@ -236,9 +236,9 @@ For examples, see [Usage example](#usage-example).
236236
Syntax:
237237
`EXEC dbo.prc_workload_management_by_DWU @DWU VARCHAR(7), @SCHEMA_NAME VARCHAR(128), @TABLE_NAME VARCHAR(128)`
238238

239-
1. @DWU: Either provide a NULL parameter to extract the current DWU from the DW DB or provide any supported DWU in the form of 'DW100c'
240-
1. @SCHEMA_NAME: Provide a schema name of the table
241-
1. @TABLE_NAME: Provide a table name of the interest
239+
- `@DWU`: Either provide a `NULL` parameter to extract the current DWU from the DW DB or provide any supported DWU in the form of 'DW100c'
240+
- `@SCHEMA_NAME`: Provide a schema name of the table
241+
- `@TABLE_NAME`: Provide a table name of the interest
242242

243243
Examples executing this stored proc:
244244

articles/synapse-analytics/sql-data-warehouse/sql-data-warehouse-how-to-troubleshoot-missed-classification.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -139,9 +139,9 @@ Consider a scenario for the Azure Synapse Workspace SQL Admin login, the Azure S
139139

140140
**Recommendation**: These administrative users can't change their default workload group. For more information, see [workload management with resource classes](resource-classes-for-workload-management.md#default-resource-class). It is recommended that critical or performance-sensitive workloads not run as one of these administrative users in the dedicated SQL pool.
141141

142-
The Azure Synapse Workspace SQL Admin login and the Azure Synapse Microsoft Entra admin (user or group member) are specified in the Azure portal, on the **Overview** page of the dedicated SQL pool.
142+
The Azure Synapse Workspace SQL Admin login and the Azure Synapse Microsoft Entra admin (user or group member) are specified in the Azure portal, on the **Overview** page of the dedicated SQL pool.
143143

144-
Similarly, the database owner (dbo) and **db_owner** database roles are not allowed to change their default resource class. If a user is either the database owner or added under **db_owner** database role, all queries executed by the user go to smallrc by default. These roles can't be added to a resource class other than smallrc. However, if a user who is part of this role would like to classify their queries to a different workload group, they can use `MEMBERNAME` option in [workload classifier definition](sql-data-warehouse-workload-classification.md).
144+
Similarly, the database owner (dbo) and **db_owner** database roles are not allowed to change their default resource class. If a user is either the database owner or added under **db_owner** database role, all queries executed by the user go to smallrc by default. These roles can't be added to a resource class other than smallrc. However, if a user who is part of this role would like to classify their queries to a different workload group, they can use `MEMBERNAME` option in [workload classifier definition](sql-data-warehouse-workload-classification.md).
145145

146146
### Use workload group precedence for better classification
147147

@@ -157,9 +157,9 @@ In scenarios where resource classes are being used it's best to create a dedicat
157157
1. Dynamic resource class takes precedence over static resource class. For example, if a user is member of mediumrc (dynamic) and staticrc80(static), user queries run with mediumrc.
158158
1. Bigger resource classes are preferred over smaller resource classes. For example, if a user is member of staticrc20 and staticrc80, then user queries will run with staticrc80.
159159

160-
#### If Workload Management Capabilities are used
160+
#### If workload management capabilities are used
161161

162-
WLM provides capability to create multiple workload classifiers for same user or workload group. Classifier definition statement has multiple parameters based on which incoming requests are assigned to workloads. These parameters have a **weight** score as shown below and this score determines order of precedence:
162+
Workload management (WLM) capabilities provide capability to create multiple workload classifiers for same user or workload group. Classifier definition statement has multiple parameters based on which incoming requests are assigned to workloads. These parameters have a **weight** score as shown below and this score determines order of precedence:
163163

164164
|**Classifier parameter** |**Weight** |
165165
|---------------------|---------|
@@ -186,7 +186,7 @@ CREATE WORKLOAD CLASSIFIER CLASSIFIER-2 WITH
186186
,IMPORTANCE = 'Low')
187187
```
188188

189-
Queries submitted by User-1 can be submitted via both classifiers. Query run by User-1 with the 'dimension_loads' label between 6PM and 7AM UTC will be assigned to `wgDashboards` as weight score of WLM_LABEL is higher than START_TIME/END_TIME. The weighting of `CLASSIFIER-1` is 80 (64 for user, plus 16 for WLM_LABEL). The weighting of `CLASSIFIER-2` is 68 (64 for user, 4 for START_TIME/END_TIME).
189+
Queries submitted by User-1 can be submitted via both classifiers. Query run by User-1 with the `dimension_loads` label between 6PM and 7AM UTC will be assigned to `wgDashboards` as weight score of `WLM_LABEL` is higher than `START_TIME`/`END_TIME`. The weighting of `CLASSIFIER-1` is 80 (64 for user, plus 16 for `WLM_LABEL`). The weighting of `CLASSIFIER-2` is 68 (64 for user, 4 for `START_TIME`/`END_TIME`).
190190

191191
For more information on workload classification, see [classification weighting](sql-data-warehouse-workload-classification.md#classification-weighting) and [query labels](../sql/develop-label.md).
192192

@@ -296,5 +296,5 @@ If there was a tie in workload groups or classifiers, following precedence takes
296296
## Related content
297297

298298
- For more information on workload classification, see [Workload Classification](sql-data-warehouse-workload-classification.md).
299-
- For more information on workload importance, see [Workload Importance](sql-data-warehouse-workload-importance.md)
300-
299+
- For more information on workload importance, see [Workload Importance](sql-data-warehouse-workload-importance.md).
300+

articles/synapse-analytics/sql-data-warehouse/sql-data-warehouse-workload-classification.md

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,15 +18,13 @@ This article explains the workload classification process of assigning a workloa
1818

1919
## Classification
2020

21-
> [!Video https://www.youtube.com/embed/QcCRBAhoXpM]
22-
2321
Workload management classification allows workload policies to be applied to requests through assigning [resource classes](resource-classes-for-workload-management.md#what-are-resource-classes) and [importance](sql-data-warehouse-workload-importance.md).
2422

2523
While there are many ways to classify data warehousing workloads, the simplest and most common classification is load and query. You load data with insert, update, and delete statements. You query the data using selects. A data warehousing solution will often have a workload policy for load activity, such as assigning a higher resource class with more resources. A different workload policy could apply to queries, such as lower importance compared to load activities.
2624

2725
You can also subclassify your load and query workloads. Subclassification gives you more control of your workloads. For example, query workloads can consist of cube refreshes, dashboard queries or ad hoc queries. You can classify each of these query workloads with different resource classes or importance settings. Load can also benefit from subclassification. Large transformations can be assigned to larger resource classes. Higher importance can be used to ensure key sales data is loader before weather data or a social data feed.
2826

29-
Not all statements are classified as they do not require resources or need importance to influence execution. DBCC commands, BEGIN, COMMIT, and ROLLBACK TRANSACTION statements are not classified.
27+
Not all statements are classified as they do not require resources or need importance to influence execution. `DBCC` commands, `BEGIN`, `COMMIT`, and `ROLLBACK TRANSACTION` statements are not classified.
3028

3129
## Classification process
3230

0 commit comments

Comments
 (0)