Hadoop3:MapReduce源码解读之Map阶段的TextInputFormat切片机制(3)

Job那块的断点代码截图省略,直接进入切片逻辑

参考:Hadoop3:MapReduce源码解读之Map阶段的Job任务提交流程(1)

5、TextInputFormat源码解析

类的继承关系

它的内容比较少

重写了两个父类的方法

这里关心一下泛型参数,发现是LongWritable, Text,这就是为什么之前我们开发WC案例的时候,固定传入LongWritable和Text类型的原因

说明
TextInputFormat是默认的FileInputFormat实现类。按行读取每条记录。键是存储该行在整个文件中的起始字节偏移量, LongWritable类型。值是这行的内容,不包括任何行终止符(换行符和回车符),Text类型。
例如

注意

如果我们在开发Mapper程序时,没有指定切片类,则默认选择TextInputFormat来进行切片

案例

准备4个文件

依然用wordcount代码进行演练

指定文件路径

如果,我们仅仅替换了文件源路径,那么,切片类默认选择的是TextInputFormat

根据之前学习的切片逻辑
splitSzie=32M

按照每个文件单独切片

由于,这里每个文件都是小文件,都不大于32M,所以切片数量为4个

所以,会生成4个MapTask线程来处理数据

查看执行日志:

1、切片数量日志
number of splits:4

2、查看MapTask数量
attempt_local1807000288_0001_m_000000_0

attempt_local1807000288_0001_m_000001_0

attempt_local1807000288_0001_m_000002_0

attempt_local1807000288_0001_m_000003_0

3、查看Reducer线程数量
attempt_local1807000288_0001_r_000000_0

通过日志,可以看出,和预计的一样

相关推荐
七夜zippoe7 分钟前
OpenClaw 子代理(Subagent)机制详解
大数据·人工智能·subagent·openclaw·子代理
财经三剑客16 分钟前
长安汽车3月销量超27万辆 海外及新能源环比大幅增长
大数据·人工智能·汽车
ClouGence42 分钟前
不用搭复杂系统,也能做跨地域数据迁移?
大数据·数据库·saas
xixixi777771 小时前
Token 经济引爆 AI 产业加速:从百模大战到百虾大战,谁在定义 2026 的中国 AI?
大数据·人工智能·机器学习·ai·大模型·算力·通信
Gent_倪1 小时前
数据建模概念解析
大数据·数据建模
永霖光电_UVLED1 小时前
Polar Light 获得了欧盟Eurostars计划的110万欧元(€1.1m)资助
大数据·人工智能·物联网·汽车·娱乐
琪伦的工具库1 小时前
批量excel文件删除列工具使用说明:按列号或列名批量删除/保留,支持预览与大文件优化
大数据·excel
武子康2 小时前
大数据-266 实时数仓-Canal + Kafka 实现 MySQL 数据库变更实时捕获
大数据·后端·kafka
TDengine (老段)2 小时前
中原油田引入时序数据库 TDengine:写入性能提升、存储成本下降 85%
大数据·数据库·人工智能·时序数据库·tdengine·涛思数据
财经资讯数据_灵砚智能2 小时前
基于全球经济类多源新闻的NLP情感分析与数据可视化(日间)2026年4月12日
大数据·人工智能·信息可视化·自然语言处理·ai编程