Map / Reduce / Combine的作用

Map和Reduce节点的概念和Java Stream里的map和reduce的概念基本是一致的。

Map:将一条记录处理为另一条记录。一般会指定key和value。同一key的记录会分发到同一reduce节点。

Reduce:reduce节点接收到的所有记录进行聚合处理,输出为一条结果记录。最后所有reduce节点的记录会合并作为最终结果。

Combine:归并是框架的一种优化,一般combiner的逻辑和reducer相同。作用是可以提前做一些本地合并。
以wordcount看Map和Combine以及Reduce节点的作用
image.png

下面红色区域就是本地合并
image.png