gpt4 book ai didi

java - R 2.15.1;成熟 0.73; CDH 5 - java.io.IOException : No FileSystem for scheme: hdfs

转载 作者:行者123 更新时间:2023-12-01 13:09:24 28 4
gpt4 key购买 nike

我在 Debian 7 上安装了 CDH5。我在单节点伪分布式模式下使用 Hadoop 和 MapReduce1。

我想在 R 中运行 Rhip。下载后我已经安装了它:

sudo R CMD INSTALL Rhipe_0.73.1.tar.gz

然后我导出环境变量:

export HADOOP_CONF_DIR="/etc/hadoop/conf"
export HADOOP="/usr/lib/hadoop"
export HADOOP_BIN=/usr/lib/hadoop/bin
export HADOOP_HOME=/usr/lib/hadoop

运行 R 后:

> library(Rhipe)
------------------------------------------------
| Please call rhinit() else RHIPE will not run |
------------------------------------------------
> rhinit()
Rhipe: Using Rhipe.jar file
Initializing Rhipe v0.73
14/04/11 12:21:08 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
java.io.IOException: No FileSystem for scheme: hdfs
at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:2385)
at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2392)
at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:89)
at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2431)
at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2413)
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:368)
at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:167)
at org.godhuli.rhipe.PersonalServer.run(PersonalServer.java:321)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:616)
at RJavaTools.invokeMethod(RJavaTools.java:386)
Error in .jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl, :
java.lang.NullPointerException
>

我错过了什么?

系统中使用的Java:

There are 2 choices for the alternative java (providing /usr/bin/java).

Selection Path Priority Status
------------------------------------------------------------
0 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 auto mode
* 1 /usr/lib/jvm/j2sdk1.7-oracle/jre/bin/java 317 manual mode
2 /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java 1061 manual mode

最佳答案

rhinit() 函数正在尝试加载 HADOOP_HOME 变量中指定的目录中存在的 hadoop jar。由于此函数仅将 HADOOP_HOME 中的那些 jar 加载到类路径,因此您必须将所有 hadoop 特定 jar 保留在该目录本身中。

如果你查看 rhipe 包中的 zzz.R 文件,你就可以理解这一点。

关于java - R 2.15.1;成熟 0.73; CDH 5 - java.io.IOException : No FileSystem for scheme: hdfs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23010542/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com