Goroutine “气泡”宇宙——Go 并发模型的新维度
2025/12/21 3:35:06
ROW_NUMBER()按学生分组并降序排序,筛选出每人最高三次成绩,最终按指定格式输出结果,展示了 Spark SQL 在分组排名场景中的高效处理能力。ROW_NUMBER() OVER (PARTITION BY name ORDER BY grade DESC)窗口函数为每名学生的成绩排序并编号,再筛选排名 ≤3 的记录。最后通过 RDD 的groupByKey()在 Driver 端聚合并格式化输出,简洁实现了如“张三丰: 94 90 87”的展示效果。整个流程融合了 Spark SQL 的声明式查询优势与 Python 的灵活后处理能力,既保证了分布式计算效率,又满足了业务展示需求。该方法可轻松扩展至 Top5、Top10 等场景,是用户行为分析、成绩统计等业务中常用的数据处理范式。