我知道我可以通过Job和Configuration为我的地图制作者提供一些全球价值。
但是我怎么能用Hadoop Streaming(在我的情况下是Python)呢?
什么是正确的方法?
答案 0 :(得分:1)
基于docs,您可以指定命令行选项(-cmdenv name=value
),以便在每台分布式计算机上设置环境变量,然后可以在映射器/缩减器中使用这些变量:
$HADOOP_HOME/bin/hadoop jar $HADOOP_HOME/hadoop-streaming.jar \
-input input.txt \
-output output.txt \
-mapper mapper.py \
-reducer reducer.py \
-file mapper.py \
-file reducer.py \
-cmdenv MY_PARAM=thing_I_need