Hadoop3:MapReduce之MapTask的FileInputFormat的切片原理解读(2)

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

参考:Hadoop3:MapReduce之MapTask的Job任务提交流程原理解读(1)

4、FileInputFormat切片源码解析

切片入口

获取切片数

获取最大和最小切片数

判断文件是否可以切片,如果文件不支持切片,则整体处理

这里只考虑支持切片的代码逻辑

计算切片大小

根据切片大小配置,及块大小配置,计算出切片大小

此处可以看出,如果块大小配置在切片大小之间的值,则切片大小取块大小。

这里可以看出,切片是对每一个文件单独计算的,不是把所有文件累加到一起的大小进行计算切片数量。

切片的又一个代码限制。
如果,文件大小小于切片大小的1.1倍,则不增加切片。

生成临时切片文件

创建配置信息文件到临时文件夹中

总结

FileInputFormat类的继承关系

主要关注该类里面的getSplits方法

整体流程梳理

相关推荐
专注API从业者41 分钟前
Python + 淘宝 API 开发:自动化采集商品数据的完整流程
大数据·运维·前端·数据挖掘·自动化
媒体人8882 小时前
GEO 优化专家孟庆涛:技术破壁者重构 AI 时代搜索逻辑
大数据·人工智能
最初的↘那颗心2 小时前
Flink Stream API 源码走读 - print()
java·大数据·hadoop·flink·实时计算
君不见,青丝成雪3 小时前
hadoop技术栈(九)Hbase替代方案
大数据·hadoop·hbase
晴天彩虹雨4 小时前
存算分离与云原生:数据平台的新基石
大数据·hadoop·云原生·spark
朗迪锋4 小时前
数字孪生 :提高制造生产力的智能方法
大数据·人工智能·制造
杨荧5 小时前
基于Python的宠物服务管理系统 Python+Django+Vue.js
大数据·前端·vue.js·爬虫·python·信息可视化
健康平安的活着5 小时前
es7.x es的高亮与solr高亮查询的对比&对比说明
大数据·elasticsearch·solr
缘华工业智维5 小时前
CNN 在故障诊断中的应用:原理、案例与优势
大数据·运维·cnn
更深兼春远6 小时前
spark+scala安装部署
大数据·spark·scala