MapReducejob提交流程源码和切片源码解析

FileInputFormat切片源码解析(input.getSplits(job))

  1. 程序先找到数据存储的目录
  2. 开始遍历处理(规划切片)目录下的每一个文件
  3. 遍历第一个文件ss.txt
    a) 获取文件大小fs.sizeOf(ss.txt)
    b)计算切片大小
    c)默认情况下,切片大小=blocksize
    d)开始切,形成第一个切片,0-128M第一个切片128-256M第二个切片
    (每次切片时,都要判断切完剩下的部分是否大于块的1.1倍,不大于1.1倍就只划分一块切片)
    e)将切片信息写到一个切片规划文件中
    f)整个切片的核心过程在getSplit()方法中完成
    g)InputSplit只记录了切片的元数据信息
  4. 提交切片规划文件到YARN上,YARN上的MrAppMaster就可以根据切片规划文件计算开启MapTask个数

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-06-23
  • 2021-11-19
  • 2021-11-09
  • 2022-01-06
  • 2021-09-03
猜你喜欢
  • 2021-08-15
  • 2022-12-23
  • 2022-12-23
  • 2021-10-10
  • 2022-12-23
  • 2021-06-21
  • 2021-07-16
相关资源
相似解决方案