在关于Java for Hadoop的教科书中,我读到了:
MapReduce中的地图任务通常一次只能在一个块上运行, 因此,如果您的任务太少(集群中的节点数少于),您的作业将比其他情况下的运行速度慢
这句话在关于HDFS Block size的段落中,但我不明白它的含义。 你能救我吗?
答案 0 :(得分:0)
映射器的数量取决于输入spilit的数量,默认情况下输入spilit的数量将是mapreduce中块大小的数量。所以在这种情况下,假设你的文件大小为128 MB,那么默认情况下会有一个mapper用于计算,但你可以通过改变mapred-site.xml中的一些属性来增加mapper的数量,现在增加数量之后对于映射器,相同的128 MB文件将由更多映射器计算,并且执行将比先前的情况更快。