mapreduce—将s3 loaction作为参数传递给hadoop jar

qyzbxkaa  于 2021-05-29  发布在  Hadoop
关注(0)|答案(2)|浏览(341)

我想将amazons3中的文件位置作为参数传递给hadoop jar。该文件包含一个xml文件,我需要在map-reduce的驱动程序类中解析该xml文件。那么如何传递该位置呢?在哪里指定s3凭据?

vxqlmq5t

vxqlmq5t1#

不能使用s3n位置运行mr作业。上传jar文件并输入到s3,然后运行它 elastic-mapreduce 如下所示:

elastic-mapreduce --jar s3://mybucket/mycode.jar \
    --args "-D,mapred.reduce.tasks=0"
    --arg s3://mybucket/input \
    --arg s3://mybucket/output
u4vypkhs

u4vypkhs2#

或者您需要在配置文件中设置s3凭据,例如 mapred-site.xml or core-site.xml 或者您可以使用自定义配置文件-conf传递以下参数 hadoop jar 命令看起来像 hadoop jar <jar_file_name> <class_name> -conf <custom_conf> <arguments> ```

fs.s3n.awsAccessKeyId
AWS-ID


fs.s3n.awsSecretAccessKey
AWS-SECRET-KEY

相关问题