ation算子通过sparkContext执行提交作业的runJob,触发rdd的DAG执行

(foreach)

foreach(f) 会对rdd中的每个函数进行f操作,下面的f操作就是打印输出没有元素

 saveAsTextFile
将rdd保存到hdfs指定的路径,将rdd中每一个分区保存到hdfs上的block
saveAsObjectFile
将rdd中每10个元素组成一个array,然后将这个array序列化,映射为(null,bytesWritable(y))
写入hdfs为Sequence格式
collect
collect将分布式的rdd返回成一个scala数组,通过函数操作,将结果返回到driver节点上存储

collectAsMap
对key-value型的rdd返回一个单击的hashMap,如果key值相同则后面的元素替换前面的元素

 reduceByKeyLocally
实现是先reduce再collectAsMap操作,将结果返回一个hashMao
 
lookup
对key-value型的rdd进行操作,通过指定的key,返回对应元素的Seq()对象,这个算子的优化在于
如果这个rdd包含分区器,那么就只对指定key所在的分区进行扫描,如果没有则会对rdd进行全量扫描
 
count
就是返回整个rdd元素的个数

 
reduce
reduce就是先将rdd中的每个分区key-value的集合进行reduceLeft,在对每个分区形成的集合reduceFeft
 
 
广播变量
他广泛用户map site join 这些小表,以及广播大变量等场景,这些数据集合在单节点内存能够容纳,不想rdd那样在节点中 打散,spark运行时会把广播变量的数据发送到各个节点,保存下来,后续计算可以复用

 

 

(三)spark算子 分为3大类的更多相关文章

  1. (一)spark算子 分为3大类

    value类型的算子 处理数据类型为value型的算子(也就是这个算子只处理数据类型为value的数据),可以根据rdd的输入分区与输出分区的关系分为以下几个类型 (1)输入分区与输出分区一对一型 m ...

  2. (二)spark算子 分为3大类

     transgormation的算子对key-value类型的数据有三种: (1)输入 与 输出为一对一关系 mapValue();针对key-value类型的数据并只对其中的value进行操作,不对 ...

  3. dll的加载方式主要分为两大类,显式和隐式链接

    之前简单写过如何创建lib和dll文件及简单的使用(http://blog.csdn.net/betabin/article/details/7239200).现在先再深入点写写dll的加载方式. d ...

  4. CSS的选择器分为两大类

    CSS的选择器分为两大类:基本选择题和扩展选择器. 基本选择器: 标签选择器:针对一类标签 ID选择器:针对某一个特定的标签使用 类选择器:针对你想要的所有标签使用 通用选择器(通配符):针对所有的标 ...

  5. 03 Java的数据类型分为两大类 类型转换 八大基本类型

    数据类型 强类型语言:要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用 Java的数据类型分为两大类 基本类型(primitive type) 数值类型 整数类型 byte占1个字节范围: ...

  6. java的数据类型分为两大类

    java的数据类型分为两大类 基本类型(primitive type) 数据类型 整数类型 byte占一个字节范围:-128-127 short占两个字节范围:-32768-32767 int占四个字 ...

  7. C#的设计模式分为3大类23种

    创建型: 1. 单件模式(Singleton Pattern) 2. 抽象工厂(Abstract Factory) 3. 建造者模式(Builder) 4. 工厂方法模式(Factory Method ...

  8. 一线大厂Java面试必问的2大类Tomcat调优

    一.前言 最近整理了 Tomcat 调优这块,基本上面试必问,于是就花了点时间去搜集一下 Tomcat 调优都调了些什么,先记录一下调优手段,更多详细的原理和实现以后用到时候再来补充记录,下面就来介绍 ...

  9. hook 9大类

    HOOK技术主要分为两大类,一是内核层HOOK,一是用户层HOOK. 用户层HOOK也就是在ring3环境下hook kenerl32.dll.User3.dll.Gui32.dll.Advapi.d ...

随机推荐

  1. 51nod 1004 n^n的末位数字【快速幂】

    1004 n^n的末位数字 题目来源: Author Ignatius.L (Hdu 1061) 基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题  收藏  关注 给出 ...

  2. spoj - Distinct Substrings(后缀数组)

    Distinct Substrings 题意 求一个字符串有多少个不同的子串. 分析 又一次体现了后缀数组的强大. 因为对于任意子串,一定是这个字符串的某个后缀的前缀. 我们直接去遍历排好序后的后缀字 ...

  3. 动态规划 001 - 编辑距离(Levenshtein Distance)问题

    问题 字符串的编辑距离也被称为距Levenshtein距离(Levenshtein Distance),属于经典算法,常用方法使用递归,更好的方法是使用动态规划算法,以避免出现重叠子问题的反复计算,减 ...

  4. 事务没有提交导致 锁等待Lock wait timeout exceeded异常

    异常:Lock wait timeout exceeded; try restarting transaction 解决办法: 执行select * from information_schema.i ...

  5. jqgrid postData setGridParam 调用多次时查询条件累加的问题--详情页查询导致的无法在新的页面中查询

    $("#btn_search").click(function () { url = "/AMEvents/GetGridJson?evtype=1"; var ...

  6. Visio中如何让重叠图形都显示

    如图,两个矩形重叠部分的边框都显示了,是拆分操作,不是组合.

  7. 写给嵌入式程序员的循环冗余校验(CRC)算法入门引导

    写给嵌入式程序员的循环冗余校验(CRC)算法入门引导 http://blog.csdn.net/liyuanbhu/article/details/7882789 前言 CRC校验(循环冗余校验)是数 ...

  8. androd 获得wifi列表

    AndroidManifest.xml <?xml version="1.0" encoding="utf-8"?> <manifest xm ...

  9. .Net程序测试使用阿里云OCS开放缓存服务

     首先需要有一个阿里的OCS实例和ECS云服务器 请确认这两个是在同一个可用区的,这个很重要! 这两个可以在阿里云官网申请得到 拿到OCS之后 进入OCS控制台,点击下面的客户端下载选择.Net客 ...

  10. iOS 引入外部字体 otf/ttf/ttc

    1.首先下载到字体的otf文件(Mac电脑下搜索字体册) 2.将字体文件拖到项目工程下 3.plist设置 Fonts provided by application 属性 4.代码中使用[UIFon ...