1.mapreduce分为哪两个阶段 map和reduce两个阶段
2.谈谈你对这两个阶段的理解 map阶段是对所有数据进行一个映射变换的操作,一般是将单个数据变成键值对的形式,这个可以在shuffle阶段重新分配数据,reduce是一个聚合计算的过程,将相同定义的数据进行统一计算
3.谈谈你对shuffle的理解 洗牌,对数据进行重新分配的过程
4.运行wordcount案例跑在yarn上 如果是使用hive来操作的话,我们将使用到explode,split,group by,count等函数或方法
5.mapreduce job跑在yarn的工作流程,简述 client将作业提交到RM上,RM将分配一个applicationMaster给这个作业,其在某个NM节点上的container,所以RM会要求某个NM开启这个container来放置applicationMaster,然后applicationMaster反向向RM注册并获取资源,接着向相应的NM通信要求启动container来运行task,每个container会定时和applicationMaster通信返回信息给applicationMaster以便于它监控每个task的运行情况,最后当作业运行完毕以后,RM注销掉applicationMaster。
7.executor是运行在RM节点上吗? NM节点上
8.APP master是运行在RM节点上吗? 也是NM节点上
9.yarn调优的 从内存的调优到cpu的调优,记住我以前博客上体到的那几个参数的设置,和内存的分配原则
10.一般我们把dn和nm部署在同一节点上,目的是什么 数据本地化,减少网络io
11.yarn常用命令哪些 yarn application yarn jar等
12.调度器有哪几种 先进先出,公平,队列
具体的请查看我其他博客,这里只是提点一下大概的内容,唤起记忆