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
[!INCLUDE [SQL Server Azure SQL Database](../../includes/applies-to-version/sql-asdb.md)]
18
+
[!INCLUDE [SQL Server Azure SQL Database Azure SQL Managed Instance](../../includes/applies-to-version/sql-asdb-asdbmi.md)]
19
19
20
20
The intelligent query processing (IQP) feature family includes features with broad impact that improve the performance of existing workloads with minimal implementation effort to adopt.
21
21
@@ -34,8 +34,8 @@ ALTER DATABASE [WideWorldImportersDW] SET COMPATIBILITY_LEVEL = 150;
34
34
35
35
The following table details all intelligent query processing features, along with any requirement they have for database compatibility level.
36
36
37
-
|**IQP Feature**|**Supported in Azure SQL Database**|**Supported in SQL Server**|**Description**|
38
-
| --- | --- | ---|--- |
37
+
|**IQP Feature**|**Supported in [!INCLUDE[ssSDSfull](../../includes/sssdsfull-md.md)] and [!INCLUDE[ssSDSMIfull](../../includes/sssdsmifull-md.md)]**|**Supported in [!INCLUDE[ssNoVersion](../../includes/ssnoversion-md.md)]**|**Description**|
|[Adaptive Joins (Batch Mode)](#batch-mode-adaptive-joins)| Yes, under compatibility level 140| Yes, starting in [!INCLUDE[ssSQL17](../../includes/sssql17-md.md)] under compatibility level 140|Adaptive joins dynamically select a join type during runtime based on actual input rows.|
40
40
|[Approximate Count Distinct](#approximate-query-processing)| Yes| Yes, starting in [!INCLUDE[sql-server-2019](../../includes/sssqlv15-md.md)]|Provide approximate COUNT DISTINCT for big data scenarios with the benefit of high performance and a low memory footprint. |
41
41
|[Batch Mode on Rowstore](#batch-mode-on-rowstore)| Yes, under compatibility level 150| Yes, starting in [!INCLUDE[sql-server-2019](../../includes/sssqlv15-md.md)] under compatibility level 150|Provide batch mode for CPU-bound relational DW workloads without requiring columnstore indexes. |
@@ -386,7 +386,6 @@ Even if a query does not access any tables with columnstore indexes, the query p
386
386
1. An initial check of table sizes, operators used, and estimated cardinalities in the input query.
387
387
2. Additional checkpoints, as the optimizer discovers new, cheaper plans for the query. If these alternative plans don't make significant use of batch mode, the optimizer stops exploring batch mode alternatives.
388
388
389
-
390
389
If batch mode on rowstore is used, you see the actual run mode as **batch mode** in the query plan. The scan operator uses batch mode for on-disk heaps and B-tree indexes. This batch mode scan can evaluate batch mode bitmap filters. You might also see other batch mode operators in the plan. Examples are hash joins, hash-based aggregates, sorts, window aggregates, filters, concatenation, and compute scalar operators.
0 commit comments