S3 存储桶名称被添加到 S3 端点

Kup*_*amy 1 scala amazon-s3 apache-spark

当尝试使用 Scala 从 S3 存储桶访问文件时,存储桶名称会添加到端点的前面,并且端点变得错误且无法访问。

图书馆:

libraryDependencies += "org.apache.spark" % "spark-core_2.11" % "2.0.0"
libraryDependencies += "org.apache.spark" % "spark-sql_2.11" % "2.0.0"
libraryDependencies += "org.apache.hadoop" % "hadoop-aws" % "2.8.0"
Run Code Online (Sandbox Code Playgroud)

代码:

sc.hadoopConfiguration.set("fs.s3a.endpoint", "[endpoint]")
sc.textFile("s3a://[bucket_name]/testa.txt")
Run Code Online (Sandbox Code Playgroud)

Kup*_*amy 5

启用路径样式 URL可以解决该问题,因为在安装 S3 的服务器上没有完成虚拟主机配置。fs.s3a.path.style.access( docs ) 可以设置为 true 以启用路径样式 URL。