Hadoop AWS EMR的-file参数是什么
我正在通过控制台启动一个EMR集群 控制台在参数字段中自动添加了Hadoop AWS EMR的-file参数是什么,hadoop,amazon-web-services,amazon-emr,Hadoop,Amazon Web Services,Amazon Emr,我正在通过控制台启动一个EMR集群 控制台在参数字段中自动添加了-files s3://jmiloy/milp_mapper.py,这是我为映射器提供的位置。我在任何地方都找不到-file选项。它有什么作用?为什么会自动添加?如果我移除它会发生什么?我可以将脚本需要的S3中的其他文件放在那里吗?简短回答: -files不是EMR标志,而是将文件添加到系统的一种方式 长版本: Hadoop使用名为as的东西来解析命令行选项。当您使用python编写映射器或还原器时,这意味着Hadoop正在使用一种
-files s3://jmiloy/milp_mapper.py
,这是我为映射器提供的位置。我在任何地方都找不到-file
选项。它有什么作用?为什么会自动添加?如果我移除它会发生什么?我可以将脚本需要的S3中的其他文件放在那里吗?简短回答:
-files
不是EMR标志,而是将文件添加到系统的一种方式
长版本:
Hadoop使用名为as的东西来解析命令行选项。当您使用python编写映射器或还原器时,这意味着Hadoop正在使用一种称为as的东西来运行作业。因此,当您运行流式处理作业时,必须使用-files
命令行选项传入映射器和还原器位于文件系统中的路径(也可以是S3),一旦您这样做,Hadoop将把文件复制到HDFS,然后将它们复制到映射器和还原器,以便它们可以初始化Python外部进程
如果不使用-files
指定python映射器或reducer代码,作业将失败。简短回答:
-files
不是EMR标志,而是将文件添加到系统的一种方式
长版本:
Hadoop使用名为as的东西来解析命令行选项。当您使用python编写映射器或还原器时,这意味着Hadoop正在使用一种称为as的东西来运行作业。因此,当您运行流式处理作业时,必须使用-files
命令行选项传入映射器和还原器位于文件系统中的路径(也可以是S3),一旦您这样做,Hadoop将把文件复制到HDFS,然后将它们复制到映射器和还原器,以便它们可以初始化Python外部进程
如果不使用-files
指定python映射器或reducer代码,作业将失败。简短回答:
-files
不是EMR标志,而是将文件添加到系统的一种方式
长版本:
Hadoop使用名为as的东西来解析命令行选项。当您使用python编写映射器或还原器时,这意味着Hadoop正在使用一种称为as的东西来运行作业。因此,当您运行流式处理作业时,必须使用-files
命令行选项传入映射器和还原器位于文件系统中的路径(也可以是S3),一旦您这样做,Hadoop将把文件复制到HDFS,然后将它们复制到映射器和还原器,以便它们可以初始化Python外部进程
如果不使用-files
指定python映射器或reducer代码,作业将失败。简短回答:
-files
不是EMR标志,而是将文件添加到系统的一种方式
长版本:
Hadoop使用名为as的东西来解析命令行选项。当您使用python编写映射器或还原器时,这意味着Hadoop正在使用一种称为as的东西来运行作业。因此,当您运行流式处理作业时,必须使用-files
命令行选项传入映射器和还原器位于文件系统中的路径(也可以是S3),一旦您这样做,Hadoop将把文件复制到HDFS,然后将它们复制到映射器和还原器,以便它们可以初始化Python外部进程
如果不使用
-files
指定python映射器或reducer代码,作业将失败。太好了,谢谢。我很想尝试以这种方式添加映射器使用的其他文件(2个二进制文件),而不是通过引导操作。这些二进制文件库或python脚本是您希望从映射器或Reducer python代码调用的吗?它们是我作为子进程调用的可执行文件。有什么建议吗?它们在我的测试EC2实例上工作,但我还没有通过EMR成功获得结果。您可以尝试将这些文件添加到DistributedCache,然后从映射器和Reducer的当前工作目录中访问它们。看看这个是的,这正是我需要的!您刚才不是说过-files
会将文件添加到分布式缓存吗?如果是这样,那么-files
和-cacheFile
之间有什么区别?太好了,谢谢。我很想尝试以这种方式添加映射器使用的其他文件(2个二进制文件),而不是通过引导操作。这些二进制文件库或python脚本是您希望从映射器或Reducer python代码调用的吗?它们是我作为子进程调用的可执行文件。有什么建议吗?它们在我的测试EC2实例上工作,但我还没有通过EMR成功获得结果。您可以尝试将这些文件添加到DistributedCache,然后从映射器和Reducer的当前工作目录中访问它们。看看这个是的,这正是我需要的!您刚才不是说过-files
会将文件添加到分布式缓存吗?如果是这样,那么-files
和-cacheFile
之间有什么区别?太好了,谢谢。我很想尝试以这种方式添加映射器使用的其他文件(2个二进制文件),而不是通过引导操作。这些二进制文件库或python脚本是您希望从映射器或Reducer python代码调用的吗?它们是我作为子进程调用的可执行文件。有什么建议吗?它们在我的测试EC2实例上工作,但我还没有通过EMR成功获得结果。您可以尝试将这些文件添加到DistributedCache,然后从映射器和Reducer的当前工作目录中访问它们。看看这个是的,这正是我需要的!您刚才不是说过-files
会将文件添加到分布式缓存吗?如果是的话,有什么建议