Sys.setenv(HADOOP_CMD="/home/hduser/hadoop-2.7.7/bin/hadoop")
Sys.setenv(JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el7_5.x86_64")
library(rhdfs)
hdfs.init()
我已经运行了上面的代码通过R连接hdfs,但是出现了以下错误。请帮助我。
Error in .jcall("RJavaTools", "Ljava/lang/Object;", "invokeMethod", cl, :
java.io.IOException: No FileSystem for scheme: hdfs
最佳答案
看来您的Hadoop配置文件没有被加载
通过R做到这一点的一种方法是设置
Sys.setenv(HADOOP_HOME="/home/hduser/hadoop-2.7.7")
Sys.setenv(HADOOP_CONF_DIR="/home/hduser/hadoop-2.7.7/conf")
否则,您应该在OS级别上设置这些变量,以读取所有进程,例如
/etc/profile
或.bashrc