lab1 :第四天

55 阅读1分钟

这四天的学习探索都在这里,明天开始正式写代码!!! 通过博客+魔改 让这个lab变成自己的东西

什么是MapReduce:

对于输入数据, 用户指定一种 MapFunc 则可以生成一个个键值对(称作 intermediate) , 这一过程被叫做 Map。对于Intermediate, 用户指定一种 Reduce Function,则可以根据 Intermediate key 对Intermediate 进行合并归类, 这一过程被叫做 Reduce

主体流程:

  1. coordinator 启动
  2. worker启动
  3. worker发送RPC消息请求coordinator 分配map任务
  4. coordinator 返回map任务的相关信息
  5. worker开始执行map任务
  6. 重复3-6。 直到coordinator不再分配新的map任务,worker等待所有map任务执行结束
  7. worker发送RPC消息请求coordinator 分配reduce任务
  8. coordinator 返回reduce任务的相关信息
  9. worker开始执行reduce任务
  10. 重复7-9。 直到coordinator不再分配reduce任务,worker等待coordinator结束消息,然后退出结束

Task:


RPC:


Maser:

Worker: