Skip to content

Commit 753bd21

Browse files
authored
Merge pull request #34124 from WilliamDAssafMSFT/20250513-azure-sql-db-data-virtualization
20250513 azure sql db data virtualization
2 parents 6c06d56 + 6b720d7 commit 753bd21

File tree

37 files changed

+3488
-2358
lines changed

37 files changed

+3488
-2358
lines changed

azure-sql/database/data-virtualization-overview.md

Lines changed: 526 additions & 0 deletions
Large diffs are not rendered by default.

azure-sql/database/doc-changes-updates-release-notes-whats-new.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ description: Learn about the new features and documentation improvements for Azu
55
author: WilliamDAssafMSFT
66
ms.author: wiassaf
77
ms.reviewer: mathoma, randolphwest
8-
ms.date: 05/19/2025
8+
ms.date: 06/17/2025
99
ms.service: azure-sql-database
1010
ms.subservice: service-overview
1111
ms.topic: whats-new
@@ -45,6 +45,7 @@ The following table lists the features of Azure SQL Database that are currently
4545
| **Availability metric**| Availability is now a metric in the Azure Monitor metrics. Driven by a variety of user connection failures, you can [monitor and configure alerts on Azure SQL Database Availability](monitoring-metrics-alerts.md#availability-metric). |
4646
| **DATEADD number allows bigint** | For `DATEADD (datepart , number , date )`, number can be expressed as a **bigint**. For more information, see [DATEADD (Transact-SQL)](/sql/t-sql/functions/dateadd-transact-sql).|
4747
| **Database watcher for Azure SQL** |[Database watcher](../database-watcher-overview.md) is a managed monitoring solution for database services in the Azure SQL family. Database watcher collects in-depth workload monitoring data to give you a detailed view of database performance, configuration, and health. Learn more about [database watcher](https://aka.ms/dbwatcher-preview-announcement). |
48+
| **Data Virtualization for Azure SQL Database** |Data virtualization, now in preview in Azure SQL Database, enables you to leverage all the power of Transact-SQL (T-SQL) and seamlessly query external data from Azure Data Lake Storage Gen2 or Azure Blob Storage. For more information, see [Data virtualization with Azure SQL Database (Preview)](data-virtualization-overview.md).|
4849
| **Degrees of Parallelism (DOP) feedback** | [DOP Feedback](/sql/relational-databases/performance/intelligent-query-processing-degree-parallelism-feedback?view=azuresqldb-current&preserve-view=true) is currently available as a limited preview. For more information and how to apply for the preview, see [Announcing Degree of Parallelism Feedback Limited Preview](https://techcommunity.microsoft.com/t5/azure-sql-blog/announcing-degree-of-parallelism-feedback-limited-preview/ba-p/3806924). |
4950
| **Elastic queries** | The [elastic queries](elastic-query-overview.md) feature allows for cross-database queries in Azure SQL Database. |
5051
| **Elastic transactions** | [Elastic transactions](elastic-transactions-overview.md) allow you to execute transactions distributed among cloud databases in Azure SQL Database. |
@@ -95,6 +96,12 @@ The following table lists features of Azure SQL Database that have been made gen
9596

9697
Learn about significant changes to the Azure SQL Database documentation. For previous years, see the [What's new archive](doc-changes-updates-release-notes-whats-new-archive.md).
9798

99+
### June 2025
100+
101+
| Changes | Details |
102+
| --- | --- |
103+
| **Data Virtualization for Azure SQL Database (preview)** |Data virtualization, now in preview in Azure SQL Database, enables you to leverage all the power of Transact-SQL (T-SQL) and seamlessly query external data from Azure Data Lake Storage Gen2 or Azure Blob Storage. For more information, see [Data virtualization with Azure SQL Database (Preview)](data-virtualization-overview.md).|
104+
98105
### May 2025
99106

100107
| Changes | Details |

azure-sql/database/features-comparison.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ Most of the standard SQL language, query processing, and database management fea
2727
- Security features - [Application roles](/sql/relational-databases/security/authentication-access/application-roles), [Dynamic data masking](dynamic-data-masking-overview.md), [Row Level Security](/sql/relational-databases/security/row-level-security), and Advanced Threat Protection (see getting started guides for [SQL Database](threat-detection-configure.md) and [SQL Managed Instance](../managed-instance/threat-detection-configure.md).)
2828
- Multi-model capabilities - [Graph processing](/sql/relational-databases/graphs/sql-graph-overview), [JSON data](json-features.md), [OPENXML](/sql/t-sql/functions/openxml-transact-sql), [Spatial](/sql/relational-databases/spatial/spatial-data-sql-server), [OPENJSON](/sql/t-sql/functions/openjson-transact-sql), and [XML indexes](/sql/t-sql/statements/create-xml-index-transact-sql). For more information, see [Multi-model capabilities of Azure SQL Database and SQL Managed Instance](../multi-model-features.md).
2929

30-
Azure manages your databases and guarantees their high-availability. Some features that might affect high-availability or can't be used in PaaS world have limited functionalities in SQL Database and SQL Managed Instance. These features are described in the tables below.
30+
Azure manages your databases and guarantees their high-availability. Some features that might affect high-availability or can't be used in PaaS world have limited functionalities in Azure SQL Database and Azure SQL Managed Instance.
3131

3232
If you need more details about the differences, you can find them in the separate pages:
3333

@@ -57,6 +57,7 @@ The following table lists the major features of SQL Server and provides informat
5757
| [Credentials](/sql/relational-databases/security/authentication-access/credentials-database-engine) | Yes, but only [database scoped credentials](/sql/t-sql/statements/create-database-scoped-credential-transact-sql). | Yes, but only **Azure Key Vault** and `SHARED ACCESS SIGNATURE` are supported, see [details](../managed-instance/transact-sql-tsql-differences-sql-server.md#credential) |
5858
| [Cross-database/three-part name queries](/sql/relational-databases/linked-servers/linked-servers-database-engine) | No, see [Elastic queries](elastic-query-overview.md) | Yes|
5959
| [Cross-database transactions](/sql/relational-databases/linked-servers/linked-servers-database-engine) | No | Yes, within the instance. See [Linked server differences](../managed-instance/transact-sql-tsql-differences-sql-server.md#linked-servers) for cross-instance queries. |
60+
| [Data virtualization](data-virtualization-overview.md) | Yes, for CSV, Delta 1.0, and Parquet. See [Data Virtualization for Azure SQL Database](data-virtualization-overview.md). You can also query data in the files placed on Azure Blob Storage using `OPENROWSET` function. In SQL Server, this feature is known as PolyBase. | Yes, for Azure Data Lake Storage (ADLS) and Azure Blob Storage as data source. See [Data virtualization with Azure SQL Managed Instance](../managed-instance/data-virtualization-overview.md) for more details. In SQL Server, this feature is known as PolyBase.|
6061
| [Database mail - DbMail](/sql/relational-databases/database-mail/database-mail) | No | Yes |
6162
| [Database mirroring](/sql/database-engine/database-mirroring/database-mirroring-sql-server) (deprecated) | No | No |
6263
| [Database mirroring in Microsoft Fabric](/fabric/database/mirrored-database/overview) | Yes | Yes |
@@ -91,11 +92,10 @@ The following table lists the major features of SQL Server and provides informat
9192
| [Minimal logging in bulk import](/sql/relational-databases/import-export/prerequisites-for-minimal-logging-in-bulk-import) | No, only Full Recovery model is supported. | No, only Full Recovery model is supported. |
9293
| [Modifying system data](/sql/relational-databases/databases/system-databases) | No | Yes |
9394
| [OLE Automation](/sql/database-engine/configure-windows/ole-automation-procedures-server-configuration-option) | No | No |
94-
| [OPENDATASOURCE](/sql/t-sql/functions/opendatasource-transact-sql)|No|Yes, only to SQL Database, SQL Managed Instance and SQL Server. See [T-SQL differences](../managed-instance/transact-sql-tsql-differences-sql-server.md)|
95-
| [OPENQUERY](/sql/t-sql/functions/openquery-transact-sql)|No|Yes, only to SQL Database, SQL Managed Instance and SQL Server. See [T-SQL differences](../managed-instance/transact-sql-tsql-differences-sql-server.md)|
95+
| [OPENDATASOURCE](/sql/t-sql/functions/opendatasource-transact-sql)|No|Yes, only to SQL Database, SQL Managed Instance, and SQL Server. See [T-SQL differences](../managed-instance/transact-sql-tsql-differences-sql-server.md)|
96+
| [OPENQUERY](/sql/t-sql/functions/openquery-transact-sql)|No|Yes, only to SQL Database, SQL Managed Instance, and SQL Server. See [T-SQL differences](../managed-instance/transact-sql-tsql-differences-sql-server.md)|
9697
| [OPENROWSET](/sql/t-sql/functions/openrowset-transact-sql)|Yes, only to import from Azure Blob storage. |Yes, only to SQL Database, SQL Managed Instance and SQL Server, and to import from Azure Blob storage. See [T-SQL differences](../managed-instance/transact-sql-tsql-differences-sql-server.md)|
9798
| [Operators](/sql/t-sql/language-elements/operators-transact-sql) | Most, see individual operators |Yes, see [T-SQL differences](../managed-instance/transact-sql-tsql-differences-sql-server.md) |
98-
| [Polybase](/sql/relational-databases/polybase/polybase-guide) | No. You can query data in the files placed on Azure Blob Storage using `OPENROWSET` function or use [an external table that references a serverless SQL pool in Synapse Analytics](https://devblogs.microsoft.com/azure-sql/read-azure-storage-files-using-synapse-sql-external-tables/). | Yes, for Azure Data Lake Storage (ADLS) and Azure Blob Storage as data source. See [Data virtualization with Azure SQL Managed Instance](../managed-instance/data-virtualization-overview.md) for more details. |
9999
| [Query Notifications](/sql/relational-databases/native-client/features/working-with-query-notifications) | No | Yes |
100100
| [Query Store](/sql/relational-databases/performance/monitoring-performance-by-using-the-query-store) | Yes | Yes |
101101
| [Query Store for secondary replicas](/sql/relational-databases/performance/query-store-for-secondary-replicas) | No, the Query Store for secondary replicas feature isn't available for Azure SQL Database. Currently, the Query Store on the secondary replica contains information about workloads from the primary replica. | No, the Query Store for secondary replicas feature isn't available for Azure SQL Managed Instance. Currently, the Query Store on the secondary replica contains information about workloads from the primary replica.|
@@ -111,7 +111,7 @@ The following table lists the major features of SQL Server and provides informat
111111
| [Set statements](/sql/t-sql/statements/set-statements-transact-sql) | Most, see individual statements | Yes, see [T-SQL differences](../managed-instance/transact-sql-tsql-differences-sql-server.md)|
112112
| [SQL Server Agent](/sql/ssms/agent/sql-server-agent) | No, see [Elastic jobs](elastic-jobs-overview.md) | Yes, see [SQL Server Agent differences](../managed-instance/transact-sql-tsql-differences-sql-server.md#sql-server-agent) |
113113
| [SQL Server Auditing](/sql/relational-databases/security/auditing/sql-server-audit-database-engine) | No, see [Auditing for Azure SQL Database](auditing-overview.md) | Yes, see [Auditing differences](../managed-instance/transact-sql-tsql-differences-sql-server.md#auditing) |
114-
| [Synapse Link for SQL](/azure/synapse-analytics/synapse-link/sql-synapse-link-overview) | Yes | No |
114+
| [Azure Synapse Link for SQL](/azure/synapse-analytics/synapse-link/sql-synapse-link-overview) | Yes | No |
115115
| [System functions](/sql/relational-databases/system-functions/system-functions-for-transact-sql) | Most, see individual functions | Yes, see [Stored procedures, functions, triggers differences](../managed-instance/transact-sql-tsql-differences-sql-server.md#stored-procedures-functions-and-triggers) |
116116
| [System stored procedures](/sql/relational-databases/system-stored-procedures/system-stored-procedures-transact-sql) | Some, see individual stored procedures | Yes, see [Stored procedures, functions, triggers differences](../managed-instance/transact-sql-tsql-differences-sql-server.md#stored-procedures-functions-and-triggers) |
117117
| [System tables](/sql/relational-databases/system-tables/system-tables-transact-sql) | Some, see individual tables | Yes, see [T-SQL differences](../managed-instance/transact-sql-tsql-differences-sql-server.md) |

azure-sql/database/sql-database-paas-overview.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: "Get an introduction to SQL Database: technical details and capabil
44
author: WilliamDAssafMSFT
55
ms.author: wiassaf
66
ms.reviewer: mathoma
7-
ms.date: 04/04/2025
7+
ms.date: 06/17/2025
88
ms.service: azure-sql-database
99
ms.subservice: service-overview
1010
ms.topic: overview
@@ -265,5 +265,5 @@ Azure SQL Database backups are managed automatically. No one has direct access t
265265
- [Azure CLI samples for SQL Database](az-cli-script-samples-content-guide.md)
266266
- [Azure PowerShell samples for SQL Database](powershell-script-content-guide.md)
267267

268-
- For information about new capabilities as they're announced, see [Azure Updates](https://azure.microsoft.com/updates/).
268+
- For information about new capabilities as they're announced, see [What's new in Azure SQL Database?](doc-changes-updates-release-notes-whats-new.md)
269269
- See the [Azure SQL Database blog](https://azure.microsoft.com/blog/topics/database), where SQL Server product team members blog about SQL Database news and features.

azure-sql/managed-instance/data-virtualization-overview.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: Data virtualization
33
titleSuffix: Azure SQL Managed Instance
4-
description: Learn about data virtualization capabilities of Azure SQL Managed Instance
4+
description: Learn about data virtualization capabilities of Azure SQL Managed Instance.
55
author: MladjoA
66
ms.author: mlandzic
77
ms.reviewer: mathoma, wiassaf, nzagorac
@@ -15,6 +15,10 @@ ms.topic: conceptual
1515

1616
[!INCLUDE [appliesto-sqlmi](../includes/appliesto-sqlmi.md)]
1717

18+
> [!div class="op_single_selector"]
19+
> * [Azure SQL Database](../database/data-virtualization-overview.md?view=azuresql-db&preserve-view=true)
20+
> * [Azure SQL Managed Instance](data-virtualization-overview.md?view=azuresql-mi&preserve-view=true)
21+
1822
The data virtualization feature of Azure SQL Managed Instance allows you to execute Transact-SQL (T-SQL) queries on files storing data in common data formats in Azure Data Lake Storage Gen2 or Azure Blob Storage, and combine it with locally stored relational data using joins. This way you can transparently access external data (in read-only mode) while keeping it in its original format and location - also known as data virtualization.
1923

2024
## Overview

docs/relational-databases/import-export/bulk-import-and-export-of-data-sql-server.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,10 +53,10 @@ monikerRange: ">=aps-pdw-2016 || =azuresqldb-current || =azure-sqldw-latest || >
5353
5454
## <a name="FFs"></a> Format files
5555

56-
The [bcp utility](../../tools/bcp-utility.md), [BULK INSERT](../../t-sql/statements/bulk-insert-transact-sql.md), and [INSERT ... SELECT * FROM OPENROWSET(BULK...)](../../t-sql/functions/openrowset-transact-sql.md) all support the use of a specialized *format file* that stores format information for each field in a data file. A format file might also contain information about the corresponding [!INCLUDE[ssNoVersion](../../includes/ssnoversion-md.md)] table. The format file can be used to provide all the format information that is required to bulk export data from and bulk import data to an instance of [!INCLUDE[ssNoVersion](../../includes/ssnoversion-md.md)].
56+
The [bcp utility](../../tools/bcp-utility.md), [BULK INSERT](../../t-sql/statements/bulk-insert-transact-sql.md), and [INSERT ... SELECT * FROM OPENROWSET(BULK...)](../../t-sql/functions/openrowset-bulk-transact-sql.md) all support the use of a specialized *format file* that stores format information for each field in a data file. A format file might also contain information about the corresponding [!INCLUDE[ssNoVersion](../../includes/ssnoversion-md.md)] table. The format file can be used to provide all the format information that is required to bulk export data from and bulk import data to an instance of [!INCLUDE[ssNoVersion](../../includes/ssnoversion-md.md)].
5757

5858
> [!IMPORTANT]
59-
> You cannot use BCP to import data from or export data to Azure Blob Storage into Azure SQL Database. Use [BULK INSERT](../../t-sql/statements/bulk-insert-transact-sql.md) or [OPENROWSET](../../t-sql/functions/openrowset-transact-sql.md) to import from or export to Azure Blob Storage.
59+
> You cannot use BCP to import data from or export data to Azure Blob Storage into Azure SQL Database. Use [BULK INSERT](../../t-sql/statements/bulk-insert-transact-sql.md) or [OPENROWSET BULK](../../t-sql/functions/openrowset-bulk-transact-sql.md) to import from or export to Azure Blob Storage.
6060
6161
Format files provide a flexible way to interpret data as it is in the data file during import, and also to format data in the data file during export. This flexibility eliminates the need to write special-purpose code to interpret the data or reformat the data to the specific requirements of [!INCLUDE[ssNoVersion](../../includes/ssnoversion-md.md)] or the external application. For example, if you are bulk exporting data to be loaded into an application that requires comma-separated values, you can use a format file to insert commas as field terminators in the exported data.
6262

0 commit comments

Comments
 (0)