Запросы между базами данных в Azure Synapse, базе данных SQL Azure, управляемом экземпляре Azure и локальном сервере SQL

Мы изучаем варианты переноса наших локальных SQL-серверов в Azure и пытаемся понять, сможем ли мы выполнять кросс-запросы к базе данных, если у нас есть данные, находящиеся в нескольких технологиях баз данных как в Azure (в частности, в Azure Managed Instance, Azure Synapse Analytics, База данных SQL Azure) и в локальном экземпляре SQL Server.

Мы не можем найти много информации о том, поддерживаются ли они, и были бы признательны, если бы кто-нибудь из вас мог помочь в заполнении приведенной ниже таблицы:

TO-> Azure SQL DB Azure Managed Instance Azure Synapse Analytics On Premise SQL Server
Azure SQL DB Supported through Elastic Search Query (Ref: https://azure.microsoft.com/en-us/blog/querying-remote-databases-in-azure-sql-db/) ? Azure Data Share supports sharing of both tables and views from Azure SQL Database and Azure Synapse Analytics (formerly Azure SQL DW), and sharing of tables from Azure Synapse Analytics (workspace) dedicated SQL pool. Sharing from Azure Synapse Analytics (workspace) serverless SQL pool is not currently supported. (Ref: https://docs.microsoft.com/en-us/azure/data-share/how-to-share-from-sql) Azure SQL database doesn't support the linked server property so you wont be able to access on prem tables in Azure SQL database and the elastic query in Azure SQL database is to query tables between 2 Azure SQL databases and not On prem. (Ref: https://docs.microsoft.com/en-us/answers/questions/289105/how-can-i-query-on-premise-sql-server-database-fro.html)
Azure Managed Instance ? ? ? Available through the use of Linked Servers (Ref: http://thewindowsupdate.com/2019/03/22/lesson-learned-81-how-to-create-a-linked-server-from-azure-sql-managed-instance-to-sql-server-onpremise-or-azure-vm/)
Azure Synapse Analytics ? ? ? ?
On Premise SQL Server ? ? ? Using a linked server you can query data in an Azure SQL database from an on premised SQL Server (Ref: https://docs.microsoft.com/en-us/answers/questions/289105/how-can-i-query-on-premise-sql-server-database-fro.html)

comment
Привет @vavacious! Если мой ответ вам полезен, надеюсь, вы сможете принять его как ответ (щелкните галочку рядом с ответом, чтобы переключить его с серого на заполненный). Это может быть полезно для других членов сообщества. Спасибо.   -  person Leon Yue    schedule 22.03.2021


Ответы (2)


Базе данных Azure SQL требуется эластичный запрос. для выполнения перекрестного запроса к базе данных. Он не поддерживает создание связанного сервера.

Управляемый экземпляр Azure имеет почти ту же функцию, что и локальный сервер SQL, вы можете использовать USE statement для выполнения перекрестного запроса к базе данных. То же самое и с локальным SQL Server.

Azure Synapse Analytics также не поддерживает перекрестный запрос к базе данных.

Исходя из моих знаний и опыта, я добавлю ✔ или X в таблицу, чтобы выразить поддержку или отсутствие поддержки. пожалуйста, исх .:

TO-> Azure SQL DB Azure Managed Instance Azure Synapse Analytics On Premise SQL Server
Azure SQL DB Supported through Elastic Search Query (Ref: https://azure.microsoft.com/en-us/blog/querying-remote-databases-in-azure-sql-db/) X, not supported Azure Data Share supports sharing of both tables and views from Azure SQL Database and Azure Synapse Analytics (formerly Azure SQL DW), and sharing of tables from Azure Synapse Analytics (workspace) dedicated SQL pool. Sharing from Azure Synapse Analytics (workspace) serverless SQL pool is not currently supported. (Ref: https://docs.microsoft.com/en-us/azure/data-share/how-to-share-from-sql) Azure SQL database doesn't support the linked server property so you wont be able to access on prem tables in Azure SQL database and the elastic query in Azure SQL database is to query tables between 2 Azure SQL databases and not On prem. (Ref: https://docs.microsoft.com/en-us/answers/questions/289105/how-can-i-query-on-premise-sql-server-database-fro.html)
Azure Managed Instance X, not supported ✔,same with local SQL Server X, not supported Available through the use of Linked Servers (Ref: http://thewindowsupdate.com/2019/03/22/lesson-learned-81-how-to-create-a-linked-server-from-azure-sql-managed-instance-to-sql-server-onpremise-or-azure-vm/)
Azure Synapse Analytics Azure Data Share X, not supported X, not supported X, not supported
On Premise SQL Server ✔,linked server ✔,linked server X, not supported Using a linked server you can query data in an Azure SQL database from an on premised SQL Server (Ref: https://docs.microsoft.com/en-us/answers/questions/289105/how-can-i-query-on-premise-sql-server-database-fro.html)

Выберите подходящую версию базы данных Azure в соответствии с вашим запросом.

HTH.

person Leon Yue    schedule 22.03.2021

AFAIK не существует фасада кросс-БД, который предоставляет единый интерфейс для одновременного общения с несколькими базами данных. Будь то локально / в облаке или SQL-Server / Synapse / MySQL / ...

Существуют индивидуальные способы и средства, с помощью которых вы можете получить доступ к единой базе данных из любого места. Например. доступ к локальной БД из кода в облаке или доступ к облачной БД из кода, запущенного на локальных серверах. Список доступных интерфейсов зависит от каждой комбинации источника и цели.

person Kashyap    schedule 12.03.2021
comment
Спасибо за ответ. Если мы специально посмотрим на подключение Azure Synapse к локальному серверу SQL, могут ли происходить перекрестные запросы к базе данных или нужно ли копировать данные в озеро данных перед запросом? - person vavacious; 16.03.2021
comment
@vavacious, что вы пытаетесь использовать? Рабочее пространство Synapse (для анализа данных в локальной БД)? или Synapse Serverless / Предназначен для хранения ваших данных и последующего их анализа с помощью рабочей области Synapse? - person Kashyap; 16.03.2021