当运行 MapReudce 作业时,输入目录必须存在,并且要包含让 MapReduce 处理的文件,还要一个输出目录,必须在运行 MapReduce 作业时设置,该目录如果已经存在对任务也没有影响,MapReude 作业会自动先删除输出目录
MapReduce 作业中的 application master 负责协调运行 MapReudce 作业中的 map 和 reduce 任务,application master 和这些任务一样运行在 YARN 容器中
MapReduce 确保每个 reduce 的输入都是按键排序的,MapReuce 框架中将 map 输出排序后传给 reduce 的过程称为 shuffle
每个 map 任务都有一个环形内存缓冲区用于存储任务输出,一旦缓冲区内容达到阈值,内存缓冲区中的部分数据会溢出到磁盘,如果在数据溢出期间,缓冲区数据存储达到上限,map 任务会被阻塞直到溢出数据写磁盘过程完成