MapReduce简介
MapReduce是一种编程模型,是一种编程方法,是抽象的理论。
YARN概念
- ResourceManager
- ApplicationMaster
- NodeManager
ResourceManager
- 分配和调度资源
- 启动并监控ApplicationMaster
- 监控NodeManager
ApplicationMaster
- 为MR类型的程序申请资源,并分配给内部任务
- 负责数据的切分
- 监控任务的执行及容错
NodeManager
- 管理单个节点的资源
- 处理来自ResourceManager的命令
- 处理来自ApplicationMaster的命令
MapReduce编程模型
- 输入一个大文件,通过Split之后,将其分为多个分片
- 每个文件分片由单独的机器去处理,这就是Mao方法
- 将各个机器计算的结构进行汇总并得到最终的结构这就是Reduce方法