从安装到部署,本文将介绍一些使用SQL Server 2017 Python进行编程的基本细节。 随着SQL Server 2016的发布,Microsoft引入了R服务,该服务以附加组件的形式将R脚本集成到SQL Server数据库引擎中。微软通过增加对Python编程语言的支持,进一步扩展了SQL Server 2017的分析服务,它允许用户能够在SQL Server数据库中创建和运行Python脚本。 作为Python集成更新的一部分,微软将R服务重命名为机器学习服务。
SQL Server Python是在最初的R服务基础上构建的,这样做的目的是利用已经存在的可扩展性框架,可以更为方便的……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
在SQL Server 2017 中安装Python
要安装SQL Server Python实例,您必须在安装过程中选择数据库引擎服务选项(Database Engine Services)下面的机器学习服务(Machine Learning Services)选项。在启用机器学习服务时,还必须指定Python语言。您也可以选择R语言,但是Microsoft建议每个实例只安装一种语言。 在选择了必要的选项之后,SQL Server将会设置安装一些特定于Python和机器学习服务的组件,包括Python 3.5运行时和解释器,它们将独立于其他SQL Server组件运行。 SQL Server安装程序还安装了一些常见的数据科学应用程序的Python包,以及Python的Anaconda发行版,它可以使用Anaconda 4.3分支中的Anaconda 3安装程序进行安装。Anaconda是一个免费的数据科学平台,它提供了管理Python包和整个Python环境的工具。 另一个安装的组件是SQL Server Trusted Launchpad,它是一个Windows服务,它管理Python运行时和SQL Server实例之间的通信。它是在SQL Server 2016中引入的,用于支持R服务,在SQL Server 2017中也提供了对Python的支持。 SQL Server安装程序还安装BxlServer可执行文件,用于管理数据传输,以及SQL Satellite扩展API,它与BxlServer一起工作,以执行读取输入数据、写入输出数据和处理错误等任务。使用SQL Server Python架构
在安装更新的组件之后,你可以通过调用sp_execute_external_script系统存储过程来运行SQL Server中的Python脚本,该脚本同样用于运行R脚本。主要区别在于,在调用存储过程时,您必须指定Python语言,而不是指定R,应用程序开发人员只需要调用存储过程,或者是包含它的父进程,来运行Python脚本并返回已处理的数据。 Python的运行时环境与数据库引擎是彼此独立的,这有助于最大化性能,并避免对数据库操作产生任何影响。当您运行一个脚本时,SQL Server会联系可信的Launchpad服务,然后启动Python35进程。BxlServer与Python运行时一起工作,以控制如何交换数据,如何使用SQL Satellite将状态和结果传递给SQL Server等。 为了实现组件间的通信,SQL Server使用命名管道来实现BxlServer和数据库引擎之间的的内部数据传输,此外它还使用TCP / IP协议连接SQL Satellite。外部数据科学客户端可以使用开放数据库连接连接到SQL Server。 为了能够在SQL服务器上运行Python脚本,用户或应用程序必须有一个SQL Server登录账户或Windows用户帐户,其中任何一个都必须与一个主实体相关联,该主体应具有访问相关数据库所需的安全权限。当用户尝试运行脚本时,数据库引擎将检索该用户的登录或帐户的安全上下文,并管理对可存储对象的访问。 数据库管理员可以控制Python运行时在SQL服务器实例上的行为,以及哪些用户有权限运行Python脚本。 添加运行Python脚本的功能对于微软来说是一个重要的里程碑,它显示了公司在融合外部技术方面的进展。Python在大量的应用程序中得到了广泛的应用。只要这个特性得到用户的认可,那么微软和其用户群体都将从SQL Server Python中获得巨大的好处。翻译
TechTarget特邀编辑。北京邮电大学计算机科学与技术专业硕士。熟悉软件开发流程,对系统管理,网络配置,数据库应用等方面有深入的理解和实践经验。现就职于IBM(中国)投资有限公司,从事IBM服务器相关软件的开发工作。业余时间喜欢游泳登山,爱健身,喜欢结交朋友。
相关推荐
-
应对SQL Server 2008终止支持的四个策略
微软将于2019年7月9日终止对SQL Server 2008和SQL Server 2008 R2的扩展支持 […]
-
剖析SQL Server 在Linux上的高可用性
在Linux上, SQL Server 2017提供了更大的灵活性,但是在高可用性和失效备援方面,Linux与Windows相比,在使用方式上有一些限制和改变。
-
SQL Server 2017新特性 总有一款适合你
SQL Server 2017有许多新特性是非常值得我们升级并体验的。最主要的新特性就是SQL Server支持Linux。
-
Linux版SQL Server即将发布 Windows数据库增加HA特性
新发布的预告版SQL Server软件有一系列社区技术预览版本,其中有一些通用的可用性功能尚未支持,预计将会在今年发布。