大数据之Hadoop(MapReduce):FileInputFormat,CombineTextInputFormat切片机制

Posted 浊酒南街

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据之Hadoop(MapReduce):FileInputFormat,CombineTextInputFormat切片机制相关的知识,希望对你有一定的参考价值。

1.FileInputFormat切片机制

1.1:切片机制

1.简单地按照文件的内容长度进行切片;
2.切片大小,默认等于block大小;
3.切片时不考虑数据集整体,而是逐个针对每一个文件单独切片;

1.2:案例分析

1.输入数据,两个文件:
file1.txt 320M; file2.txt 10M;
2.经过FileInputFormat的切片机制运算后,形成的切片信息如下:
file1.txt.split1 – 0-128
file1.txt.split2 – 128-256
file1.txt.split3 – 256-320
file1.txt.split1 – 0-10

1.3:FileInputFormat切片大小的参数配置

切片大小的公式:
Math.max(minsize,Max.min(maxSize,blockSize));
默认情况下,切片大小等于blockSize;

2.CombineTextInputFormat切片机制

2.1:FileInputFormat切片机制的缺陷:

按文件来划分,不管文件多小,都会是一个单独的切片,都会交给一个MapTask,这样如果有大量小文件,就会产生大量的MapTask,处理效率极其低下;

此时轮到CombineTextInputFormat登场;CombineTextInputFormat用于小文件过多的场景,它可以将多个小文件从逻辑上规划到一个切片中,这样,多个小文件就可以交给一个MapTask处理;

2.2:CombineTextInputFormat切片机制

生成切片过程包括:虚拟存储过程和切片过程二部分

2.3:案例分析

在这里插入图片描述

以上是关于大数据之Hadoop(MapReduce):FileInputFormat,CombineTextInputFormat切片机制的主要内容,如果未能解决你的问题,请参考以下文章

大数据之Hadoop(MapReduce): MapReduce概述

大数据之Hadoop(MapReduce):MapReduce核心思想

大数据之Hadoop(MapReduce):Hadoop企业优化

大数据技术之Hadoop(MapReduce)概述序列化

大数据技术之Hadoop(MapReduce)概述序列化

大数据之Hadoop(MapReduce):MapReduce编程规范