Spark core详解系列二

RDD的Actions算子

官网贴图

  1. collect:把rdd中所有元素返回到一个数组,返回到driver端的memory中。
    如非要查看rdd中的数据:取出部分数据,或把rdd输出到文件系统。
  2. foreach
    rdd.foreach(println)
    rdd.foreachPartition(partition => partition.map(println)) //没有输出,输出在每个executor。
    思考:sortBy是全局排序吗?是。
    rdd. sortBy(_._2,false). foreach(println) //虽然sortBy是全局排序,但由于不止一个分区,foreach输出的时候分区的先后顺序随机,又把全局排序后的数据打乱了。
  3. rdd.count() //元素的个数
  4. rdd.reduce(_+_) //两两操作
  5. rdd.first() //底层调用的是take方法
    rdd.take(2) //返回头两个元素的数组
    rdd.top(2) //底层调用的是takeOrdered方法。
    top是从大到小排序取值,takeOrdered是从小到大排序取值。
  6. rdd.zipWithIndex().countByKey() //元素和index构成一个个元组,index在后。countByKey是action算子,统计key的次数
    rdd.zipWithIndex().collectAsMap() //返回的是元素和index的Map对。

spark组件详解

官网地址http://spark.apache.org/docs/latest/cluster-overview.html
在这里插入图片描述
在这里插入图片描述
注意

一个application包含1到n个job(spark-shell也是一个application);
一个job包含1到n个stage;
一个stage包含1到n个task,task与partition一一对应,而partition又与并行度一一对应。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值