Как получить n верхних элементов rdd на значение? - PullRequest
0 голосов
/ 01 июля 2018

Я создал СДР ключа / значений следующим образом:

RDD[(String, Int)]: rdd.map(row => row.split(1) -> 1).reduceByKey(_ + _)

Как я могу получить пять лучших элементов на основе значений?

1 Ответ

0 голосов
/ 01 июля 2018

Вы можете использовать rdd.top, чтобы избежать полной сортировки rdd:

rdd.top(5)(Ordering[Int].on(_._2))

Это определяет порядок значений и делает один O(n) проход по rdd, чтобы получить 5 лучших элементов на значение.

...