当前位置:   article > 正文

spark中使用repartition没有效果_spark rdd 重分区不起作用

spark rdd 重分区不起作用

在使用repartition()时出现下述问题:

  1. print(rdd.getNumPartitions())
  2. rdd.repartition(100)
  3. print(rdd.getNumPartitions())


两次打印的结果相同
产生上述问题的原因有两个:
首先 repartition()是惰性求值操作,需要执行一个action操作才可以使其执行。
其次,repartition()操作会返回一个新的rdd,并且新的rdd的分区已经修改为新的分区数,因此必须使用返回的rdd,否则将仍在使用旧的分区。
修改为:
 

rdd2 = rdd.repartition(100)


参考:
https://stackoverflow.com/questions/31508345/repartition-is-not-affecting-rdd-partition-size

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/空白诗007/article/detail/736424
推荐阅读
相关标签
  

闽ICP备14008679号