SQL Server 2016将支持R编程语言

R编程语言最早出现于1993年,而在2000年,它的第一个符合产品质量的版本R-1.0发布了。自那之后,R就成为了统计分析方面的业界标准,围绕着这门语言出现了大量的图形界面工具,以及可用于各种IDE及文本编辑器的包。

Revolution Analytics是一家成立了9年的公司,他们为R语言提供商业级的支持服务。但就在最近,微软收购了这家公司,作为他们向大数据及机器学习领域迈出的第一步。这次收购的结果是在即将问世的SQL Server 2016中将提供对R语言的支持。

SQL Server R Services的主要优点在于数据的本地化。通过在数据库中直接运行R,免除了将数据从数据库服务器搬到R服务器的过程中通常会产生的性能开销。它的另一个优点在于能够将整个操作封装为一个存储过程,因此无需通过某个外部应用服务器对操作过程进行控制。

调用这一过程的方法是使用sp_execute_external_script,这个存储过程允许你通过标准的查询将数据从SQL Server传递至R服务。而在R脚本执行完毕之后,可以返回一个R变量,通常来说是一个数据帧。

在sp_execute_external_script中有一个令人感兴趣的特性,即@language这个参数。虽然它目前仅限于使用R语言,但从文档上看,未来似乎可以通过一种插件模型以支持其他脚本语言。

可使用任意一种通过xxx注册的受支持语言。language的类型是sysname。

在进行复杂的数据处理时,R语言比起常规的SQL语句具有许多优势。Casimir Saternos在他的文章“超越SQL:使用R语言进行数据处理”中提出了一些示例,例如如何简化表的PIVOT和UNPIVOT操作。Casimir在文章的总结中这样说道:

从定义上来说,SQL是一种查询语言。它的长处在于从数据库中获取数据,在许多场景中,这是唯一一种从数据库中取出数据的方法,因而显得至关重要。

但是,在进行数据转换时,SQL又有可能变得非常笨重。SQL本身是一种非常灵活的语言,因此也支持以大量不同的方式进行数据的转换,但这些转换往往需要使用冗长的、晦涩的、难以维护的SQL语句。而通过R语言所带的大量的包,可以以一种简洁的、清晰的、简单的方法执行相同的操作。付出一定时间去学习这些包是完全值得的,这让我们能够充分利用SQL与R语言包中最好的方面,通过一系列易于理解与掌握的步骤实现数据的分析。

SQL Server 2016当前的最新版本是第3个社区技术预览版。

本文转自d1net(转载)

时间: 2024-11-14 12:00:48

SQL Server 2016将支持R编程语言的相关文章

SQL Server 2016 列存储技术做实时分析

title: SQL Server 2016 列存储技术做实时分析 author: 风移 摘要 数据分析指导商业行为的价值越来越高,使得用户对数据实时分析的要求变得越来越高.使用传统RDBMS数据分析架构,遇到了前所未有的挑战,高延迟.数据处理流程复杂和成本过高.这篇文章讨论如何利用SQL Server 2016列存储技术做实时数据分析,解决传统分析方法的痛点. 传统RDBMS数据分析 在过去很长一段时间,企业均选择传统的关系型数据库做OLAP和Data Warehouse工作.这一节讨论传统R

SQL Server 2016测评

SQL Server 2016带来了扩展数据库到Azure.Hadoop查询.内置的R分析.更好的安全性和更高的性能. 微软公司将SQL Server 2016称为SQL Server数据库27年发展演变史上"最大的飞跃".正如我们将看到的,尽管围绕着SQL Server 2016数据库存在着过度的炒作,但其也的确为广大的企业组织机构提供了许多相当吸引人的新功能,包括内置的R分析.外部的Hadoop查询.Azure数据存储以及强大的管理和数据安全功能. 此外,SQL Server 20

SQL Server 2016 Alwayson新增功能图文详解

