Master
存储了所有其他机器的状态(idle, in-progress, failure)和所有map处理完的中间数据的位置。Master负责将要处理的数据分配给map worker或者reduce worker.Failure Tolerance
Master: 每隔一定的时间记录一个check points,如果master出问题,任务将从上一个记录点再次重新进行。
Map worker: master会把这个机器标记为failure。已经在此机器上完成的任务必须重新分配,因为中间结果存储在此机器的硬盘中。
Reduce worker: master会把这个机器标记为failure。已经在此机器上完成的任务不需要重新分配,因为reduce的结果存在一个全局的最终输出文档里。
Backup Tasks
当map-reduce所有操作接近结束时,有个小优化。master可以把剩余的工作重复分配给其他空余机器,无论哪台机器上执行完,master都会把那部分任务标记为完成。
这样可以大大减少时间的消耗
No comments:
Post a Comment