【问题标题】:Read file data from aws s3 pyspark从 aws s3 pyspark 读取文件数据
【发布时间】:2018-08-19 16:51:20
【问题描述】:

我在 s3 中放置了一个 json 文件。 s3 url 与下面类似:

https://s3-eu-region-1.amazonaws.com/dir-resources/sample.json

但在 pyspark 中传递时相同,它没有读取文件。

path = "https://s3-eu-region-1.amazonaws.com/dir-resources/sample.json"
df=spark.read.json(path)

但是我可以通过浏览器下载它。

【问题讨论】:

标签: python amazon-web-services amazon-s3 pyspark


【解决方案1】:

假设 dir-resources 是您的存储桶的名称,您应该能够通过以下 URI 访问该文件:

path = "s3://dir-resources/sample.json"

在某些情况下,您可能不得不改用 s3n 协议:

path = "s3n://dir-resources/sample.json"

【讨论】:

  • 区域在这里不相关吗?
  • 在我的情况下它不是 - 我可以从 pyspark 访问 S3 文件,只需存储桶名称。这对你有用吗?
  • 没有。我收到错误Py4JJavaError: An error occurred while calling o32.json. : java.io.IOException: No FileSystem for scheme: s3n at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:26
  • 那么可能是你本地Spark安装的问题。看看这个其他问题:stackoverflow.com/questions/30851244/…
  • 试用并安装。它没有帮助
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-01-13
  • 2020-04-13
  • 1970-01-01
  • 2015-06-16
  • 1970-01-01
  • 2015-08-30
  • 2019-10-27
相关资源
最近更新 更多