当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python pyspark DataFrame.coalesce用法及代码示例


本文简要介绍 pyspark.sql.DataFrame.coalesce 的用法。

用法:

DataFrame.coalesce(numPartitions)

返回具有完全 numPartitions 分区的新 DataFrame

类似于在 RDD 上定义的合并,此操作会导致窄依赖,例如如果您从 1000 个分区增加到 100 个分区,则不会有洗牌,而是 100 个新分区中的每一个都将占用当前分区中的 10 个。如果请求的分区数更大,它将保持当前的分区数。

但是,如果您要进行剧烈的合并,例如对于 numPartitions = 1,这可能会导致您的计算发生在比您喜欢的更少的节点上(例如,在 numPartitions = 1 的情况下为一个节点)。为避免这种情况,您可以调用repartition()。这将添加一个 shuffle 步骤,但意味着当前的上游分区将并行执行(无论当前分区是什么)。

1.4.0 版中的新函数。

参数

numPartitionsint

指定目标分区数

例子

>>> df.coalesce(1).rdd.getNumPartitions()
1

相关用法


注:本文由纯净天空筛选整理自spark.apache.org大神的英文原创作品 pyspark.sql.DataFrame.coalesce。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。