【问题标题】:should we use groupBy on dataframe or reduceBy [duplicate]我们应该在数据帧上使用 groupBy 还是 reduceBy [重复]
【发布时间】:2018-09-05 09:40:23
【问题描述】:

虽然groupBy apache spark 中的数据框,后来使用聚合与数据框中的另一列。有没有性能问题? reduceBy 可以成为更好的选择吗?

df.groupBy("primaryKey").agg(max("another column"))

【问题讨论】:

  • 不,这个问题显然不是“DataFrame / Dataset groupBy behavior/optimization”的重复,值得重新打开。
  • 不是重复的。

标签: apache-spark group-by spark-dataframe


【解决方案1】:

在 groupBy 中,reduce 作业将按顺序执行,但在 reduceByKey 中,内部 spark 并行运行多个 reduce 作业,因为它知道 key 并针对 key 运行 reduce。 ReduceByKey 提供比 groupBy 更好的性能。 您可以在两者上运行聚合。

【讨论】:

  • 我认为您混淆了 RDD 函数 groupByKey 和数据帧 groupBy,它们完全不同。数据框groupBy 将首先在本地聚合。
猜你喜欢
  • 1970-01-01
  • 2011-05-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多