我在一台EC2机器上沿着Hadoop 2.6运行Spark 1.4。 我配置了HADOOP_CLASSPATH和core-site.xml来访问我的S3文件。
虽然Hadoop能够访问我的存储桶中的文件,但是spark-shell失败却惨遭抛出以下错误:
java.lang.RuntimeException: java.lang.ClassNotFoundException: Class org.apache.hadoop.fs.s3native.NativeS3FileSystem not found
我尝试将aws jar添加到类路径中,但没有任何帮助。
任何人都知道这可能来自哪里?
谢谢!
答案 0 :(得分:1)
您需要在类路径中添加两个额外的jar文件
例如。在你的火花提交 --jar = AWS-java的SDK-1.7.4.jar:Hadoop的AWS-2.6.0.jar
或者您可以添加到您的配置中: 例如。 spark.executor.extraClassPath& spark.driver.extraClassPath
另外,尝试使用“s3a://”这是Hadoop中较新的S3库