一、概述
和轉化操作一樣,所有基礎RDD 支持的傳統行動操作也都在pair RDD 上可用。Pair RDD提供了一些額外的行動操作,可以讓我們充分利用數據的鍵值對特性。
二、詳解
1、countByKey() 對每個鍵對應的元素分別計數
示例:
val rdd = sc.parallelize(List((1, 2), (3, 4), (3, 6)))
rdd.countByKey().foreach(println)
(1,1)
(3,2)
2、collectAsMap() 將結果以映射表的形式返回
val rdd = sc.parallelize(List((1, 2), (3, 4), (3, 6)))
rdd.collectAsMap().foreach(println)
(1,1)
(3,2)
3、lookup(key) 返回給定鍵對應的所有值
val rdd = sc.parallelize(List((1, 2), (3, 4), (3, 6)))
rdd.lookup(3).foreach(println)
4
6