4,794
社区成员
发帖
与我相关
我的任务
分享
repartition算子用来对RDD的分区执行重新分区,根据指定的分区数,重新对RDD的数据进行Shuffle,生成一个新的RDD。repartition算子的定义如下:
def repartition(self: "RDD[T]", numPartitions: int) -> "RDD[T]"
案例:
rdd1 = sc.parallelize(["Hello Python", "Hello Spark You", "Hello Python Spark", "You know PySpark"])
rdd2 = rdd1.repartition(4)
rdd3 = rdd1.repartition(1)
print("RDD1的分区数是:", rdd1.getNumPartitions())
print("RDD2的分区数是:", rdd2.getNumPartitions())
print("RDD3的分区数是:", rdd3.getNumPartitions())