你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure SQL 托管实例中的机器学习服务

机器学习服务是 Azure SQL 托管实例的一项功能,可提供支持 Python 和 R 脚本的数据库内机器学习。 该功能包括用于高性能预测分析和机器学习的 Microsoft Python 以及 R 包。 关系数据可以通过存储过程、包含 Python 或 R 语句的 T-SQL 脚本或包含 T-SQL 的 Python 或 R 代码在脚本中使用。

什么是机器学习服务?

使用 Azure SQL 托管实例中的机器学习服务,你可以在数据库中执行 Python 和 R 脚本。 可以使用它来准备和清理数据、执行特征工程以及在数据库中定型、评估和部署机器学习模型。 此功能在数据所在的位置运行脚本,无需通过网络将数据传输到其他服务器。

使用 Azure SQL 托管实例中支持 R/Python 的机器学习服务,你可以:

  • 运行 R 和 Python 脚本以准备数据和处理常规用途的数据 - 现在可以将 R/Python 脚本引入数据所在的 Azure SQL 托管实例,而无需将数据移出到其他服务器来运行 R 和 Python 脚本。 无需移动数据,避免发生延迟、安全性和合规性相关的问题。

  • 在数据库中训练机器学习模型 - 可以使用任何开源算法来训练模型。 可以轻松地将训练扩展到整个数据集,而不用依赖于数据库中提取的示例数据集。

  • 将模型和脚本部署到存储过程的生产环境中 - 只需将脚本和已训练的模型嵌入 T-SQL 存储过程,便可对它们进行操作。 连接到 Azure SQL 托管实例的应用只需调用存储过程,便可受益于这些模型中的预测和智能功能。 此外,还可以使用本机 T-SQL PREDICT 函数来操作模型,以便在高度并发的实时评分方案中进行快速评分。

Python 和 R 的基本分发包含在机器学习服务中。 除了用于 Python 的 revoscalepymicrosoftml Microsoft 包,以及用于 R 的 RevoScaleRMicrosoftMLolapRsqlrutils 外,还可以安装和使用开源包和框架,如 PyTorch、TensorFlow 和 scikit-learn。

如何启用机器学习服务

利用以下 SQL 命令的扩展性,你可以启用 Azure SQL 托管实例中的机器学习服务(SQL 托管实例将重启,并在几秒钟内不可用):

sp_configure 'external scripts enabled', 1;
RECONFIGURE WITH OVERRIDE;

有关此命令如何影响 SQL 托管实例资源的详细信息,请参阅资源调控

在故障转移组中启用机器学习服务

故障转移组中,系统数据库不会复制到辅助实例(有关详细信息,请参阅故障转移组的限制)。

如果正在使用的 SQL 托管实例属于故障转移组,请执行以下操作:

  • 在故障转移组的每个实例上运行 sp_configureRECONFIGURE 命令,以启用机器学习服务。

  • 在用户数据库而不是 master 数据库上安装 R/Python 库。

后续步骤