gpt4 book ai didi

python - Pydoop mapreduce "AttributeError: module ' wordcount_minimal' 没有属性 '__main__' "

转载 作者:可可西里 更新时间:2023-11-01 16:36:10 27 4
gpt4 key购买 nike

我安装了 Pydoop 并正在尝试运行 MapReduce 作业。只是为了试运行,我尝试执行字数统计示例 wordcount_minimal.pywordcount_full.py。他们都卡在 map 阶段。在 stderr 的末尾,我根据我运行的脚本找到了这条消息:

module 'wordcount_minimal' has no attribute 'main'

module 'wordcount_full' has no attribute 'main'

我使用命令执行作业:

pydoop submit --upload-file-to-cache wordcount_full.py wordcount_full hdfs_input_dir hdfs_output_dir

无法找到这背后的原因。知道可能是什么原因吗?

我能够从 pydoop script 执行示例使用 mapreduce 函数并成功完成。但是使用 pydoop submit 选项时,我遇到了这个问题。不确定我是否遗漏了什么。

PS:我有一个包含 2 个运行 Hortonworks HDP 2.6.5 节点的集群。 Pydoop 都安装在它们上。

最佳答案

默认情况下,pydoop 提交需要一个名为 __main__ 的入口点,但您可以通过 --entry-point 修改它。例如,如果您的代码是:

class Mapper ...
class Reducer ...
def run():
pipes.run_task(pipes.Factory(Mapper, Reducer))

您可以通过 pydoop submit --entry-point run ... 运行它

关于python - Pydoop mapreduce "AttributeError: module ' wordcount_minimal' 没有属性 '__main__' ",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52229674/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com