RDD 动作列表
Action | 含义 |
reduce(func) | 使用函数func(它接受两个参数并返回一个)来聚合数据集的元素。 该函数应该是可交换和关联的,以便可以并行地正确计算它。 |
collect() | 在驱动程序中将数据集的所有元素作为数组返回。 在过滤器或其他操作返回足够小的数据子集之后,这通常很有用。 |
count() | 返回数据集中元素的数量。 |
first() | 返回数据集的第一个元素(类似于take(1))。 |
take(n) | 返回包含数据集前n个元素的数组。 |
takeSample(withReplacement,num,[seed]) | 返回一个数组,其中包含数据集的num元素的随机样本,包含或不包含替换,可以预先指定一个随机数生成器种子。 |
takeOrdered(n,[ordering]) | 使用自然顺序或自定义比较器返回RDD的前n个元素。 |
saveAsTextFile(path) | 将数据集的元素作为文本文件(或文本文件集)写入本地文件系统,HDFS或任何其他Hadoop支持的文件系统中的给定目录中。 Spark在每个元素上调用toString将其转换为文件中的一行文本。 |
saveAsSequenceFile(path)(Java and Scala) | 将数据集的元素作为Hadoop SequenceFile写入本地文件系统,HDFS或任何其他Hadoop支持的文件系统的给定路径中。 这在实现Hadoop的Writable接口的键值对的RDD上可用。 在Scala中,它也可用于可隐式转换为Writable的类型(Spark包含Int,Double,String等基本类型的转换)。 |
saveAsObjectFile(path)(Java and Scala) | 使用Java序列化以简单的格式写入数据集的元素,然后使用SparkContext.objectFile()加载该序列化。 |
countByKey() | 仅适用于类型(K,V)的RDD。 用(K,Int)对的hashmap返回每个键的计数。 |
foreach(func) | 在数据集的每个元素上运行函数func。 这通常是为了副作用而完成的,例如更新累加器或与外部存储系统交互。 注意:修改foreach()之外的累加器以外的变量可能会导致未定义的行为。 有关更多详细信息,请参阅了解闭包 |