将aws凭据传递给存储功能

vyu0f0g1  于 2021-06-25  发布在  Pig
关注(0)|答案(2)|浏览(290)

如何将aws凭证(aws\u access\u key和aws\u secret\u key)传递到存储功能?
谢谢

0vvn1miw

0vvn1miw1#

鉴于这个问题被标记为emr,我将假设您将aws emr用于hadoop集群。如果是这种情况,则无需进一步设置即可访问s3。emr服务使用启动集群的用户的aws凭据或使用请求的示例角色自动配置hadoop fs(pigstorage将利用它)。只需提供s3位置,pig将根据用户/角色的策略和权限与s3进行接口。 A = LOAD 's3://<yourbucket>/<path>/' using PigStorage('\t') as (id:int, field2:chararray, field3:chararray);

kcrjzv8t

kcrjzv8t2#

我不是很明确,并给出了一个我的用例的例子,对不起。我需要它,因为我需要使用两个不同的aws访问密钥,并使用类似s3n的东西://access:secret@bucket did 无法解决。我通过改变pigstorage函数,将结果存储在hdfs中,并在cleanupWithSuccess方法上调用一个方法,用凭据将hdfs文件上传到s3。通过这种方式,我可以在pigstoragefunction用于存储时将凭据传递给它,当然,我还更改了pigstoragefunction的构造函数以接收这些参数。

相关问题