通用的任务程序提交步骤为:
1.客户端向resourceManager发送job请求
2.resourceManager返回存储路径,jobId给客户端
3.客户端创建路径把jobId,分片信息,配置文件信息,jar文件拷贝到返回的存储路径上
4.客户端向resourceManager报告提交完成
5.resourceManager在nodeManager上启动一个容器(container),在container中执行mrappmaster进程(主管mr任务执行)
6.mrappmaster取得分片信息,任务的相关配置,计算job所需资源
7.mrappmaster向resourceManager申请资源
8.resourceManager准备资源,mrappmaster启动container运行mapTask
9.maptask进程启动之后,根据给定的数据切片范围进行数据处理,处理流程:
1)利用客户指定的inputformat来获取recordReader读取数据,形成kv键值对。
2)将kv传递给客户定义的mapper类的map方法,做逻辑运算,并将map方法的输出kv收集到缓存。