如何自定义累加器
来源:千锋教育
发布人:wjy
2022-09-30
推荐
在线提问>>
spark提供了一个累加器用于在整个流程中额外执行一个MR任务,它可以在driver端被初始化发送给各个Task,然后在每个Task中为它添加数据,最终经过reduce将结果聚合后返回driver端。
可以自定义累加器的类型,通过实现一个聚合方法来创建自定义累加器。 除此之外spark2还支持特殊的累加器-收集器,它不需要执行reduce,会将数据原原本本存放在集合中返回。
注意:如果累加操作在transform算子并且action算子有多个时,需要catch该转换算子,否则可能造成重复累加。
下一篇无重复字符的最长子串