FileInputFormat 和 CombineTextInputFormat 切片机制

一、FileInputFormat切片机制

1、简单的按照文件长度进行切片

2、切片大小,默认值为BlockSize

3、切片时不考虑整体数据,而是逐个针对单一文件切片

二、CombineTextInputFormat切片机制

A、产生原因:

处理大量单独的小文件,每个小文件都会产生一个MapTask,消耗内存,速度慢

B、机制

1、虚拟存储过程

a、文件与setMaxInputSplitSize值做比较,若小于则单独形成一个切片

b、若文件大小1倍且小于2倍时,为防止文件过小,均分

b、若大于2倍,则形成一个setMaxInputSplitSize值大小的切片,当剩余的数据的大小,超过最大值,且小于最大值的2倍,为防止切片过小,平分

2、切片过程

a、判断虚拟存储文件是否大于最大值,若大于则单独形成一个切片

b、若不大于,则和下面的虚拟存储文件进行合并

 

posted @ 2020-09-03 21:36  市丸银  阅读(306)  评论(0编辑  收藏  举报