Spark中Java函数的使用方法笔记
1: map 函数
map是对RDD中的每个元素都执行一个指定的函数来产生一个新的RDD。 任何原RDD中的元素在新RDD中都有且只有一个元素与之对应。
2: mapPartitions函数</p>
mapPartitions是map的一个变种。map的输入函数是应用于RDD中每个元素,
而mapPartitions的输入函数是应用于每个分区,也就是把每个分区中的内容作为整体来处理的。
3: mapValues 函数
mapValues顾名思义就是输入函数应用于RDD中Kev-Value的Value,原RDD中的Key保持不变,与新的Value一起组成新的RDD中的元素。
因此,该函数只适用于元素为KV对的RDD。
4: mapPartitionsWithIndex 函数
mapPartitionsWithIndex是函数作用同mapPartitions,不过提供了两个参数,第一个参数为分区的索引。
5: flatMap 函数
与map类似,区别是原RDD中的元素经map处理后只能生成一个元素,而原RDD中的元素经flatmap处理后可生成多个元素来构建新RDD。
举例:对原RDD中的每个元素x产生y个元素(从1到y,y为元素x的值)
6、filter 函数
filter对每行数据执行过滤操作,返回true则保留,返回false则过滤该行数据
7、union函数
union操作对两个RDD数据进行合并。与SQL中的union一样
JavaSparkContext sc = new JavaSparkContext("local","SparkTest");
接受2个参数:
第一个参数表示运行方式(local、yarn-client、yarn-standalone等)
第二个参数表示应用名字
根据文件或者集合生成RDD后,接着就可以通过RDD的Transformation操作来完成对数据的各种转化操作
常用的map、flatMap、filter操作都是对单元素的操作
Spark中Java函数的使用方法笔记的更多相关文章
- 关于spark中DatatFrame函数操作中isin方法的使用
需求: 1.需要从一张mysql数据表中获取并筛选数据 2.通过spark将该表读进来,形成一个df:DataFrame,有一个集合 val list = List[String]("小李& ...
- Excel中choose函数的使用方法
你还在为Excel中choose函数的使用方法而苦恼吗,今天小编教你Excel中choose函数的使用方法,让你告别Excel中choose函数的使用方法的烦恼. 经验主要从四方面对Excel函数进行 ...
- Excel中Sumproduct函数的使用方法
1.sumproduct函数的含义 1 1.Sumproduct函数的适用范围,在给定的几组数组中,然后把数组间对应的元素相乘,最后返回乘积之和. 从字面上可以看出,sumproduct有两个英文单词 ...
- Excel中concatenate函数的使用方法
你还在为Excel中concatenate函数的使用方法而苦恼吗,今天小编教你Excel中concatenate函数的使用方法,让你告别Excel中concatenate函数的使用方法的烦恼. 经验主 ...
- Excel中countif函数的使用方法
1.countif函数的含义 在指定区域中按指定条件对单元格进行计数(单条件计数) 建议和countifs函数结合起来学习,可以观看小编的经验Excel中countifs函数的使用方法. END 2. ...
- python3中reduce()函数的使用方法示例
reduce() 函数会对参数序列中元素进行累积,下面这篇文章主要给大家介绍了关于python中reduce()函数的使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学 ...
- 关于C++与Java中虚函数问题的读书笔记
之前一直用C++编程,对虚函数还是一些较为肤浅的理解.可近期由于某些原因搞了下Java,发现有些知识点不熟,于是站在先驱巨人的肩上谈谈C++与Java中虚函数问题. Java中的虚函数 以下是段别人的 ...
- BigData进阶--Spark中的函数与符号
转自:https://blog.csdn.net/YSC1123/article/details/78905090 1.Character.isDigit() 判断是否为数字 2.Character. ...
- java中 Java.lang.Long.parseLong()方法
这是在刷杭电一道水题中遇到的,当时用java没思路,便查了查题解,用到了Java.lang.Long.parseLong()方法 题目链接:http://acm.hdu.edu.cn/showprob ...
随机推荐
- 在JS中将指定表单内的“具有name数据的表单元素的值”封装为Get形式的字符串
//封装post时候,表单中所有具有name数据的表单元素的值,并返回“n=1&p=a” function serialize(formid) { var arr = []; var ipts ...
- IReport制作报表——日期时间显示格式
转自:https://blog.csdn.net/linglinglu/article/details/9022679?utm_source=blogxgwz2 IReport工具在制作报表的时候,会 ...
- Qt传入参数argc argv[]
QtCreator是非常不错的IDE,最近在做的Qt命令行应用,因为调试的环境不同等问题,需要在调试的时候为 main() 传入参数.度娘了半天,没找到方法,只能自力更生.后来在“项目-构建和运行-运 ...
- Easyui TextBox 添加事件的方法
$("#txtPaySideId").textbox('textbox').bind("click", function () { showPlatform() ...
- 【Linux】Devops的一些运维工具
一.Devops简介 从手工编译.上传服务器文件.执行命令.启动停止服务器.发现BUG再重复一遍流程,软件开发的重复劳动越来越多,在Devops概念之前,全部要靠人工手动完成,也看到了很多运维人员半夜 ...
- PJzhang:最基本的正则表达式实例
猫宁!!! 参考链接: https://www.cnblogs.com/fozero/p/7868687.html http://tool.oschina.net/regex/# http://too ...
- Pycharm2018.3.1永久激活
Pycharm Professional 2018.3.1 版已正式发布,新版本添加对Python3.7的支持.作为强大的开发工具,但每次注册让人头疼,本着分享的心态,提供以下解决方案,亲测有效!本方 ...
- VLAN-4-在路由器上配置Trunk
VLAN Trunk技术可以用在路由器和主机上,也可以用在交换机上.路由器不支持DTP,所以工程师必须手动配置. 路由器Trunk需要使用子接口(在一个接口中实现多个vlan间的路由和通信),每个子接 ...
- celery (分布式系统)
celery 介绍 Celery - 分布式任务队列. Celery 是一个简单.灵活且可靠的,处理大量消息的分布式系统,并且提供维护这样一个系统的必需工具. 它是一个专注于实时处理的任务队列,同 ...
- 洛谷P2505||bzoj2750 [HAOI2012]道路 && zkw线段树
https://www.luogu.org/problemnew/show/P2505 https://www.lydsy.com/JudgeOnline/problem.php?id=2750 神奇 ...