2014-12-04 48 views
-1

我是新来Hadoop,我也在一个多节点的Hadoop与Hadoop 2.5.1版本。 当我使用命令只有一个映射器,减速运行,即使我更改为5级映射器和2个减速

hadoop jar jarFile <ClassName> <InputFile> <outputDirectory> -D mapreduce.job.reduces=2 mapreduce.job.maps=5 

运行MapReduce工作但是当我看到输出I看到的只是一个映射器和一个减速运行。

,我看到有在Hadoop 2.5.1

没有地图插槽和减速插槽的理念和我的文件大小为78MB。所以,我的文件大小的原因是很少,块是非常低的,所以只有一个映射器运行?

帮助中,这将是巨大的,我先走。

感谢&问候, Srilatha K.

回答

1

这是因为该块的默认大小为128MB,因此你的尺寸78M的文件从来没有得到分裂翻过多个块。见this这表示默认的块大小是128

如果你想看到两个映射器然后添加以下行$ HADOOP_HOME/conf目录/ HDFS-site.xml中

<property> 
    <name>dfs.blocksize</name> 
    <value>64M</value> 
</property> 
+0

感谢您的答复阿尔马斯,但我甚至有一个问题。我有另一个Hadoop 1.0.4单节点集群。当我在该clusetr中运行相同的MR作业时,我看到2个地图任务正在运行,我尝试了更改块大小,甚至是-D mapreduce.job.maps = 1。但是我仍然看到2个地图任务正在运行。你能帮我解决这个问题吗?就像我应该修改哪个地方才能看到只有一个Map任务正在运行。 – user3282197 2014-12-04 15:56:47

+0

这是因为在1.0.4中,默认块大小是64M。有关默认属性的详细信息,请参阅[这里](http://hadoop.apache.org/docs/r1.0.4/hdfs-default.html)。 – SMA 2014-12-04 16:29:06

+0

好的,谢谢你的回答Almas,但我已经将默认大小更改为128M,开始了所有服务并进行了检查,仍然有iam有2个映射器,那么这种行为的任何特殊原因? – user3282197 2014-12-05 08:37:04

相关问题