通过Hadoop流管理依赖关系?
-
30-09-2019 - |
题
我有一个快速的Hadoop流媒体问题。如果我使用的是Python流媒体,并且我的映射器/还原器所需的python软件包,但默认不安装,我还需要在所有Hadoop机器上安装它们,或者是否有某种序列化将它们发送到远程机器?
解决方案
如果它们未安装在任务框上,则可以使用-file发送它们。如果您需要包装或其他目录结构,则可以发送Zipfile,该Zipfile将为您打开包装。这是HADDOP 0.17调用:
$HADOOP_HOME/bin/hadoop jar $HADOOP_HOME/contrib/streaming/hadoop-0.17.0-streaming.jar -mapper mapper.py -reducer reducer.py -input input/foo -output output -file /tmp/foo.py -file /tmp/lib.zip
但是,请参阅此问题:
其他提示
如果使用Dumbo,则可以使用-libegg分发鸡蛋文件并自动配置Python运行时:
https://github.com/klbostee/dumbo/wiki/short-tutorial#wiki-eggs_and_jarshttps://github.com/klbostee/dumbo/wiki/configuration-files
不隶属于 StackOverflow