我们想通过R分析Hadoop上的数据。有个开源项目完成这些点击打开链接
初始化java环境:
R CMD javareconf
之后进入R:
R
可能需要安装下列依赖包:
install.packages("rJava")
install.packages("iterators")
install.packages("itertools")
install.packages("digest")
install.packages("RJSONIO")
install.packages("functional")
install.packages("bitops")
install.packages("caTools")
install.packages("plyr")
install.packages("stringr")
install.packages("Rcpp")
install.packages("reshape2")
上面的安装方式为在线安装,自动下载依赖包。
如果是离线,则需要下载包放到指定目录,然后使用下列Shell命令逐个安装;
R CMD INSTALL pkg-tar/rmr2_3.1.2.tar.gz
上面命令安装rmr包,rhdfs和rhase的包类似(值得注意的是,这三个包有较多依赖包,按这三个包之前要先成功安装其他依赖包,根据提示安装即可。)。
完成后,可以通过R命令测试:
library(rhdfs);
hdfs.init();
hdfs.ls("/");
则上面可以浏览HDFS集群上的数据。
(要记得配置下列两个环境变量):
export HADOOP_CMD=/home/dcc/hadoop-2.2.0/bin/hadoop
export HADOOP_STREAMING=/home/dcc/hadoop-2.2.0/share/hadoop/tools/lib/hadoop-streaming-2.2.0.jar
上面指定了需用用到的hadoop命令,以及用到的与HDFS进行数据交互的包(由此可知R是使用streming的方式与HDFS集群进行数据交互)。