Scala 读取火花时出错

Scala 读取火花时出错,scala,hadoop,amazon-web-services,amazon-s3,apache-spark,Scala,Hadoop,Amazon Web Services,Amazon S3,Apache Spark,我在尝试用spark从s3读取文件时遇到异常。错误和代码如下所示。该文件夹由hadoop输出的许多名为part-00000 part-00001 etc的文件组成。它们的文件大小范围从0kb到几gb 16/04/07 15:38:58信息本机3文件系统:打开密钥 “标题匹配214/1.0/bypublicdemand/part-00000”用于阅读 位置“0”16/04/07 15:38:58错误执行者:任务0.0中出现异常 在0.0阶段(TID 0)org.apache.hadoop.fs.s

我在尝试用spark从s3读取文件时遇到异常。错误和代码如下所示。该文件夹由hadoop输出的许多名为part-00000 part-00001 etc的文件组成。它们的文件大小范围从0kb到几gb

16/04/07 15:38:58信息本机3文件系统:打开密钥 “标题匹配214/1.0/bypublicdemand/part-00000”用于阅读 位置“0”16/04/07 15:38:58错误执行者:任务0.0中出现异常 在0.0阶段(TID 0)org.apache.hadoop.fs.s3.s3异常: org.jets3t.service.S3ServiceException:的S3获取失败 “/titlematching214%2F1.0%2ByPublicDemand%2Part-00000”XML错误 消息:InvalidRange 请求的范围不正确 可满足字节=0-01AED523DF401F17ECBYUH1h3WkC7/g8/EFE/YyHbzxoNTpRBiX6QMy2RXHur17lYTZXd7XxOWivmqIpu0F7Xx5zdWns=


可能您可以直接从
s3
读取数据集

    val datset = "s3n://altvissparkoutput/titlematching214/1.0/*/*"
    val ebayRaw = sqlConext.read.json(datset)

请您尝试一下这个
sc.hadoopConfiguration.set(“mapreduce.input.fileinputformat.input.dir.recursive”,“true”)
。我还相信s3n协议将文件大小限制为5GB。完全不确定这是否是问题所在,但是…没有区别,相同的错误。你能修复这个错误吗?不,如果我修复了它,我会把解决方案放在这里。我最终只是解决了这个问题
    val datset = "s3n://altvissparkoutput/titlematching214/1.0/*/*"
    val ebayRaw = sqlConext.read.json(datset)