當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。