zzz*_*mbo 9 python hadoop hadoop-streaming
对于python Hadoop流作业,如何将参数传递给例如reducer脚本,以便根据传入的参数使其行为不同?
我知道流媒体作业的格式为:
hadoop jar hadoop-streaming.jar -input -output -mapper mapper.py -reducer reducer.py ...
我想影响reducer.py.
Ray*_*oal 16
命令行选项的参数-reducer可以是任何命令,因此您可以尝试:
$HADOOP_HOME/bin/hadoop jar $HADOOP_HOME/hadoop-streaming.jar \
-input inputDirs \
-output outputDir \
-mapper myMapper.py \
-reducer 'myReducer.py 1 2 3' \
-file myMapper.py \
-file myReducer.py
Run Code Online (Sandbox Code Playgroud)
假设myReducer.py是可执行的.免责声明:我还没有尝试过,但我已经通过了类似的复杂的字符串-mapper和-reducer前.
那就是说,你试过吗?
-cmdenv name=value
Run Code Online (Sandbox Code Playgroud)
选项,让你的Python reducer从环境中获得价值?这只是另一种做事的方式.
| 归档时间: |
|
| 查看次数: |
7757 次 |
| 最近记录: |