写点什么

SQL Server 2016 将支持 R 编程语言

  • 2016 年 2 月 14 日
  • 本文字数:972 字

    阅读完需:约 3 分钟

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 个社区技术预览版。

查看英文原文: R for SQL Server 2016

2016 年 2 月 14 日 18:002351
用户头像

发布了 428 篇内容, 共 158.7 次阅读, 收获喜欢 29 次。

关注
AI

评论

发布
暂无评论
发现更多内容

中国计算机软件开发合同纠纷分析报告(2019-2)

朱又生

大数据 项目管理 计算机软件开发合同纠纷 风险管理

中国计算机软件开发合同纠纷分析报告(2019-3)

朱又生

大数据 项目管理 计算机软件开发合同纠纷 风险管理

SpreadJS 纯前端表格控件应用案例:生产采购管理软件

Geek_Willie

第十周总结

晨光

week10 学习总结

任小龙

只加两行代码,为什么用了整整两天时间?

程序员生活志

编程 bug

SpreadJS 纯前端表格控件应用案例:医疗行业智能报表系统

Geek_Willie

娱乐至穷

北柯

学习 互联网 娱乐 抖音

Oracle常用命令

阡陌r

什么是死锁?如何解决死锁?

奈学教育

什么是死锁?如何解决死锁?

古月木易

死锁

RushPlayer“一键下马”系列之-JavPlayer

flow

软件规模扩张与其组织粒度的进化

superman

中台 微服务 服务化改造

anyRTC 4.0 以心铸造,以梦相承

anyRTC开发者

anyRTC 4.0 官网升级

Django如何编写自定义manage.py 命令

BigYoung

Python django manage.py

数据库的那些事

数据社

数据库 大数据

如何通过electron构建桌面跨平台音视频应用

ZEGO即构

音视频 Electron RTC

微服务

石刻掌纹

架构师训练营第十周作业

一剑

第十周作业

晨光

即大数据后-贵阳能否成为区块链的机遇之城?

CECBC

区块链 大数据 贵阳

Flink 支持的重启策略有哪些

奈学教育

flink

django-admin和manage.py用法

BigYoung

Python django django-admin manage.py

低/零代码的认知误区有哪些?

代码制造者

编程语言 低代码 零代码 信息化 开发应用

央行清算总中心与三家银行签署区块链福费廷交易平台合作协议

CECBC

区块链技术 人民银行

35岁腾讯员工被裁员感叹:北京一套房,存款700多万,失业好焦虑

程序员生活志

程序员

Flink 支持的重启策略有哪些

古月木易

flink

Kubernetes 网络通讯模型解析

ninetyhe

快速学习秘诀:费曼学习法

池建强

学习

架构师训练营第10周

大丁💸💵💴💶🚀🐟

华章科技好书5折优惠,满99再减10元

华章IT

Python AI 数字化转型 Java 25 周年 计算机科学丛书

SQL Server 2016将支持R编程语言_AI_Jonathan Allen_InfoQ精选文章