【发布时间】:2015-08-31 07:22:32
【问题描述】:
尝试使用 spark-shell 读取位于 S3 中的文件:
scala> val myRdd = sc.textFile("s3n://myBucket/myFile1.log")
lyrics: org.apache.spark.rdd.RDD[String] = s3n://myBucket/myFile1.log MappedRDD[55] at textFile at <console>:12
scala> myRdd.count
java.io.IOException: No FileSystem for scheme: s3n
at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:2607)
at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2614)
at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:91)
... etc ...
IOException: No FileSystem for scheme: s3n 发生错误:
- 开发机器上的 Spark 1.31 或 1.40(无 Hadoop 库)
- 从集成了 Spark 1.2.1 开箱即用的 Hortonworks Sandbox HDP v2.2.4 (Hadoop 2.60) 运行
- 使用 s3:// 或 s3n:// 方案
这个错误的原因是什么?缺少依赖、缺少配置或误用sc.textFile()?
或者这可能是由于一个影响特定于 Hadoop 2.60 的 Spark 构建的错误,正如 post 似乎暗示的那样。我将尝试使用 Spark for Hadoop 2.40 看看这是否能解决问题。
【问题讨论】:
标签: java scala apache-spark rdd hortonworks-data-platform