一直以来,我们在提到使用R进行数据分析、数据挖掘都会使用RODBC、RJDBC、DBI等相关的包来调用数据库,比如我前面罗嗦的一片文章数据挖掘之R与SQL,但实际基本上各大数据库厂商已有相应的R语言企业级应用产品,这些厂商包括Oracle、IBM、Teradata、Sybase、SAP。
Oracle R Enterprise
Oracle R Enterprise 是针对于大数据市场下,用于处理日益丰富的数据。这款产品有以下优势:
企业级的 R 应用
- 允许DBA将R语言模型产品化
- 可以将R模型整合到BI仪表盘(BIEE)
- 统计学家可以直接使用数据库,而不需去了解具体 SQL
- 减少 Oracle 数据库外的数据管理成本
减少高昂 SAS 的使用费用
- 可完全替代 SAS base,节省 SAS 的使用年费
- 分析人员可以直接面对数据库进行个性化分析,而不需要数据导出
- 超过 100 内置的统计函数可以同 Base SAS 兼容
大数据分析的 in-database 支持
- 高性能的代数运算在 R 中整合Intel’s Math Kernel Library
- R语句的执行的使用并行化运算方式(包括扩展包)
- 高度整合了R语言快速开发、数据库并行计算的优势
众所周知,R 语言将数据置于内存,数据处理能力有限,Oracle R Enterprise 将此瓶颈完全打开,并将性能提升到更高级别。
IBM Netezza
Netezza 并不隶属于IBM原有产品线,而是针对于“一体机”市场,于 2010 年 17 亿美元的价格收购获得, 用以扩张其用于销售、市场营销和产品开发的商务分析产品。Netezza对R语言的支持,主要通过Revolution合作, 通过调用R Enterprise from Revolution® Analytics平台来实现。Netezza的特点可以总结为:可扩展的、高性能的、大规模内置并行分析平台。
注:除了 R 语言外,Netezza 还支持 SAS、PASW 等分析软件
IBM InfoSphere BigInsights
IBM BigInsights 同样也整合了R语言资源,提供了Map-Reduce架构的R语言并行化计算环境,包括了大数据集的文本挖掘和机器学习算法。 BigInsights可以将构建的R语言模型发布在Hadoop平台上(同IBM Netezza一样,通过调用R Enterprise from Revolution® Analytics),极大的满足企业级数据需求。
SAP HANA
借助 SAP BusinessObjects Predictive Analysis 平台,分析师们既可以使用内置的预测性算法来构建模型,也可以整合并使用流行的开源数据统计分析语言——R语言。并且,依托 SAP HAHA平台可以提供 in-database 分析。
Teradata
Teradata提供了免费的 teradataR 包,用于在R环境下连接Teradata数据库、创建数据、条用in-database分析函数。
- 避免了从 Tetadata 到 R 之间的数据移动,有效提高了数据运算性能
- 针对于大数据的分析任务,使用 Teradata 的强大并行计算的能力
- 允许在R控制台操作
- 将常用的执行任务嵌入到数据库中执行
- R 和 TetadataR 都是免费的
Sybase RAP
Sybase RAP主要是针对于金融市场的实时分析,其中 RAPStore 组件提供了内置分析函数,包括时间序列分析函数、OLAP 函数、R 语言整合函数以及用户自定义函数,适用于大数据环境。
同时,还可以在R语言环境下通过 RJDBC 访问 Sybase RAP,进行数据预处理,避免在 R 中数据清洗占用大量内存。
全文完,请期待 R + Hadoop