2017-04-07 123 views
0

当试图使用Scala从S3存储桶存取文件时,存储桶名称被添加到端点的前端,并且端点变得错误并且不可访问。S3存储桶名称被添加到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" 

代码:

sc.hadoopConfiguration.set("fs.s3a.endpoint", "[endpoint]") 
sc.textFile("s3a://[bucket_name]/testa.txt") 
+0

你的“端点”不是's3 [-region] .amazonaws.com'? –

+0

不,这是一个自定义端点,而不是* .amazonaws.com。 – Melon

+0

那么,实际上不是S3,那么S3的兼容性呢? –

回答

0

启用path style URLs解决问题,因为有在安装S3服务器上做任何虚拟主机的配置。 fs.s3a.path.style.accessdocs)可以设置为true以启用路径样式URL。