You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This article summarizes the documentation changes associated with new features and improvements in the recent releases of [Azure SQL Database](https://azure.microsoft.com/products/azure-sql/database/). To learn more about Azure SQL Database, see [What is Azure SQL Database?](sql-database-paas-overview.md)
24
+
This article summarizes the documentation changes associated with new features and improvements in the recent releases of [Azure SQL Database](https://azure.microsoft.com/products/azure-sql/database/). To learn more about Azure SQL Database, see [What is Azure SQL Database?](sql-database-paas-overview.md).
Copy file name to clipboardExpand all lines: azure-sql/database/job-automation-overview.md
+13-17Lines changed: 13 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,13 +4,11 @@ description: "Use Elastic Jobs for Job Automation to run Transact-SQL (T-SQL) sc
4
4
author: williamdassafMSFT
5
5
ms.author: wiassaf
6
6
ms.reviewer: wiassaf, mathoma
7
-
ms.date: 2/1/2021
7
+
ms.date: 05/03/2023
8
8
ms.service: sql-database
9
9
ms.subservice: elastic-pools
10
10
ms.topic: conceptual
11
-
ms.custom:
12
-
- sqldbrb=1
13
-
- contperf-fy21q3
11
+
ms.custom: sqldbrb=1
14
12
dev_langs:
15
13
- "TSQL"
16
14
---
@@ -29,15 +27,15 @@ Every job logs the status of execution and also automatically retries the operat
29
27
30
28
There are several scenarios when you could use elastic job automation:
31
29
32
-
- Automate management tasks and schedule them to run every weekday, after hours, etc.
30
+
-**Automate management tasks and schedule them to run every weekday, after hours, etc.**
33
31
- Deploy schema changes, credentials management, performance data collection or tenant (customer) telemetry collection.
34
32
- Update reference data (information common across all databases), load data from Azure Blob storage.
35
-
- Configure jobs to execute across a collection of databases on a recurring basis, such as during off-peak hours.
33
+
-**Configure jobs to execute across a collection of databases on a recurring basis, such as during off-peak hours.**
36
34
- Collect query results from a set of databases into a central table on an on-going basis. Performance queries can be continually executed and configured to trigger additional tasks to be executed.
37
-
- Collect data for reporting
35
+
-**Collect data for reporting**
38
36
- Aggregate data from a collection of databases into a single destination table.
39
37
- Execute longer running data processing queries across a large set of databases, for example the collection of customer telemetry. Results are collected into a single destination table for further analysis.
40
-
- Data movements
38
+
-**Data movement**
41
39
42
40
### Automation on other platforms
43
41
@@ -63,19 +61,19 @@ It is worth noting differences between SQL Agent (available in SQL Server and as
63
61
64
62
**Elastic Jobs** provide the ability to run one or more T-SQL scripts in parallel, across a large number of databases, on a schedule or on-demand.
65
63
66
-
You can run scheduled jobs against any combination of databases: one or more individual databases, all databases on a server, all databases in an elastic pool, or shard map, with the added flexibility to include or exclude any specific database. Jobs can run across multiple servers, multiple pools, and can even run against databases in different subscriptions. Servers and pools are dynamically enumerated at runtime, so jobs run against all databases that exist in the target group at the time of execution.
64
+
You can run scheduled jobs against any combination of databases: one or more individual databases, all databases on a server, all databases in an elastic pool, with the added flexibility to include or exclude any specific database. Jobs can run across multiple servers, multiple pools, and can even run against databases in different subscriptions. Servers and pools are dynamically enumerated at runtime, so jobs run against all databases that exist in the target group at the time of execution.
67
65
68
66
The following image shows a job agent executing jobs across the different types of target groups:
:::image type="content" source="./media/job-automation-overview/conceptual-diagram.png" alt-text="Conceptual diagram of Elastic Job agent.":::
71
69
72
70
### Elastic job components
73
71
74
72
|Component | Description (additional details are below the table) |
75
73
|---------|---------|
76
74
|[**Elastic Job agent**](#elastic-job-agent)| The Azure resource you create to run and manage Jobs. |
77
75
|[**Job database**](#elastic-job-database)| A database in Azure SQL Database that the job agent uses to store job related data, job definitions, etc. |
78
-
|[**Target group**](#target-group)| The set of servers, pools, databases, and shard maps to run a job against. |
76
+
|[**Target group**](#target-group)| The set of servers, pools, and databases to run a job against. |
79
77
|[**Job**](#elastic-jobs-and-job-steps)| A job is a unit of work that is composed of one or more job steps. Job steps specify the T-SQL script to run, as well as other details required to execute the script. |
80
78
81
79
#### Elastic job agent
@@ -114,7 +112,6 @@ A *target group* defines the set of databases a job step will execute on. A targ
114
112
-**Logical SQL server** - if a server is specified, all databases that exist in the server at the time of the job execution are part of the group. The `master` database credential must be provided so that the group can be enumerated and updated prior to job execution. For more information on logical servers, see [What is a server in Azure SQL Database and Azure Synapse Analytics?](logical-servers.md).
115
113
-**Elastic pool** - if an elastic pool is specified, all databases that are in the elastic pool at the time of the job execution are part of the group. As for a server, the `master` database credential must be provided so that the group can be updated prior to the job execution.
116
114
-**Single database** - specify one or more individual databases to be part of the group.
117
-
-**Shard map** - databases of a shard map.
118
115
119
116
> [!TIP]
120
117
> At the moment of job execution, *dynamic enumeration* re-evaluates the set of databases in target groups that include servers or pools. Dynamic enumeration ensures that **jobs run across all databases that exist in the server or pool at the time of job execution**. Re-evaluating the list of databases at runtime is specifically useful for scenarios where pool or server membership changes frequently.
@@ -125,18 +122,17 @@ A target group can include databases in multiple subscriptions, and across multi
125
122
126
123
The following examples show how different target group definitions are dynamically enumerated at the moment of job execution to determine which databases the job will run:
127
124
128
-

125
+
:::image type="content" source="./media/job-automation-overview/targetgroup-examples1.png" alt-text="Diagram of target group examples.":::
129
126
130
127
**Example 1** shows a target group that consists of a list of individual databases. When a job step is executed using this target group, the job step's action will be executed in each of those databases.<br>
131
128
**Example 2** shows a target group that contains a server as a target. When a job step is executed using this target group, the server is dynamically enumerated to determine the list of databases that are currently in the server. The job step's action will be executed in each of those databases.<br>
132
129
**Example 3** shows a similar target group as *Example 2*, but an individual database is specifically excluded. The job step's action will *not* be executed in the excluded database.<br>
133
130
**Example 4** shows a target group that contains an elastic pool as a target. Similar to *Example 2*, the pool will be dynamically enumerated at job run time to determine the list of databases in the pool.
134
131
<br><br>
135
132
136
-

133
+
:::image type="content" source="./media/job-automation-overview/targetgroup-examples2.png" alt-text="Diagram of additional target group examples.":::
137
134
138
-
**Example 5** and **Example 6** show advanced scenarios where servers, elastic pools, and databases can be combined using include and exclude rules.<br>
139
-
**Example 7** shows that the shards in a shard map can also be evaluated at job run time.
135
+
**Example 5** and **Example 6** show advanced scenarios where servers, elastic pools, and databases can be combined using include and exclude rules.
140
136
141
137
> [!NOTE]
142
138
> The Job database itself can be the target of a job. In this scenario, the Job database is treated just like any other target database. The job user must be created and granted sufficient permissions in the Job database, and the database scoped credential for the job user must also exist in the Job database, just like it does for any other target database.
@@ -175,4 +171,4 @@ To ensure resources aren't overburdened when running jobs against databases in a
175
171
176
172
-[How to create and manage elastic jobs](elastic-jobs-overview.md)
177
173
-[Create and manage Elastic Jobs using PowerShell](elastic-jobs-powershell-create.md)
178
-
-[Create and manage Elastic Jobs using Transact-SQL (T-SQL)](elastic-jobs-tsql-create-manage.md)
174
+
-[Create and manage Elastic Jobs using Transact-SQL (T-SQL)](elastic-jobs-tsql-create-manage.md)
Copy file name to clipboardExpand all lines: docs/relational-databases/performance/intelligent-query-processing-feedback.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ description: Learn about query processing feedback features, part of the Intelli
4
4
author: WilliamDAssafMSFT
5
5
ms.author: wiassaf
6
6
ms.reviewer: katsmith
7
-
ms.date: 09/29/2022
7
+
ms.date: 05/02/2023
8
8
ms.service: sql
9
9
ms.subservice: configuration
10
10
ms.topic: conceptual
@@ -339,7 +339,7 @@ Currently in preview for [!INCLUDE[ssSDSfull](../../includes/sssdsfull-md.md)] a
339
339
340
340
Starting with [!INCLUDE[sql-server-2022](../../includes/sssql22-md.md)]), the Cardinality Estimation (CE) feedback is part of the [intelligent query processing family of features](intelligent-query-processing.md) and addresses suboptimal query execution plans for repeating queries when these issues result from incorrect CE model assumptions. This scenario helps with reducing regression risks related to the default CE when upgrading from older versions of the Database Engine.
341
341
342
-
Because no single set of CE models and assumptions can accommodate the vast array of customer workloads and data distributions, CE feedback provides an adaptable solution based on query runtime characteristics. CE feedback will identify and use a model assumption that better fits a given query and data distribution to improve query execution plan quality. Feedback is applied when significant model estimation errors resulting in performance drops are found.
342
+
Because no single set of CE models and assumptions can accommodate the vast array of customer workloads and data distributions, CE feedback provides an adaptable solution based on query runtime characteristics. CE feedback will identify and use a model assumption that better fits a given query and data distribution to improve query execution plan quality. Currently, CE Feedback can identify plan operators where the estimated number of rows and the actual number of rows are very different. Feedback is applied when significant model estimation errors occur, and there is a viable alternate model to try.
343
343
344
344
- Starting with [!INCLUDE [sssql22-md](../../includes/sssql22-md.md)], when Query Store for secondary replicas is enabled, CE feedback is not replica-aware for secondary replicas in availability groups. CE feedback currently only benefits primary replicas. For more information, see [Query Store for secondary replicas](query-store-for-secondary-replicas.md).
345
345
@@ -355,7 +355,7 @@ CE feedback learns which CE model assumptions are optimal over time and then app
355
355
356
356
1. CE feedback **identifies** model-related assumptions and evaluates whether they're accurate for repeating queries.
357
357
358
-
1. If an assumption looks incorrect, a subsequent execution of the same query is tested with a query plan that adjusts the impactful CE model assumption and **verifies** if it helps.
358
+
1. If an assumption looks incorrect, a subsequent execution of the same query is tested with a query plan that adjusts the impactful CE model assumption and **verifies** if it helps. We identify incorrectness by looking at actual vs. estimated rows from plan operators. Not all errors can be corrected by model variants available in CE feedback.
359
359
360
360
1. If it improves plan quality, the old query plan is **replaced** with a query plan that uses the appropriate [USE HINT query hint](../../t-sql/queries/hints-transact-sql-query.md#l-using-use-hint) that adjusts the estimation model, implemented through the [Query Store hint](query-store-hints.md) mechanism.
Copy file name to clipboardExpand all lines: docs/t-sql/statements/create-external-data-source-transact-sql.md
+4-3Lines changed: 4 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ description: CREATE EXTERNAL DATA SOURCE creates an external data source used to
4
4
author: WilliamDAssafMSFT
5
5
ms.author: wiassaf
6
6
ms.reviewer: randolphwest
7
-
ms.date: 03/28/2023
7
+
ms.date: 05/02/2023
8
8
ms.service: sql
9
9
ms.subservice: t-sql
10
10
ms.topic: reference
@@ -1318,8 +1318,9 @@ There are multiple ways to create a shared access signature:
1318
1318
| Read data from multiple files and subfolders | Read and List |
1319
1319
| Use Create External Table as Select (CETAS) | Read, Create, List and Write |
1320
1320
1321
-
- For Azure Blog Storage `Allowed Services`: `Blob` checkbox must be selected to generate the SAS token.
1322
-
- For Azure Data Lake Gen2 `Allowed Services`: `Container` and `Object` checkbox must be selected to generate the SAS token.
1321
+
- For Azure Blob Storage and Azure Data Lake Gen 2:
1322
+
- Allowed services: `Blob` must be selected to generate the SAS token
1323
+
- Allowed resource types: `Container` and `Object` must be selected to generate the SAS token
1323
1324
- When the `TYPE` = `BLOB_STORAGE`, the credential must be created using `SHARED ACCESS SIGNATURE` as the identity. Furthermore, the SAS token should be configured as follows:
1324
1325
- Exclude the leading `?` when configured as the secret.
1325
1326
- Have at least read permission on the file that should be loaded (for example `srt=o&sp=r`).
0 commit comments