在apache火花中排序

时间:2016-07-29 05:32:23

标签: apache-spark rdd

我正在使用Apache spark开发一个项目。我非常清楚spark中的转换和动作,但突然之间我对spark中的sortByKey()函数感到困惑。

它是如何工作的,它是否认为用于排序或数据的所有分区(即所有RDD)都在单个RDD中排序?

我的要求是将数据全局排序,就像我们使用任何编程语言排序一样(java中的Collections.sort())。

考虑以下代码:(经过一系列操作后,xyz为rdd)

\r\n

上述语句是否给出了全局排序的结果?

如果不是,那么如何全局排序数据,即考虑所有分区中的所有数据?

提前致谢。

1 个答案:

答案 0 :(得分:0)

全局排序(OrderedRDDFunctions):

  

按键对RDD进行排序,以便每个分区都包含已排序的元素范围。调用收集或保存生成的RDD将返回或输出有序的记录列表(在保存的情况下,它们将按键的顺序写入文件系统中的多个part-X文件)。