从(Key,Value)中的Spark pairRDD中按值排序,其中值来自spark-sql

时间:2015-05-26 22:15:09

标签: scala apache-spark

我创建了这样的地图 -

"folder:page"

这里的b是

类型
val b = a.map(x => (x(0), x) ) 
  1. 如何使用值行中的字段对每个键中的PairRDD进行排序?
  2. 之后我想运行一个函数,该函数以先前排序的顺序隔离处理每个Key的所有值。那可能吗?如果是的话,请举个例子。
  3. 是否需要考虑对RDD进行分区?

1 个答案:

答案 0 :(得分:1)

只回答你的第一个问题:

val indexToSelect: Int = ??? //points to sortable type (has Ordering or is Ordered)
sorted = rdd.sortBy(pair => pair._2(indexToSelect))

这样做,它只是选择对中的第二个值(pair._2),并从该行中选择适当的值((indexToSelect)或更详细地:.apply(indexToSelect))。< / p>