为了账号安全,请及时绑定邮箱和手机立即绑定

Spark中执行transformation和action的区别

Spark中执行transformation和action的区别

郎朗坤 2018-11-26 17:00:44
Spark中执行transformation和action的区别
查看完整描述

1 回答

?
泛舟湖上清波郎朗

TA贡献1818条经验 获得超3个赞

从运行层面来看,Transformation实际上是一种链式的逻辑Action,记录了RDD演变的过程。Action则是实质触发
Transformation开始计算的动作,由于在每个Transformation的过程中都有记录,所以每个RDD是知道上一个RDD是怎样转变为
当前状态的,所以如果出错就可以很容易的重新演绎计算过程。
Transformation和Actions操作概况Transformation具体内容
map(func) :返回一个新的分布式数据集,由每个原元素经过func函数转换后组成
filter(func) : 返回一个新的数据集,由经过func函数后返回值为true的原元素组成
*flatMap(func) : 类似于map,但是每一个输入元素,会被映射为0到多个输出元素(因此,func函数的返回值是一个Seq,而不是单一元素)
flatMap(func) : 类似于map,但是每一个输入元素,会被映射为0到多个输出元素(因此,func函数的返回值是一个Seq,而不是单一元素)
sample(withReplacement, frac, seed) :
根据给定的随机种子seed,随机抽样出数量为frac的数据
union(otherDataset) : 返回一个新的数据集,由原数据集和参数联合而成
groupByKey([numTasks]) :
在一个由(K,V)对组成的数据集上调用,返回一个(K,Seq[V])对的数据集。注意:默认情况下,使用8个并行任务进行分组,你可以传入numTask可选参数,根据数据量设置不同数目的Task
reduceByKey(func,
[numTasks]) :
在一个(K,V)对的数据集上使用,返回一个(K,V)对的数据集,key相同的值,都被使用指定的reduce函数聚合到一起。和groupbykey



查看完整回答
反对 回复 2018-12-16
  • 1 回答
  • 0 关注
  • 740 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信