R分析语言向用户提供了哪些功能,如何在SQL Server 2016和2017中使用R? 阅读本文,你将了解更多有关微软R技术的问题和细节。 将R集成到SQL Server 2016是一个大新闻,其中涉及到很多细节,如果你对开源编程语言和分析环境如何适应微软的SQL Server技术不是很了解,那是很正常的。 除了R本身之外,现在还有Microsoft R Open,R Client 和 R Server,以及SQL Server R Services。这是一个技术环,很难找的哪个是起点,哪个是终点。
微软并没有止步不前。SQL Server 2017,最初被称为vNext,将Python语言……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
R分析语言
微软于2015年收购了R供应商Revolution Analytics公司,该交易为SQL Server 2016整合R语音提供了基础。R编程语言始于学术界,但现已稳步扎根于企业实际应用中。许多领域的数据科学家都在使用R进行统计分析、数据挖掘、机器学习和高级图形学。该语言包括一组复杂的函数,支持线性和非线性建模,以及集群、分类和其他数据操作形式。 除了能很好地适应先进的数据统计,R的开源性质和GNU通用公共许可证(GPL)下的免费可用性也为其崛起提供了基础。该语言由一个庞大且活跃的开发者、贡献者、数据科学家群体以及全球其他用户提供支持。 尽管它很受欢迎,但它仍然面临一些挑战。将语言应用于大型数据集是非常困难的,因为它依赖于单线程处理,不同于新的大型数据工具,这些工具能利用并行处理技术,能够同时利用多个CPU。 另一个限制R语音的因素是,R语音是一个运行在内存中的工具,所以在任何给定的时间内,它都被限制在主机系统的可用内存中。在生产环境中实现基于R的应用程序也很困难。因此,微软提出了R Open,它自己的R版本,解决了一些原始语言的局限性。Microsoft R Open
R Open是一个增强的R语音发行版,在GPL下也可以自由使用。而且由于基于标准R语音,它能够与现有的R脚本、包和应用程序完全兼容。 但是,R Open还包括一些旨在改进性能和资源使用的多线程数学库。在R Open中类似于矩阵求逆、乘法和分解等操作可以利用主机系统的并行处理能力。 R Open适用于Windows和Linux平台,这是使用R Client, R Server 和SQL Server R Services的一个要求,不过你也可以将它与这些产品分开使用。例如,您可以在R Studio中使用R Open,R studio是一个用于构建R应用程序的开源集成开发环境。不过,只有在于微软自己的R产品一起使用时,R Open才能获得最佳性能。Microsoft R Client
R Client是一个免费的开发工具,基于R Open R构建。数据科学家可以使用这个工具来开发和测试预测模型并执行高性能分析,合并开源的R包等。 和R Open一样,R Client可以在Windows和Linux平台上使用。每个版本都支持ScaleR,一个专有的计算和分析引擎,可以将大型数据集划分为较小的数据集,以并行的形式分发和分析。ScaleR使得R Client能够支持高级多线程处理和远程计算。 即便如此,R Client也有它自己的局限性。与R一样,它仅限于运行在本地内存中,因此与项目相关的所有数据都必须符合本地系统可用的数据标准。此外,无论计算机的性能如何,多线程处理只局限于两个线程。幸运的是,数据科学家可以在R Client中构建分析模型,然后将计算操作交给给to R Server 或者SQL Server R Services,以利用它们更健壮的处理能力。Microsoft R Server
R Server是一个企业级的分析平台,支持大数据分析、预测建模和机器学习。与R Client的具有业务对应关系,它解决了后者的许多限制。例如,R Server可以充分利用ScaleR技术的功能,并且可以在更大的范围内处理更大的工作负载。 此外,R Server支持分块处理,它将数据分解成更小的单元,从而更容易处理数据,以便在内存中运行。你可以在客户机-服务器架构上实现R Server,使用身份验证支持远程访问连接。它可以在Windows和Linux服务器上托管和管理并行和分布式的R工作负载,以及Hadoop和Apache Spark集群等。 R Server是独立于SQL Server和SQL Server R Services的独立产品,它被直接构建到了SQL Server 2016中。这导致了一些关于RServer如何适配SQL Server的混淆,部分原因是由于你可以使用SQL Server安装介质来安装R Server的Windows版本。此外,即使它是一个单独的产品,你还需要一个SQL Server 2016 Enterprise Edition许可证才能在Windows上使用R服务器,这进一步造成了混淆的产生。 如果不需要与SQL Server集成,则应该考虑R Server,但它需要使用企业工具提供的处理、分发和可伸缩性功能。如果您需要这些功能,并且需要SQL Server和R集成,那么你必须转向使用SQL Server R Services。SQL Server R Services
Microsoft文档通常将R Services视为数据库内建服务,将R Server视为独立于数据库的服务。数据库标签也是这么定义的。使用R Services,微软已经将R集成到SQL Server数据库引擎中,改进了R运行时和其他SQL Server特性之间的安全通信。 为了在SQL Server 2016中部署实现R,你必须将R Services作为SQL Server安装的一部分,选择它作为其他数据库引擎特性。在安装过程中,SQL Server安装扩展到数据库引擎以支持R执行。配置操作还将安装R Open和ScaleR库。 数据科学家可以连接到R Services,以运行R代码或部署R Client生成的R工具到SQL Server 2016来进行处理。R代码也可以嵌入到用户定义的存储过程中,然后通过应用程序调用来执行基于R的计算。 在SQL Server 2016的大多数版本中都可以使用R服务,但是轻量级Express Edition基本版除外。不过,性能和可伸缩性在Standard Edition中是有限的。如果你想充分利用R服务提供的功能,你需要使用企业版。 这同样适用于SQL Server 2017,尽管在R Services在这个版本中被重新命名为Machine Learning Services,目前在Community Technology Preview 2.0版本中可以使用它。随着Python支持作为更新的一部分,SQL Server的分析王国会变得更加有趣。翻译
TechTarget特邀编辑。北京邮电大学计算机科学与技术专业硕士。熟悉软件开发流程,对系统管理,网络配置,数据库应用等方面有深入的理解和实践经验。现就职于IBM(中国)投资有限公司,从事IBM服务器相关软件的开发工作。业余时间喜欢游泳登山,爱健身,喜欢结交朋友。
相关推荐
-
Linux版SQL Server即将发布 Windows数据库增加HA特性
新发布的预告版SQL Server软件有一系列社区技术预览版本,其中有一些通用的可用性功能尚未支持,预计将会在今年发布。
-
Linux支持的引入 推动了SQL Server 2016集成服务的发展
随着SQL Server的不断发展,集成服务也在发生相应的变化。在最新的SSIS更新中,增加Linux支持和SQL Server 2016升级向导。
-
利用Microsoft SQL Server Reporting Services 2016的移动特性
SQL Server Reporting Services有许多新特性,其中一些特性对SQL Server 2016数据可视化进行了优化,同时增加了可视化的形式。
-
SQL Server 2016实时操作分析 你值得拥有
分析有助于提高商业运营的效率,SQL Server 2016允许用户在事务数据库的操作型数据上完成实时分析。