hadoop中的小文件与shuffle-time-tunning

cgyqldqp  于 2021-05-30  发布在  Hadoop
关注(0)|答案(1)|浏览(416)

在处理这么多小文件时,有什么更好的方法来减少和调整无序播放时间?
由于其他一些限制和要求,我不能减少小文件的数量,我知道处理小文件的问题。但是我想知道为了减少给定mapreduce作业的洗牌时间,这里还有哪些其他选项可用?
对于一个mapreduce工作,我得到如下结果:

Average Map Time    33sec
Average Reduce Time 10sec
Average Shuffle Time    1hrs, 10mins, 18sec
Average Merge Time  2sec

我想知道是否有任何其他的选择,我可以尝试减少这个洗牌时间?
对于以上数据,我的mapper是:14778

mnowg1ta

mnowg1ta1#

如果您有多个小文件,您可以使用所有这些小文件,并通过在驱动程序中使用multipleinputs格式将它们提交到一个Map器。如下所示:

MultipleInputs.addInputPath(job,new Path(args[0]),TextInputFormat.class,CounterMapper.class);
MultipleInputs.addInputPath(job,new Path(args[1]),TextInputFormat.class,CountertwoMapper.class);

您还可以实现定制的比较器,以减少洗牌的负载。

相关问题