MapReduce详解(二)
今天介绍的主要是运行环境是MR ON YARN
一.MR详解
MR是Hadoop里面的一种计算框架
map:映射
shuffle:洗牌
reduce:聚合
既然是计算框架,那肯定有数据输入端、数据输出端,首先先把数据通过input split ,切分成一个个分片,一个分片对应着一个map task任务,先把数据映射成key、value键值对,然后再通过shuffle,把相同的key洗到一起,最后通过reduce聚合操作,把相同的key聚合成一个key、value键值对,最后再把这个聚合的数据输出
shuffle主要是洗牌的作用,把map task的输出作为reduce task的输入数据
详细介绍:http://blog.itpub.net/30089851/viewspace-2095837
二.MR ON YARN的详细流程
RM:
applications Manager 应用程序管理器
resource scheduler 资源memory+cpu调度器
1.首先client端向Yarn提交一个MR的应用程序,rm会给该job分配一个container(容器,类似一个空间),运行该job的ApplicationMaster
2.ApplicationMaster会向applications Manager注册下,然后就可以通过web页面查看到这个job的进度
3.ApplicationMaster用轮询的方式通过RPC协议向RM申请和领取job运行的资源
4.ApplicationMaster拿到资源后开始运行map task 和reduce task,各个task通过RPC向ApplicationMaster报告自己的状态,ApplicationMaster可以掌握各个task的状态
5.job运行结束后,ApplicationMaster向applications Manager注销并关闭自己
来源:CSDN
作者:弄巧成拙101
链接:https://blog.csdn.net/qq_41301707/article/details/103464986