hive.input.format指定为org.apache.hadoop.hive.ql.io.HiveInputFormat时,map数与设定的以下三个参数相关:
minSize: mapreduce.input.fileinputformat.split.minsize与1之间的最大值。
maxSize: mapreduce.input.fileinputformat.split.maxsize参数的值
blockSize: dfs.block.size (默认128M)
map任务要划分的大小(splitSize )=(maxSize与blockSize之间的最小值)与minSize之间的最大值
bytesRemaining 是单个输入源文件未划分的字节数
根据getSplits方法,map任务划分的数量=输入源文件数目 * (bytesRemaining / splitSize个划分任务+bytesRemaining不能被splitSize 整除的剩余大小单独划分一个任务 )
参考文章:
网友评论