首页 > 解决方案 > 考拉 sort_index 增加 spark 分区

问题描述

我是考拉的新手,我很惊讶当我使用方法 sort_index() 和 sort_values() 时,火花分区会自动增加。

例子:

import databricks.koalas as ks
df = ks.DataFrame({'B': ['B2', 'B3', 'B6', 'B7'],
                  'D': ['D2', np.nan, 'D6', 'D7'],
                  'F': ['F2', 'F3', 'F6', 'F7']},
                 index=[0, 3, 6, 7])

print(df.spark.repartition(2).to_spark().rdd.getNumPartitions())

输出:

2

如果我使用随机列(或索引)进行排序,例如

print(df.spark.repartition(2).sort_values(by='B').to_spark().rdd.getNumPartitions())

输出:

4

为什么会发生这种情况?

我还尝试使用更大的数据集,并且分区增加更多(从 12 到 200)

标签: apache-sparkpysparkspark-koalas

解决方案


推荐阅读