作者rlearner (rlearner)
看板R_Language
标题[问题] r+hadoop中rmr/rhdfs问题
时间Tue Dec 27 22:44:49 2016
[目的]
在VM上建立三台虚拟机
并建立rhadoop
执行简单的rmr范例
[问题简叙]=============================================================
在VM虚拟器上建立hadoop环境建三台机子,
master,node1,node2
装好了hadoop(hadoop可以运作)
但是装R时遇到了无法library:rmr和rhdfs的问题
且无法install.packages:rJava套作
上叙的环境我装了两次
第一次(环境一)不知怎麽的就成功install.packges:
rJava的套,但第二次重装(环境二)却怎麽样也无法成功下载
rJava,若rJava无法,rmr跟rhdfs也用不了了!!
[环境一]((提外话~之前莫明成功???)))=====================================
怎麽装有点忘了,但跟第二次差不多
感觉还是有点问题...(下有影片连结)
https://www.youtube.com/watch?v=ByAisA_dQxI&feature=youtu.be
[环境二](!!!!!主要问题!!!!!!现在安装失败)))=============================
[安装步骤]
以下是我安装的方法:(文长)(含安装步骤影片)
https://www.youtube.com/watch?v=QTHfV_xYr8A&t=145s
没剪辑7:04-14:30可跳过~下载很久@@
启动hadoop
cd ~/hadoop && sbin/start-all.sh
------------------------------------------------
sudo vim .bashrc
sudo vim /etc/environment
sudo vim /etc/profile
在以上三个档中新增路径
export JAVA_HOME=/usr/lib/jvm/jdk/
export HADOOP_CMD=/home/hduser/hadoop/bin/hadoop
export HADOOP_HOME=/home/hduser/hadoop
export
HADOOP_STREAMING=/home/hduser/hadoop/share/hadoop/tools/lib/hadoop-streaming-2.7.3.jar
重启三个档案
. /etc/environment
. /etc/profile
source .bashrc
-----------------------------------------------------------------------------
三个机子都要安装R
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install r-base
sudo apt-get install r-base r-base-dev
java 设订------------------
echo $JAVA_HOME
sudo JAVA_HOME=/usr/lib/jvm/jdk/ R CMD javareconf
in the R--------------------
进入R
sudo R
这里有错误,无法下载rJava(!!!!!问题所在)(注1)
install.packages(c("codetools","R","Rcpp","RJSONIO","bitops","digest","functional","stringr","plyr","reshape2","rJava","caTools"))
下载rmr 和 rhdfs
wget --no-check-certificate
https://raw.github.com/RevolutionAnalytics/rmr2/3.3.0/build/rmr2_3.3.0.tar.gz
wget --no-check-certificate
https://raw.github.com/RevolutionAnalytics/rhdfs/master/build/rhdfs_1.0.8.tar.gz
在R中----------------------
第二次安装出错 (注2)
install.packages("/home/hduser/rhdfs_1.0.8.tar.gz", repos=NULL, type="source")
install.packages("/home/hduser/rmr2_2.2.2.tar.gz", repos = NULL,
type="source")
Sys.setenv(HADOOP_HOME="/home/hduser/hadoop")
Sys.setenv(HADOOP_PREFIX="/home/hduser/hadoop")
Sys.setenv(HADOOP_CMD="/home/hduser/hadoop/bin/hadoop")
Sys.setenv(HADOOP_STREAMING="/home/hduser/hadoop/share/hadoop/tools/lib/hadoop-streaming-2.7.3.jar")
Sys.getenv("HADOOP_CMD")
後面就不用看了...因为全不行@@
------------------------------------
无法下载rJava後,後面步骤都出错了QQ
[错误息讯]=============================================================
(安装环境二)
https://www.youtube.com/watch?v=QTHfV_xYr8A&t=145s
7:04-14:30可跳过~下载很久@@
(注1)14:30
在install.packages(c("codetools","R","Rcpp","rJava"...後失败,错误讯息:
...waring messages:
1: package 'R' is not available (for R version 3.2.3)
2: Ln install.packages(c(......) 'rJava' had non-zero exit status
(注2)16:38
install.packages("/home/hduser/rhdfs_1.0.8.tar.gz", repos=NULL, type="source")
install.packages("/home/hduser/rmr2_2.2.2.tar.gz", repos = NULL,
type="source")
两个都出现:
would you like to use a personal library instead?
我只能选y
怀疑这里也出了问题
因为RDM网站有提到library要设定给所有用户(其实不太懂意思..@@)
http://www.rdatamining.com/big-data/r-hadoop-setup-guide
在7.1 Install relevant R packages的地方
原文:
RHadoop packages are dependent on above packages,
which should be installed for all users, instead of in personal library.
....文长以下略
但我不知到在install.packages那些套件前
要怎麽给所有使用者用(这里的意思应该是三台机子吧@@
[版本]=============================================================
(三台机子都是)
ubuntu 16.04.1
hadoop-2.7.3
R 3.2.3
rmr2 3.3.0
rhdfs 1.0.8
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.128.101.143
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/R_Language/M.1482849895.A.A0C.html
1F:→ celestialgod: 可以问有什麽需求一定要用rhdfs跟rmr吗? 12/27 22:53
2F:→ celestialgod: 不然我个人觉得用sparklyr就很够了 12/27 22:54
4F:→ celestialgod: 不知道有没有帮助 可以参考看看 12/27 22:55
5F:→ celestialgod: 不过我那篇用英文写,我英文烂,不懂可以在留言QQ 12/27 22:55
6F:→ rlearner: 好,谢谢你我试试,能问一下spark+R跟rhadoop有什麽不一样 12/27 23:04
7F:→ rlearner: 吗? @@ 太感谢你了 12/27 23:05
8F:→ celestialgod: 你知道hadoop跟spark的差异吗? 12/27 23:12
9F:→ celestialgod: 知道这点大概就清楚了吧 12/27 23:12
10F:→ rlearner: 两个似乎都是做分散式计算的@@ 12/27 23:17
11F:→ obarisk: job给yarm分配,其实不用每台都装r 12/27 23:17
12F:→ rlearner: 好的 谢谢提醒@@ 12/27 23:20
13F:推 Edster: 卡在rjava的话,有些机率是要去手动更新java, 至於x64或x 12/27 23:30
14F:→ Edster: 86的java, 看你的R决定. 另外, java跟rjava版本要对应, 12/27 23:30
15F:→ Edster: 其中一个太新都不行。 12/27 23:30
16F:→ celestialgod: java那时候我记得我是装oracle jdk 12/27 23:31
17F:→ celestialgod: 然後都要跑R cmd javareconf,openjdk要移除掉 12/27 23:32
18F:→ celestialgod: 我不确定现在openjdk是否work正常 12/27 23:32
19F:→ celestialgod: 然後all users这个的话 就建议用sudo开R装套件 12/27 23:33
20F:→ celestialgod: 就会直接安装到r安装目录下的library 12/27 23:33
21F:→ celestialgod: 不然我是直接把R library给775权限,全user都可以装 12/27 23:33
22F:→ rlearner: 谢谢大大们,我先消化一下@@ 12/27 23:51
23F:→ rlearner: 请问给775权限是什麽意思?是sudo su root吗? 12/28 00:00
24F:→ howard40116: 775代表更改权限为rwxrwxr-x 12/28 01:38
25F:→ rlearner: 感谢^^ 12/29 17:42