RDD数据是不可变的:

transformation

将一个RDD变成一个新的RDD’
比如mapreduce中的map操作,将数据集里的元素做处理变成新的元素,形成RDD’。transformation是不会立刻将结果算出来的,相当于把你的意图记下来,最后还要经过action这样的刺激才会返回计算结果。如下几个算子属于transformation操作:
(1)map(func)操作,上图已经用到
(2)filter(func)操作,将满足函数的元素返回true值并保存,不满足的过滤掉
(3)flatMap(func)操作,先将元素进行map,再把所得到的所有元素变成一个对象:
<1>flatMap



<2>map

对比可以看出,map出来的还是两个对象,而flatMap出来的对象只有一个。
(4)union、intersection
求两个RDD之间的并集与交集
(5)groupByKey
将元组中的第0个元素当做key,进行分组

action

就像上面所说的transformation,它是惰性的,必须要有一个东西刺激它才会出结果,action就派上了用场,如下也有一些action算子:
(1)collect
(2)reduce
(3)first

persisit

此操作将数据缓存在内存或者磁盘上。
其实还有一些算子没有列出,欢迎大家补充指正

Spark(4)——transformation、action、persist相关推荐

  1. Spark(火花)快速、通用的大数据处理引擎框架

    一.什么是Spark(火花)? 是一种快速.通用处理大数据分析的框架引擎. 二.Spark的四大特性 1.快速: Spark内存上采用DAG(有向无环图)执行引擎非循环数据流和内存计算支持. 内存上比 ...

  2. spark(kryo)、hadoop(writable)、jdk(serializable)-序列化

    一.SRC 一个类在jvm中是有结构的,但即使是在jvm中,也是一堆数据.网络只能传文本,所以需要序列化和反序列化. 通过几种方式的序列化后文本输出到本地文件,可以对比下大小. 二.jdk的序列化 将 ...

  3. Struts2框架--学习笔记(下):OGNL表达式、值栈操作、拦截器、struts2标签、文件上传

    一.OGNL概述:OGNL是一种表达式 (1)在struts2中操作值栈数据. (2)一般把ognl在struts2中操作,和struts2标签一起使用操作值栈. (3)ognl不是strut2的一部 ...

  4. C++ 学习笔记(19)new/delete表达式、定位new、typeid、dynamic_cast、type_info、枚举类型、成员函数指针、union、位域、volatile限定符、链接指示

    C++ 学习笔记(19)new/delete表达式.定位new.typeid.dynamic_cast.type_info.枚举类型.成员函数指针.union.位域.volatile限定符.链接指示 ...

  5. Node.js b站教学视频汇总笔记(完)CommonJS模块规范、 require、npm、Express(中间件)、MongoDB、MySQL

    文章目录 Node.js b站教学视频汇总笔记(完)CommonJS模块规范. require.npm.Express(中间件).MongoDB.MySQL 1. Node介绍 为什么要学习Node. ...

  6. Android-Framework学习笔记(九)—— Broadcast的注册、发送和接收过程

    系列文章 Android-Framework学习笔记(一)-- Android系统架构 Android-Framework学习笔记(二)-- Zygote进程启动过程 Android-Framewor ...

  7. 基于Metronic的Bootstrap开发框架经验总结(7)--数据的导入、导出及附件的查看处理...

    在很多系统模块里面,我们可能都需要进行一定的数据交换处理,也就是数据的导入或者导出操作,这样的批量处理能给系统用户更好的操作体验,也提高了用户录入数据的效率.我在较早时期的EasyUI的Web框架上, ...

  8. 《OpenCV3编程入门》学习笔记6 图像处理(四)形态学滤波(2):开运算、闭运算、形态学梯度、顶帽、黑帽

    6.4 形态学滤波(2):开运算.闭运算.形态学梯度.顶帽.黑帽 高级形态学变换,基于腐蚀与膨胀,利用morphologyEx函数实现 6.4.1 开运算 1.腐蚀后膨胀的过程,数学表达式:dst=o ...

  9. 泰坦尼克号(titanic)数据集字段解释、数据导入实战

    泰坦尼克号(titanic)数据集字段解释.数据导入实战 目录 泰坦尼克号(titanic)数据集字段解释.数据导入实战 #数据字段说明 #导入数据 #数据字段说明 # 尽管在沉船事件中幸存下有'一些 ...

最新文章

  1. 太原科技大学计算机在哪个校区,太原科技大学有几个校区及校区地址 哪个校区最好...
  2. Asterisk入门系列
  3. 【SSM面向CRUD编程专栏 1】Spring简介 xml配置文件 依赖注入 数据注入
  4. python将数据写入excel_【Python】将数据库中的数据查询出来自动写入excel文档
  5. 前嗅ForeSpider教程:字段的取值与清洗
  6. 用来快速检查hdf5,npy和npz文件的Python脚本
  7. 对接支付宝流程【网页支付,手机网页支付,APP支付】
  8. 强连通分量 Kosaraju科萨拉朱算法
  9. 【排序算法】基数排序:LSD 与 MSD
  10. 三菱系统四轴正反转参数_三菱第四轴参数
  11. iOS-事件响应链、单例模式、工厂模式、观察者模式
  12. python获取arduino数据可视化_Arduino数据可视化在实验教学中的应用
  13. 巧妙设置QQ密码 气死嚣张木马(转)
  14. 对称加密和非对称加密,数字签名和证书
  15. 金字塔原理(pgn 项目计划、方案、汇报、总结、PPT等)
  16. Windows笔记本移动热点打不开
  17. 第8章第16节:制作企业宣传册的公司团队第三页面 [PowerPoint精美幻灯片实战教程]
  18. 全局性谋划、战略性布局、整体性推进智能技术
  19. 2018年,人工智能 VS 区块链,谁更牛呢?
  20. 编译报错出现原因以及处理方法之Error:(1, 1) java: 非法字符: ‘\ufeff‘

热门文章

  1. C语言学习之求一个3×3的整型矩阵对角线元素之和
  2. 2016秋季阅读计划
  3. 快速排序、希尔排序、插入排序、选择排序、归并排序、堆排序总结
  4. JS forEach()与map() 用法(转载)
  5. (转)OpenGL中位图的操作(glReadPixels,glDrawPixels和glCopyPixels应用举例)
  6. 转载:一道逻辑题 房间里有100盏电灯
  7. 你了解 Assembly.Load 吗?
  8. [网络安全自学篇] 八十.WHUCTF之WEB类解题思路WP(代码审计、文件包含、过滤绕过、SQL注入)
  9. 【数据结构与算法】之深入解析“格雷编码”的求解思路与算法示例
  10. 2019/Province_C_C++_A/F/完全二叉树的权值