如何联合R与Hadoop更好处理大数据!

原创 2016年08月29日 11:30:09

 大数据时代,为了满足用R语言处理PB量级数据的需求,聪明的人们发现了一种便捷的方法,即把已有的2种先进技术合二为一——联合R与Hadoop,这样,R便可拥有在分布式文件系统(HDFS)上处理大数据的能力!以下,大圣众包威客平台将提供联合二者的3种方法的具体操作办法。

  一、使用RHadoop——在MapReduce模式下执行R函数

  作为RevolutionAnalytics下的一个开源库,RHadoop与Rhipe的功能相似——也是在MapReduce模式下执行R函数的。例如,想要连接R和HBase,则可以使用rhbase包中的函数,想要一些函数来连接R和分布式文件系统(HDFS),可以选择rdfs包;想要一些让R和Hadoop联合作业的函数,可以考虑rmr包;想在Hadoop中对大数据集进行一些常用的数据整理操作,可以使用plyrmr包;等等。

  以下,将会举出一个使用rmr包中的函数让R与Hadoop联合作业的例子:

  RHadoop需要对R进行一些设置,并且需要Hadoop集群上一些包的支持,而且RHadoop允许开发者在R函数中定义并调用MapReduce函数。这两点上,与马上将要说的第二种方法“使用Rhipe包”是一样的。

  二、使用Rhipe包——允许用户在R中使用MapReduce

  第二种方法是,让Rhipe包允许用户在R中使用MapReduce。值得注意的是,使用此方法,首先R需要被安装在Hadoop集群中的每一个数据节点上,另外,每个节点还要安装ProtocolBuffers,使得Rhipe在每个节点上都可以被使用。如果选择此方法,比较麻烦的是相应的前期准备工作需要先做好。

  以下,将会举出在R中利用Rhipe包应用MapReduce框架的范例:

  三、使用StreamingAPIs——安装和设置均很方便

  这是3种方法中最为简单的一种。StreamingAPI能够将R语言中的函数传入,并在MapReduce模式下运行这些函数,是Hadoop的特点之一。而且,贴心的是,用户并不需要额外开启客户端之类的东西,因为,这些StreamingAPI可以将任意能在MapReduce模式下访问和操作标准I/O接口的R脚本传入Hadoop中。不过,比较麻烦的是,在执行函数方面,StreamingAPIs需要将函数依次map和reduce。

  请看以下例子:

  条条大路通罗马,以上3种方法只是众多方法中比较简单常用的,用户其实也可以使用ApacheHive、ApacheMahout、Segue框架,与其他来自RevolutionAnalytics的商业版R来实现大规模的机器学习。希望以上的教程,能够让你在大数据业务中不断前进。



大数据下基于Tensorflow框架的深度学习示例教程

近几年,信息时代的快速发展产生了海量数据,诞生了无数前沿的大数据技术与应用。在当今大数据时代的产业界,商业决策日益基于数据的分析作出。当数据膨胀到一定规模时,基于机器学习对海量复杂数据的分析更能产生较...
  • xy2953396112
  • xy2953396112
  • 2017年02月08日 16:55
  • 5359

Hadoop大数据处理流程

对于典型的安装而言,Hadoop是整个数据流的中心
  • sn_gis
  • sn_gis
  • 2014年06月10日 18:22
  • 1141

大数据认知(一)之为什么使用Hadoop生态系统处理大数据而不是高性能关系型数据库

为什么使用Hadoop生态系统处理大数据而不是高性能关系型数据库     面对这样的问题,不知道大家会什么样的思考,建议大家先思考一下然后带着自己的答案,在来看看我的看法。当然,这只是我个人的见解并...
  • DNSdns9
  • DNSdns9
  • 2016年09月11日 21:51
  • 512

用R处理大数据集

本文翻译自R in Action的附录G,如果对该书感兴趣,请自行购买或去图书馆阅读。 R会把所有的对象读存入虚拟内存中。对我们大多数用户来说,这种设计可以提高与R相互的速度,但是当分析大数据集时,...
  • mousever
  • mousever
  • 2012年04月12日 14:25
  • 750

大数据Hadoop基础

1简介    Hadoop的系统环境是:Linux或者Unix。Hadoop有两个核心服务模块:DFS和YARN 1.1 DFS(存储)   对于存储Hadoop提供了HDFS分布式文件系统(Hado...
  • fengfeng2861285642
  • fengfeng2861285642
  • 2016年11月03日 23:40
  • 2163

Hadoop大数据平台架构与实践--基础篇

Hadoop大数据平台的前世今生 Google发布了3大技术:MapReduce、BigTable、 GFS。 这3大技术带来的革命性变化: 革命性的变化1: 成本降低,能用PC机,就不用大型机和高...
  • ch717828
  • ch717828
  • 2015年09月23日 18:48
  • 1813

R Hadoop 与大数据

R的应用场景不在于无与伦比的统计学习能力,而在于结构化数据下无与伦比的单位代码产出量。神经网络,决策树等基于结构化数据的算法一行代码搞定,预测又只是一行代码。这样,商业数据库(如包括Oracle,Ne...
  • u014032673
  • u014032673
  • 2014年04月11日 00:09
  • 895

大数据与hadoop前景杂谈

(一家之言,不喜勿喷) 2014年,大数据可谓是互联网用烂的词之一了,动不动就是大数据,大数据预测世界杯之类的。 各方培训机构也纷纷开设hadoop之类的课程,动不动就说是大数据世界已经到来。 本人差...
  • crystal_tyan
  • crystal_tyan
  • 2015年01月07日 13:14
  • 2330

Hadoop和传统大数据处理方式的差别

Hadoop和传统大数据处理方式的差别 本文摘自:Markboo新浪博客 说道Hadoop,就要先讲到大数据。 上个世纪,好远。。。九十年代后,开始,数据开始大量的产生,总之到了快没法弄的...
  • luxialan
  • luxialan
  • 2014年12月25日 17:36
  • 1486

基于Hadoop的大数据处理系统

目前大数据的处理平台以Hadoop为主,Hadoop是一个开源的可运行于大规模集群上的分布式文件系统和和分布式计算的基础框架,提供了对于海量数据存储以及分布式计算的支持。本报告主要包括以下几方面主题:...
  • hijack00
  • hijack00
  • 2016年08月22日 21:51
  • 632
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何联合R与Hadoop更好处理大数据!
举报原因:
原因补充:

(最多只允许输入30个字)