失效机器的影响
在排序程序执行过程中,我们模拟了机器失效的情况,故意停止了 200 台工作机器。由于 MapReduce 的底层调度机制,系统能够迅速在这些机器上重启新的工作进程,继续处理任务。虽然一些已完成的 Map 任务因进程停止而丢失,需要重新执行,但这仅增加了 5% 的运行时间,整个计算过程在 933 秒内完成。
MapReduce 库的应用
自 2003 年首次发布以来,MapReduce 库经历了显著的改进,包括输入数据本地优化和动态负载均衡。该库已被广泛应用于 Google 的各种领域,包括:
- 大规模机器学习
- Google News 和 Froogle 产品的集群问题
- 从公共查询产品中提取数据
- 从网页中提取有用信息
- 大规模图形计算
MapReduce 库的易用性和可扩展性使其成为开发人员的宝贵工具,即使是没有分布式系统经验的程序员也可以轻松开发并行处理应用程序。