MIT 6.824 lab distributed system 分布式系统(1)----lab1 MapReduce

https://youtu.be/cQP8WApzIQQ

概念

  • 为什么需要分布式系统?
    • high performance
    • parallelism:分布式系统可以实现CPU、内存、硬盘的并行运行
    • fault tolerance
    • physical:
    • security / isolated
  • 分布式系统的困难
    • concurrency:各个并行的部分之间的complex interactions以及各种时间依赖的事务
    • partial failures
    • high-performance

Implement

implementation

RPC(remote procedure call)、threads、concurrency control、etc.

performance

  • scalability:

lab1----MapReduce

MapReduce的工作原理

统计单词出现次数

MIT 6.824 lab distributed system 分布式系统(1)----lab1 MapReduce_第1张图片

建立倒排索引

MapReduce的架构

  • master做为用户的代理做一些特殊的工作:如给split worker分配数据,让reduce worker去拿切分好的数据等。解放用户
  • 每个split worker在本地将数据切分开放在本地的缓存或硬盘上
  • reduce worker拿到split的结果之后,在本地做完reduce,将结果写到最终的文件final file

MIT 6.824 lab distributed system 分布式系统(1)----lab1 MapReduce_第2张图片

MIT 6.824 lab distributed system 分布式系统(1)----lab1 MapReduce_第3张图片

你可能感兴趣的:(java,开发语言)