【问题标题】:Is it possible to have a Spark DataFrame partitioned by multiple columns, and at the same time partitioned by all the individual columns?是否可以将 Spark DataFrame 按多个列进行分区,同时按所有单独的列进行分区?
【发布时间】:2023-01-14 12:04:47
【问题描述】:

为了在 pyspark 中获得更高效的连接,我想同时在多个列上重新分区我的数据帧。

这不是 repartition 函数已经做的。例如,如果我在列 'c1' 和 'c2' 上进行分区,则 reparition 函数仅确保具有值对 (c1, c2) 的所有行都属于同一分区。相反,我想要一个分区,以确保所有具有相同值 c1 的行都落在同一个分区上,并且 c2 也是如此。

有了这个,我想在 c1 上进行连接时优化我的管道,然后在 c2 上进行另一个连接,而不必重新分配(隐式或显式)2 次。

有可能实现这一目标吗?

【问题讨论】:

    标签: python python-3.x apache-spark pyspark apache-spark-sql


    【解决方案1】:

    根据您的要求,如何正确划分以下行?

    |c1|c2|
    |-----|
    |a | y|
    |a | z|
    |b | z|
    

    【讨论】:

      猜你喜欢
      • 2016-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-18
      • 2016-10-15
      • 1970-01-01
      • 2018-10-19
      • 2022-01-03
      相关资源
      最近更新 更多