coalesce

repartition(numPartitions:Int):RDD[T]

coalesce(numPartitions:Int,shuffle:Boolean=false):RDD[T]

同:RDD的分区进行重新划分

异:repatition是coalesce一种情况,即分区增加,shuffle默认为true。

如果N>M并且两者相差悬殊,可能造成spark程序的并行度不够,从而影响性能,如果在M为1的时候,为了使coalesce之前的操作有更好的并行度,可以将shuffle设置为true。

因为:只有shuffle才能增加partitions。

!!:这个和sql server的api不一样。

使用场景:

通过多步骤的RDD操作后有很多空任务或者小任务产生,通过此减少partition数。

posted on 2017-10-06 01:55  satyrs  阅读(606)  评论(0编辑  收藏  举报

导航