我正在使用PageRankBenchmark示例测试我的单节点群集Giraph安装,方法如下:
$HADOOP_HOME/bin/hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/giraph-examples-1.1.0-for-hadoop-2.4.0-jar-with-dependencies.jar org.apache.giraph.benchmark.PageRankBenchmark -v -V 1000 -e 1 -s 5 -w 1
但是,在映射器完成工作后,减速器不能启动(根据控制台,映射100%减少0%)。这是此算法的适当行为吗?
如果执行映射器,则reducer必须开始将地图的输出作为输入并完成工作(至少,在互联网的许多其他PageRank算法实现中,总会有a" Reducer")。但是我谷歌它,并且总是PageRankBenchmark giraph示例以这个算法的几个结果中的Reduce以0%结束,由其他人运行。
所以,如果在PageRankBenchmark中没有问题,我现在就不行,我希望有人可以帮助我在这里;)
我使用hadoop 2.4,使用Phadoop_yarn配置文件,使用Giraph 1.1.0。
根据我读过的其他几个问题,"减少0%卡住的主要问题"问题,它可能在地图集中,但我在那里找不到任何东西(我也附上它们)。
以下是我的日志:
干杯!
答案 0 :(得分:2)
Giraph遵循仅限地图的范例。换句话说,每个工作人员都与地图任务相关联。所有计算都是在map任务中执行的,map-tasks之间的通信是为了发送/接收消息是通过使用zookeeper来完成的。因此,它不同于传统的map-reduce编程范例,它将输出映射到Reducer。因此,没有减少任务也没有地图输出。