spark transformation与action操作函数

一、Transformation

map(func) 返回一个新的分布式数据集,由每个原元素经过函数处理后的新元素组成

filter(func) 返回一个新的数据集,经过fun函数处理后返回值为true的原元素组成

flatMap(func) 类似于map,但每个输入元素会被映射为0个或多个输出元素

mapPartitions(func)  类似于map,对RDD的每个分区起作用

intersection(otherDataset) 求两个RDD的交集

distinct([numTasks]) 返回一个包含源数据集中所有不重复元素的新数据集

groupByKey([numTasks]) 在一个由(K,V)对组成的数据集上调用,返回一个(K,Seq[v])对组成的数据集。

reduceByKey(func,[numTasks]) 在一个(K,V)对组成的数据集上调用,返回一个(K,V)对的数据集

sortByKey([ascending],[numTasks]) 在类型为(K,V)的数据集上调用,返回以K为键进行排序的(K,V)对数据集。

二、Action操作

reduce(func) 通过函数func聚集结果集中的所有元素

collect() 在Driver的程序中,以数组的形式返回数据集中的所有数据。

count() 返回元素的个数

foreach(func) 在数据集的每一个元素上,运行函数func,通常用于更新一个累加器变量,或者和外部存储系统进行交互。

执行transformation操作时,spark并没有开始计算,只是将执行的任务封装成DAG,直到碰到action操作时 才真正提交集群 开始计算。

原文地址:https://www.cnblogs.com/yangsy0915/p/4876279.html