概述 SQLServer2016发布版本到现在已有一年多的时间了,目前最新的稳定版本是SP1版本.接下来就开看看2016在Alwyson上做了哪些改进,记得之前我在写2014Alwayson的时候提到过几个需要改进的问题在2016上已经做了改进. 一.自动故障转移副本数量 在2016之前的版本自动故障转移副本最多只能配置2个副本,在2016上变成了3个. 说明:自动故障转移增加到三个副本影响并不是很大不是非常的重要,多增加一个故障转移副本也意味着你的作业也需要多维护一个副本.重要程度(一般).

阿里云数据库推出SQL Server 2016 单机基础版本

   即日起至2017年10月31日,购买1年以内任意时长的包年包月订单,第1个月0折,包年更有75折优惠,详情请看.     在推出SQL Server 2012后,阿里云推出2016版本,目前支持单机版.       在数据库管理领域中,有几大重要的核心问题需要去解决:       1. 数据库服务器资源管理:如何能够快速标准化部署数据库实例,数据库文件统一目录管理,规范化运维可减少大量错误发生.同时根据业务需要快速伸缩数据库硬件资源,是所有DBA追求的目标,因为业务发展一般无法容忍长时间等

MSSQL-应用案例-SQL Server 2016基于内存优化表的列存储索引分析Web Access Log

问题引入 在日常的网站运维工作中,我们需要对网站客户端访问情况做统计.汇总.分析和报表展示,以数据来全面掌控网站运营和访问情况.当不可预知的意外情况发生时,我们可以快速发现问题以及采取相应的措施.比如:当网站受到黑客攻击时的流量陡增,又或者是网站某个资源发生意外抛异常等情况. 在提供Web服务的服务器上,比如IIS.Apache都存在访问日志记录,这篇是文章是以SQL Server 2016基于内存优化表的列存储索引来分析Apache Web Access Log为例,讲解分析网站访问情况,因此

Sql Server 2016新功能之Row-Level Security(值得关注)_MsSql

Sql Server 2016 有一个新功能叫 Row-Level Security ,大概意思是行版本的安全策略(原来我是个英语渣_(:з」∠)_) 直接上例子.这个功能相当通过对表添加一个函数作为过滤规则,使得拥有不同条件的用户(或者登录名) 之类的,只能获取到符合条件的数据.相对来说是提供了那么一点的便捷性,当然也增加了数据的安全性,相当于每个用户连接进来只能看到 符合规则的数据(当然,这里的用户只是一个举例.其实是可以通过编写过滤函数来实现的) 举个例子 有三个用户 Sales1 ,Sa

SQL Server ->> 深入探讨SQL Server 2016新特性之 --- Temporal Table(历史表)

原文:SQL Server ->> 深入探讨SQL Server 2016新特性之 --- Temporal Table(历史表) 作为SQL Server 2016(CTP3.x)的另一个新特性,Temporal Table(历史表)记录了表历史上任何时间点所有的数据改动.Temporal Table其实早在ANSI SQL 2011就提出了,而SAP HANA, DB2和Oracle早已在它们的产品中加入/实现了这一特性.所以说微软其实是落后了几个竞争对手.既然在CTP3.0中加入了,相信

SQL Server 2016 CTP2.3 的关键特性总结_MsSql

SQL Server 2016带来全新突破性的  in-memory性能和分析功能来实现关键任务处理.全面的安全特性 -Always Encrypted 技术可以帮助保护您的数据 数据库方面的增强 Row Level Security已经支持In-memory OLTP 表.用户现在可以对内存优化表实施row-level security策略. 另外SCHEMABINDING.predicate 函数和内联表值函数都要包含NATIVE_COMPILATION编译选项. 使用NATIVE_COMP

SQL Server 2016 无域群集配置 AlwaysON 可用性组图文教程

windows server 2016 与 sql server 2016 都可用允许不许要加入AD ,管理方面省了挺多操作,也不用担心域控出现问题影响各服务器了. 本测试版本: window server 2016 datacenter + sql server 2016 ctp IP规划: 主机名 IP 说明 ad 192.168.2.2 域服务器(kk.com)windows xp Server131 192.168.2.131 节点 Server132 192.168.2.132 节点