如何将Azure机器学习服务的结果导出到Azure SQL DW?

我有三个关于Azure机器学习服务的问题。如果您能给我一些指导或相关参考,我将不胜感激。

(1) 关于机器学习计算的结果,我可以将其导出到Azure的SQL数据仓库吗?格式会是什么样的?我可以将结果与SQL DB中已存在的表进行关联吗?具体的流程是什么?

我已经搜索了相关信息[部署Web服务],并找到了一个类似的问题。然而,对于Web服务与Azure SQL数据仓库之间的关系,我感到有些困惑。

[部署Web服务] https://azure.microsoft.com/en-us/documentation/articles/machine-learning-walkthrough-5-publish-web-service/

(2) 如果我需要从外部源(例如:来自某些外部LPO服务)获取机器学习结果,我如何从外部源连接它?

(3) 如果我需要从外部源连接到Azure SQL数据仓库,只需设置防火墙并提供服务器地址、ID和密码,然后我就可以从外部源连接了吗?

期待您的回复和反馈。


回答:

让我尝试回答您的问题。

(1) 为了将您的机器学习输出写入到Azure SQL数据仓库,您可以使用“导出数据”模块(以前称为“写入器”模块)。选择Azure SQL数据库选项,并输入您的连接字符串和凭据以连接到数据仓库。由于SQL数据仓库底层是SQL DB,它们的连接字符串格式是相同的。我建议您仅在执行批处理时才将数据写入数据仓库。推荐的方法是不将数据流式传输到Azure SQL数据仓库,因为它不是一个事务存储,而是一个分析存储。因此,只有在使用批处理执行来评分您的数据时,才从AzureML将数据写入数据仓库。如果您使用的是请求/响应方法,我建议您将数据写入SQL DB,然后使用Azure数据工厂将数据写入SQL数据仓库(这样甚至可以在仓库不使用时暂停它,从而为您节省费用)。

(2) 您能详细说明一下吗?您到底想做什么?如果您试图将外部数据引入Azure ML,有多种方法可以做到这一点。
       (a) AzureML原生支持通过HTTP加载的RSS数据_feed和Web URL。
       (b) 或者,您可以使用Azure数据工厂或Azure函数将数据加载到Azure Blob存储,然后从那里将数据导入到AzureML(AzureML原生支持连接到Blob存储)

(3) 是的,如果该服务不是Azure中一级支持的PaaS服务,您需要在服务能够与您的数据仓库通信之前,将服务的IP地址列入白名单(这是出于安全原因)。为了以编程方式做到这一点,我会首先在Azure Active Directory中创建一个服务主体,然后使用服务主体的凭据来认证Azure。这是帮助您为外部应用程序创建服务主体的链接:https://azure.microsoft.com/en-us/documentation/articles/resource-group-create-service-principal-portal/

一旦认证,您可以使用此链接帮助您以编程方式添加IP地址:https://azure.microsoft.com/en-us/documentation/articles/sql-database-firewall-configure/#programmatically-managing-firewall-rules有REST API文档可以帮助您开始。为了保持数据库的安全性,我建议您为您的应用程序分配一个静态IP地址,并手动将IP地址列入白名单,从而确保没有未经授权的访问。

希望这对您有帮助!如果您有任何问题,请告诉我!

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注