AWS EMR的-file参数是什么

时间:2014-11-13 22:56:55

标签: hadoop amazon-web-services amazon-emr

我正在通过控制台启动EMR集群。

控制台在Arguments字段中自动添加了-files s3://jmilloy/milp_mapper.py,这是我为映射器提供的位置。我无法在任何地方找到-file选项。它有什么作用?为什么会自动添加?如果我将其删除会怎样?我可以从S3那里放入我脚本需要的其他文件吗?

1 个答案:

答案 0 :(得分:3)

简答:

-files不是EMR标志,而是将文件添加到Distributed Cache的方式。

长版:

Hadoop使用称为GenricOptionsParser的东西,用于解析命令行选项。当您使用python编写mapper或reducers时,这意味着Hadoop正在使用名为Streaming API的东西来运行该作业。因此,当您运行流式作业时,您必须使用-files命令行选项传入Mapper和Reducers在文件系统中的路径(也可能是S3),一旦这样做,Hadoop将复制将文件复制到HDFS,然后将它们复制到Mappers和Reducers,以便初始化Python外部进程。

如果未使用-files指定python mapper或reducer代码,则作业将失败。