MapTask:

首先经过 FileInputFormat 判断该文件是否要进行切片,如果是我们自定义的FileInputFormat基本上重写isSplit方法返回为false表示不进行切片,那么就是直接输入这个文件
作为RecordReader读取的对象,RecordReader的nextKeyValue()方法中将输入的文件或者切片分割为key和value进行赋值,记住这一步骤如果返回为true就会一直无限循环下去,因为父级代码是while(nextKeyValue)
无限制调用,并且记住一点 ,一个文件或者切片对应一个maptask,是这个maptask的输入,并且也对应一个InputFormat.即一个文件或者切片对应一个InputFormat对象(包含一个RecordReader)
这个对象也只对应一个maptask,RecordReader的nextKeyValue的key和value就是map方法的输入值。

ReduceTask:
一个reduceTask对应一个OutputFormat,但是有一点不要混淆,就是一个reduceTask中reduce方法可以被调用多次,而且如果设置了分区,那么分区数等于reduceTask数量,也就是
一个reduceTask只会处理一个分区的数据,多个reduceTask对应多个OutputFormat(包含RecordWriter)对象,每组(一个reduceTask和OutputFormat是一组)都是独立的

最新文章

  1. 论文阅读(Xiang Bai——【TIP2014】A Unified Framework for Multi-Oriented Text Detection and Recognition)
  2. Struct Member Default Value
  3. 从linux内核代码分析操作系统启动过程
  4. android 开发-自定义多节点进度条显示
  5. 河南省第八届ACM省赛---引水工程
  6. badboy 录制脚本并并发脚本
  7. VMware静态地址上网
  8. 合肥.NET技术社区首次线下聚会全程回顾【多图】
  9. html link JS
  10. [转] pytorch指定GPU
  11. Maya API Test
  12. 【ASP.NET】UCenter实现多站点同步注册
  13. CentOS 7 使用 ACL 设置文件权限
  14. spring生命周期流程图
  15. Selenium-WebDriverApi接口详解
  16. ASP.NET MVC5+EF6+LayUI实战教程,通用后台管理系统框架(5)- 创建项目结构
  17. PAT甲题题解-1037. Magic Coupon (25)-贪心,水
  18. Nginx配置直接php
  19. transform 动画效果
  20. Java线程和多线程(十三)——Callable,Future,FutureTask

热门文章

  1. 整理全网最全K8S集群管理工具、平台
  2. 多选菜单shell脚本
  3. [luogu P1312]Mayan游戏
  4. 如何保存并复制python虚拟环境
  5. 关于使用学生或者教师身份免费使用JetBrains全家桶的说明
  6. ApacheCN Java 译文集 20211012 更新
  7. CodeForces 摆烂寄录
  8. 分布式缓存——Redis
  9. 连接mysql出现“Unable to load authentication plugin 'caching_sha2_password”错误
  10. jsp include html 乱码问题