Shuffle过程介绍可以查看该博客:http://langyu.iteye.com/blog/992916
优化方向:
- 压缩:对数据进行压缩,减少写读数据量;
- 减少不必要的排序:并不是所有类型的Reduce需要的数据都是需要排序的,排序这个nb的过程如果不需要最好还是不要的好;
- 内存化:Shuffle的数据不放在磁盘而是尽量放在内存中,除非逼不得已往磁盘上放;当然了如果有性能和内存相当的第三方存储系统,那放在第三方存储系统上也是很好的;这个是个大招;
- 网络框架:netty的性能据说要占优了;
- 本节点上的数据不走网络框架:对于本节点上的Map输出,Reduce直接去读吧,不需要绕道网络框架。
时间: 2024-10-10 22:09:08