在我的 Spark 代码中,我必须在 HadoopConfiguration 中设置 ACCESS_KEY 和 SECRET_KEY 才能访问 AWS-S3。在互联网上,我找到了多种设置这些属性的方法。
例如
样式#1,
sc.hadoopConfiguration.set("fs.s3n.access.key", AWS_ACCESS_KEY)
sc.hadoopConfiguration.set("fs.s3n.secret.key", AWS_SECRET_KEY)
样式#2,
sc.hadoopConfiguration.set("fs.s3n.awsAccessKeyId", AWS_ACCESS_KEY)
sc.hadoopConfiguration.set("fs.s3n.awsSecretAccessKey", AWS_SECRET_KEY)
在上述语法中,样式 #1 (fs.s3n.access.key) 不有效,而样式 #2 (fs.s3n.awsAccessKeyId ) 工作正常。 我想知道样式 #1 是否特定于任何 hadoop 版本,或者它是否在 hadoop 配置中不受支持?
我在哪里可以找到与 spark、aws、hive、s3 等相关的所有可能的 HadoopConfiguration 属性?
最佳答案
access.key
和secret.key
用于s3a
连接器。 AFAIR,s3n
方案始终使用 awsAccessKeyId/awsSecretAccessKey
样式。
有关配置引用,请转到 official hadoop documentation或 source code ,这是验证配置参数名称的最佳方式。
关于amazon-web-services - Hadoop配置属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46115199/