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


R SparkR coalesce用法及代码示例


说明:

返回具有完全 numPartitions 分区的新 SparkDataFrame。此操作导致狭窄的依赖关系,例如如果您从 1000 个分区增加到 100 个分区,则不会有洗牌,而是 100 个新分区中的每一个都将占用当前分区中的 10 个。如果请求的分区数更大,它将保持当前的分区数。

用法:

coalesce(x, ...)

## S4 method for signature 'SparkDataFrame'
coalesce(x, numPartitions)

参数:

  • x 一个 SparkDataFrame。
  • ... 附加参数。
  • numPartitions 要使用的分区数。

细节:

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

注意:

从 2.1.1 开始合并(SparkDataFrame)

例子:

sparkR.session()
path <- "path/to/file.json"
df <- read.json(path)
newDF <- coalesce(df, 1L)

相关用法


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