首页 > 解决方案 > 在 Pyspark 中对大量数据进行全球排名的有效方法

问题描述

我正在尝试使用 Pyspark 对大量数据进行全球排名。

我在网上搜索,发现很多答案都使用了window:

window_rank = Window.orderBy(F.asc('score'))
scores_df = scores_df.withColumn('rank', F.row_number().over(window_rank))

但是,这种方法似乎将所有数据洗牌到一个工作节点中,因此对于大量数据来说并不是最佳选择。

在 Pyspark 中是否有分布式方式来执行排名任务?

标签: sortingpysparkranking

解决方案


推荐阅读