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

07-24 09:50
查看更多