Hadoop CombineTextInputFormat的使用

1、假如机器的CPU的核数有 12cores,启动多少个map task合适呢?
=> 启动12个map task使得机器最大化使用。
每个map task处理多少数据合适?128Mb,经过实绩得到的最优解。
2、尽可能多的小文件达到128Mb,"合并"在一起
3、CombineTextInputFormat:getSplits方法:尽可能合并同一机器,同一机架的节点的切片的文件。


1、准备测试文件8个


image.png

2、为wc程序准备好参数


image.png

3、Windows系统上运行日志:
splits数目为8

[main] DEBUG org.apache.hadoop.mapreduce.lib.input.FileInputFormat - Total # of splits generated by getSplits: 8, TimeTaken: 473

4、添加如下配置:


image.png

5、再次运行得到splits为1.
[main] INFO org.apache.hadoop.mapreduce.JobSubmitter - number of splits:1

你可能感兴趣的:(Hadoop CombineTextInputFormat的使用)