使用s3n://使用spark-submit

时间:2016-06-15 02:25:13

标签: scala apache-spark

我编写了一个使用spark-submit在群集上运行的Spark应用。这是我build.sbt的一部分。

libraryDependencies += "org.apache.spark" %% "spark-core" % "1.6.1" % "provided" exclude("asm", "asm")
libraryDependencies += "org.apache.spark" %% "spark-sql" % "1.6.1" % "provided"

asm被排除在外,因为我正在使用另一个依赖于其不同版本的库。 Spark中的asm依赖关系似乎来自Hadoop的一个家属,我没有使用该功能。

现在的问题是,使用此设置,saveToTextFile("s3n://my-bucket/dir/file")会抛出java.io.IOException: No FileSystem for scheme: s3n

为什么会这样?不应该spark-submit提供Hadoop依赖吗?

我尝试了一些事情:

  • 退出"provided"
  • 通过jar和hadoop-aws以及spark.executor.extraClassPathspark.driver.extraClassPath放在类路径上。这需要对其所有传递依赖关系做同样的事情,这可能很痛苦。

两者都不起作用。有更好的方法吗?

我使用预先构建的spark-1.6.1-bin-hadoop2.6

0 个答案:

没有答案