怎样理解Spark中的Transformation和Action
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,今天就跟大家聊聊有关怎样理解Spark中的Transformation和Action,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1、RDD的
千家信息网最后更新 2025年12月03日怎样理解Spark中的Transformation和Action
今天就跟大家聊聊有关怎样理解Spark中的Transformation和Action,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
1、RDD的两种类型操作

RDD的创建:
(SparkContext) sc.parallelize(collection) //将一个集合转换成RDD
sc.textFile("path..") //读取一个文件并转换成RDD
2、Transformations类型
延迟执行,一个RDD通过该操作产生的新的RDD时不会立即执行,只有等到Action操作才会真正执行。
map(func):对调用map的RDD数据集中的每个element都使用func,然后返回一个新的RDD,这个返回的数据集是分布式的数据集示例:var list = List(1,2,3,4,5,6); //定义一个List集合//对于调用map的list而言,num表示list中每一个element,每个element都*2,num可以理解为一个变量名list.map(num=>num*2) 结果:List(2,4,6,8,10,12)//list.map(num=>num*2)可以看成是集合中每个element*2
filter(func):对调用filter的RDD数据集中的每个元素都使用func,然后返回一个包含使func为true的元素构成的RDD示例:var list = List(1,2,3,4,5,6); //定义一个List集合//对于调用filter的list而言,num表示list中每一个element,筛选每个符合>2条件的elementlist.filter(num=>num>2) //参数必须是一个Boolean打印结果:List[Int] = List(3, 4, 5, 6)
flatMap(func):和map差不多,但是flatMap生成的是多个结果 示例:// 定义一个元素为String的集合var strList = List("hello world","hello xm","hello xh","hello , Im fine","hello how are you?")// 将每个element切分成多个字段,flatMap每个参与计算的element必须返回多个结果或者一个数组,例如返回的结果// 可以这样:List(Array(...),Array(...),...)strList.flatMap(stsr=>str.split(" "))打印结果:List(hello, world, hello, xm, hello, xh, hello, ,, Im, fine, hello, how, are, you?)groupByKey():将相同key的value进行分组groupByReduce():将相同key的value进行合并计算union:将两个RDD聚合,例如:RDD1->(1,2,3),RDD2->(1,2,3),RDD1 union RDD2 -> (1,2,3,1,2,3)join:将两个RDD取笛卡尔积SortByKey(boolean):按照key进行排序,true为降序,false为升序,如果想将value进行排序,可以将key和value位置互换,互换操作:map(x=>(x._2,x._1))
3、Actions类型
提交Spark作业,当Action时,Transformation类型的操作才会真正执行计算操作,然后产生最终结果输出。
cache:将结果放到内存count:统计element的数量collect:返回一个数组结果reduce:对所有的element进行合并lookup:针对某个key查看valuesave:将结果保存到磁盘
看完上述内容,你们对怎样理解Spark中的Transformation和Action有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。
结果
数据
类型
元素
内容
多个
示例
相同
两个
数组
排序
差不多
位置
内存
分布式
升序
参数
变量
只有
字段
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
第六届中国网络安全峰会
软件开发的市场需求分析
服务器文件夹怎么创建
sql数据库年龄怎么设置范围
db2数据库字符串转日期
维修数据库设备
深圳计算机网络技术工资待遇
德阳星美姬软件开发
互联网金融概念股科技
服务器租用协议pdf下载
网络技术应用结业考试
网络安全保护制度是什么制度
四川省公安厅网络安全与执法
下载服务器文件
企业代理服务器
用友财务软件开发案例
公司服务器和备份管理制度
遵化服务器到承德县
魔兽正式服如何选择服务器
服务器的年托管
数据库运行久了卡顿
2b 2t服务器安全区
access数据库怎么加密
纬领网络安全
like数据库表示什么
php软件开发总结
艾尔等法环服务器
软银芯达互联网科技有限公司
知网数据库检索式
魔兽正式服如何选择服务器