为了账号安全,请及时绑定邮箱和手机立即绑定

如何简单解释 MapReduce 算法?

如何简单解释 MapReduce 算法?

慕雪6442864 2019-02-06 14:07:50
如何简单解释 MapReduce 算法
查看完整描述

2 回答

?
胡子哥哥

TA贡献1825条经验 获得超6个赞

map 根据输入的映射函数,将一个集合映射为另一个集合,比如:

输入集合为 {1,2,3,4,5},输入的函数为 f(x) = x^2,那么输出的集合就是 {1,4,9,16,25}。


reduce 就是根据输入的归约函数,将集合(一般指map输出的集合)归约,比如上面的输出集合是  {1,4,9,16,25},假设我们的归约函数是 f(x,y) = x + y, 那么 reduce 的过程就是  {5,9,16,25} -> {14,16,25} -> {30,25} -> {55}。


我们使用 Java8 来描述这个过程:

12345int result = IntStream.range(16// 获得集合 {1,2,3,4,5}                      .map(x -> x * x) // 映射为 {1,4,9,16,25}                      .reduce((x, y) -> x + y) // 归约                      .getAsInt(); // 获得结果System.out.println(result);

结果:



查看完整回答
反对 回复 2019-03-20
  • 2 回答
  • 0 关注
  • 811 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信