Hadoop CombineTextInputFormat遇到的坑
背景
combineTextInputFormat是Hadoop的一个切片机制,默认情况下,使用TextInputformat,TextInputformat按文件数切分,即使文件很小,这样会产生大量的小文件,产生大量的maptask。导致处理效率低下。而combineTextInputFormat可以将多个小文件从逻辑上规划到一个切片中。
遇到的坑
当多输入时使用combineTextInputFormat,会导致多输入合并为一个maptask,即不能区分输入来源。
如:输入为:100个1/a.txt 100个2/b.txt 100个3/c.txt 100个4/d.txt
使用combineTextInputFormat参数之后,map_input_file全变为1.txt。