我想以语法方式将作业的输出从EMR集群复制到Amazon S3。

如何在Java代码中使用S3DistCp进行相同操作。

最佳答案

hadoop ToolRunner可以运行它。
下面是用法示例:
导入org.apache.commons.logging.Log;
导入org.apache.commons.logging.LogFactory;
导入org.apache.hadoop.util.ToolRunner;
导入com.amazon.external.elasticmapreduce.s3distcp.S3DistCp

公共(public)类CustomS3DistCP {
私有(private)静态最终日志日志= LogFactory.getLog(CustomS3DistCP.class);

公共(public)静态void main(String [] args)引发异常{
log.info(“使用args运行:” + args);

System.exit(ToolRunner.run(new S3DistCp(),args));
}

您必须在类路径中有s3distcp jar
您可以从Shell脚本调用此程序。
希望有帮助!

10-07 22:25