1.什么是YARN
Apache Hadoop YARN(Yet Another Resource Negotiator),是一种资源协调者,是一种新的Hadoop资源管理器,它是一个通用资源管理系统,可以为上层应用提供统一的资源管理和调度,它的引入为集群利用率、资源统一管理和数据共享等方面带来了巨大好处。
2.YARN的架构![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/87f6acb914f8b3360bbe7ed0535b3553.png)
- ResourcesManager: 是在系统中的所有应用程序直接仲裁资源的最终权限。
- NodeManger: 是每台机器框架代理,负责容器,监视其资源使用情况。
- App Master :应用的Master负责任务计算过程中的任务监控、故障转移,每一个job只有一个。
- Container :表示一个计算进程。
3.什么是MapReduce
Hadoop MapReduce 是一个软件框架,基于该框架能够容易的编写应用程序,这些应用程序能够运行在由上千商业机器组成的大集群上,并以一种可靠的,具有容错能力的方式并行的处理TB级别的海量数据集
一是软件框架,二是并行处理,三是可靠且容错,四是大规模集群,五是海量数据集。
MapReduce擅长处理大数据,它为什么具有这种能力呢?这可由MapReduce的设计思想发觉。MapReduce的思想就是“分而治之”或者“化繁为简”。
- Mapper负责“分”,即把复杂的任务分解为若干个“简单的任务”来处理。 “简单的任务”包含三层含义:
- 是数据或计算的规模相对原任务要大大缩小;
- 是就近计算原则,即任务会分配到存放着所需数据的节点上进行计算;
- 是这些小任务可以并行计算,彼此间几乎没有依赖关系。
- Reducer主要负责对map阶段的结果进行汇总