java.io.IOException:方案:maprfs没有文件系统。将maprfs jar添加到bash_profile无效

时间:2019-03-18 23:02:21

标签: java scala apache-spark hadoop mapr

通过spark-shell运行以下命令时,出现以下错误。我还在bash_profile中添加了maprfs jar,如下所示。我尝试了类似文章中的大多数解决方案,但无法解决此问题。

scala> val input = sc.textFile("maprfs:///user/uber/list/brand.txt")
input: org.apache.spark.rdd.RDD[String] = maprfs:///user/uber/list/brand.txt MapPartitionsRDD[1] at textFile at <console>:24

scala> input.count()
java.io.IOException: No FileSystem for scheme: maprfs
  at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:2660)
  at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2667)
  at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:94)
  at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2703)
  at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2685)
  at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:373)
  at org.apache.hadoop.fs.Path.getFileSystem(Path.java:295)
  at org.apache.hadoop.mapred.FileInputFormat.singleThreadedListStatus(FileInputFormat.java:258)
  at org.apache.hadoop.mapred.FileInputFormat.listStatus(FileInputFormat.java:229)
  at org.apache.hadoop.mapred.FileInputFormat.getSplits(FileInputFormat.java:315)
  at org.apache.spark.rdd.HadoopRDD.getPartitions(HadoopRDD.scala:204)
  at org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:253)
  at org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:251)
  at scala.Option.getOrElse(Option.scala:121)
  at org.apache.spark.rdd.RDD.partitions(RDD.scala:251)
  at org.apache.spark.rdd.MapPartitionsRDD.getPartitions(MapPartitionsRDD.scala:49)
  at org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:253)
  at org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:251)
  at scala.Option.getOrElse(Option.scala:121)
  at org.apache.spark.rdd.RDD.partitions(RDD.scala:251)
  at org.apache.spark.SparkContext.runJob(SparkContext.scala:2126)
  at org.apache.spark.rdd.RDD.count(RDD.scala:1168)
  ... 49 elided

bash_profile:

导出MAPR_HOME = / opt / mapr / hadoop / hadoop-2.7.0 / share / hadoop / common / lib / maprfs-5.1.0-mapr.jar 导出PATH = $ MAPR_HOME:$ PATH

2 个答案:

答案 0 :(得分:0)

如果您查看Spark架构,将会看到您拥有驱动程序和执行程序。当像您一样设置环境时,它将影响您的驱动程序,而不是执行程序。

查看at this question。这应该对您有帮助。

答案 1 :(得分:0)

这似乎是您使用的Spark版本在类路径中没有各种MapR jar。由于您不提供有关所使用软件版本的任何信息,因此很难告诉您。

您尝试过MapR提供的版本吗?