大数据spark程序员

Spark Shuffle之Tungsten Sort Shuf

2016-01-14  本文已影响290人  jacksu在简书

源文件放在github,随着理解的深入,不断更新,如有谬误之处,欢迎指正。原文链接https://github.com/jacksu/utils4s/blob/master/spark-knowledge/md/tungsten-sort-shuffle.md
正如你所知,spark实现了多种shuffle方法,通过 spark.shuffle.manager来确定。暂时总共有三种:hash shuffle、sort shuffle和tungsten-sort shuffle,从1.2.0开始默认为sort shuffle。本节主要介绍tungsten-sort。spark在1.4以后可以通过(spark.shuffle.manager = tungsten-sort)开启Tungsten-sort shuffle。如果Tungsten-sort 发现自己无法处理,则会自动使用 Sort Based Shuffle进行处理。Tungsten-sort优化点主要有:

当且仅当下面条件都满足时,才会使用新的Shuffle方式:

优点

很多性能的优化

缺点

  1. 不可以在mapper端排序
  2. 不稳定
  3. 没有提供off-heap排序缓存

参考

Spark Tungsten-sort Based Shuffle 分析
探索Spark Tungsten的秘密

上一篇 下一篇

猜你喜欢

热点阅读