温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Shuffle有什么用

发布时间:2021-09-22 18:13:39 来源:亿速云 阅读:268 作者:小新 栏目:开发技术

小编给大家分享一下Shuffle有什么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

  Shuffle的正常意思是洗牌或弄乱,Shuffle描述着数据从maptask输出到reducetask输入的这段过程。partition,是划分,分区,归类,是shuffle的一部分。

  shuffle什么意思

  shuffle阶段的主要函数是fetchOutputs(),这个函数的功能就是将map阶段的输出,copy到reduce节点本地。

  combine和partition都是函数,中间的步骤应该只有shuffle!

  combine分为map端和reduce端,作用是把同一个key的键值对合并在一起,可以自定义的。

  combine函数把一个map函数产生的<key,value>对(多个key,value)合并成一个新的<key2,value2>.将新的<key2,value2>作为输入到reduce函数中

  这个value2亦可称之为values,因为有多个。这个合并的目的是为了减少网络传输。

  shuffle作用有什么意思

  partition是分割map每个节点的结果,按照key分别映射给不同的reduce,也是可以自定义的。这里其实可以理解归类。

  我们对于错综复杂的数据归类。比如在动物园里有牛羊鸡鸭鹅,他们都是混在一起的,但是到了晚上他们就各自牛回牛棚,羊回羊圈,鸡回鸡窝。partition的作用就是把这些数据归类。只不过在写程序的时候,mapreduce使用哈希HashPartitioner帮我们归类了。这个我们也可以自定义。

  shuffle就是map和reduce之间的过程,包含了两端的combine和partition。

  Map的结果,会通过partition分发到Reducer上,Reducer做完Reduce操作后,通过OutputFormat,进行输出。

以上是“Shuffle有什么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI