专栏首页大数据那些事Spark(4)——transformation、action、persist

Spark(4)——transformation、action、persist

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

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 防火墙(8)——iptables有关网卡的禁止

    ps:在设置完网卡信息以后,要使用systemctl restart network/service network restart。 要测试此项目,我们首先...

    gzq大数据
  • Hbase(5)——python用happybase操作Hbase

    首先要在jvm上开启hbase服务 并且在jvm上的9090端口开启thrift服务:hbase thrift start-port:9090

    gzq大数据
  • ansible(6)——模块命令command、shell详细用法

    前面在使用-m command命令时,只用了一些基本的操作,其实可以通过ansible-doc的命令查看command里和shell更加详细的功能:

    gzq大数据
  • 王知无的技术周报(3.25-3.29日)

    本篇重点向大家介绍了一种新的JOIN类型 - JOIN LATERAL。并向大家介绍了SQL Server中对LATERAL的支持方式,详细分析了JOIN LA...

    大数据技术与架构
  • Apache-Flink深度解析-JOIN 算子

    在《SQL概览》中我们介绍了JOIN算子的语义和基本的使用方式,介绍过程中大家发现Apache Flink在语法语义上是遵循ANSI-SQL标准的,那么再深思一...

    大数据技术与架构
  • SQL的各种连接Join详解

    SQL JOIN 子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段。

    用户5745385
  • SQL的各种连接Join详解,都需要熟练掌握!

    SQL JOIN 子句用于把来自两个或多个表的行结合起来,基于这些表之间的共同字段。最常见的 JOIN 类型:SQL INNER JOIN(简单的 JOIN)、...

    全栈自学社区
  • Apache-Flink深度解析-JOIN 算子

    在《Apache Flink 漫谈系列 - SQL概览》中我对JOIN算子有过简单的介绍,这里我们以具体实例的方式让大家对JOIN算子加深印象。JOIN的本质是...

    大数据技术与架构
  • 阿里面试题及答案详解(一)(逐行代码注释并附解题思路)

    1、人家告诉你ECS、RDS即有通用属性,又包含自己的特有属性,很明显考的是面向对象中的继承。

    用户1272076
  • 麻省理工学院通过新型人工智能系统用电脑可以合成新材料

    即使在缺少试验数据的情况下,设备学习系统也可以在材料“配方”中找到相应的模式。 上个月,麻省理工学院的三位材料科学家及其同事发表了一篇论文,讲述了一种新型人工智...

    企鹅号小编

扫码关注云+社区

领取腾讯云代金券