一、概述
和转化操作一样,所有基础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