简体   繁体   English

使用 Azure 数据工厂 + Azure 集成运行时连接到本地 SQL Server

[英]Use Azure Data Factory + Azure Integration Runtime to connect to on-premises SQL Server

I have a SQL Server instance installed on a Virtual Machine, said VM is connected to an Azure VNet.我在虚拟机上安装了一个 SQL Server 实例,所述 VM 连接到 Azure VNet。 My goal is to consecutively get data out of this SQL Server and store it in an Azure Data Lake.我的目标是连续从此 SQL Server 中获取数据并将其存储在 Azure 数据湖中。

Is it possible to use an Azure Data Factory + Azure Integration Runtime (NOT a self-hosted integration runtime!) to do this?是否可以使用 Azure 数据工厂 + Azure 集成运行时(不是自承载集成运行时!)来执行此操作?

If I create a new Data Factory (including Private Endpoints so the factory gets an IP address of the VNet) and use the standard Integration Runtime "AutoResolveIntegrationRuntime", it's possible to specify a SQL server name and credentials, however, the connection test fails:如果我创建一个新的数据工厂(包括私有端点,以便工厂获得 VNet 的 IP 地址)并使用标准集成运行时“AutoResolveIntegrationRuntime”,则可以指定 SQL 服务器名称和凭据,但是,连接测试失败:

在此处输入图片说明

After installing a self-hosted integration runtime on the VM and using this IR, it appears to work:在 VM 上安装自托管集成运行时并使用此 IR 后,它似乎可以工作:

在此处输入图片说明

What exactly is the integration runtime doing that wouldn't be possible without it?没有它,集成运行时究竟是做什么的? In the end, couldn't the Azure Integration Runtime (hosted on Azure) just open up an ODBC connection, especially since all resources are in the same network?最后,Azure 集成运行时(托管在 Azure 上)不能只是打开一个 ODBC 连接,特别是因为所有资源都在同一个网络中?

We cann't use Azure IR to dispatch the following transform activities against compute resources in on-premises or Azure VNet .我们无法使用 Azure IR 针对本地Azure VNet中的计算资源调度以下转换活动。

Referencing this document .参考本文档 We can conclude that:我们可以得出结论:

  1. An Azure IR can: Azure IR 可以:
  • Run Data Flows in Azure在 Azure 中运行数据流
  • Run copy activity between cloud data stores在云数据存储之间运行复制活动
  • Dispatch the following transform activities in public network .公网发送以下改造活动。
  1. A self-hosted IR is capable of:自托管 IR 能够:
  • Running copy activity between a cloud data stores and a data store in private network.在云数据存储和私有网络中的数据存储之间运行复制活动。
  • Dispatching the following transform activities against compute resources in on-premises or Azure Virtual Network针对本地Azure 虚拟网络中的计算资源调度以下转换活动

Update:更新:
According to the chapter Integration runtime location , we can see the Azure IR is dynamically built.And Auto-resolve Azure IR is running in public network by default.根据集成运行时位置一章,我们可以看到Azure IR是动态构建的,Auto-resolve Azure IR默认运行在公网。 I think it is the reason why you can't connect your sql server located in your Azure VNet via Azure IR.我认为这就是您无法通过 Azure IR 连接位于 Azure VNet 中的 sql 服务器的原因。

We can see the sub type of Azure IR is public as follows:我们可以看到 Azure IR 的子类型是 public 如下: 在此处输入图片说明

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM