4 pyspark学习---RDD
开始新的东西,其实很多操作在第二篇的时候就有所介绍啦。在这里继续学习一遍加深一下印象。
1关于RDD
(1) RDD-----Resilient Distributed Dataset,弹性分布式数据集。这些元素在多个节点上运行和操作,以便在集群上进行并行处理。
(2)RDD是弹性得。
比如map操作,可以拆分成对数据块得直接计算而不涉及其他节点。这样得操作只是在一个节点上面直接得操作,不会影响RDD得操作。但是也有比如groupBy,在不完全知道每个key得分布得时候,必须遍历RDD所有得数据块,然后将相同得key汇聚。
(2)转换----->行动
转换操作比如Fileter groupBy,map等
行动操作比如collect
2 例子
# coding:utf-8
from pyspark import SparkContext, SparkConf
from operator import add
sc = SparkContext() words = sc.parallelize (
["scala",
"java",
"hadoop",
"spark",
"akka",
"spark vs hadoop",
"pyspark",
"pyspark and spark"]
)
#输出rdd元素个数count
counts = words.count()
print counts #输出所有得元素collect
print 'elements in RDD->%s'%(words.collect()) #输出满足条件得元素foreach
def f(x):print(x)
fore = words.foreach(f) #返回新的RDD 满足相应得条件 filter
words_filter = words.filter(lambda x: 'spark' in x).collect()
print words_filter
#返回新的RDD 满足相应得条件 map value都为1
words_map = words.map(lambda x: (x,1)) #reduce 引入add
nums = sc.parallelize([1,2,3,4,5])
adding = nums.reduce(add)# #cache 持久RDD 判断是否是持久
print words.persist().is_cached
好了 加油!
4 pyspark学习---RDD的更多相关文章
- 5 pyspark学习---Broadcast&Accumulator&sparkConf
1 对于并行处理,Apache Spark使用共享变量.当驱动程序将任务发送给集群上的执行者时,集群中的每个节点上都有一个共享变量的副本,这样就可以用于执行任务了. 2 两种支持得类型 (1)Broa ...
- 3 pyspark学习---sparkContext概述
1 Tutorial Spark本身是由scala语言编写,为了支持py对spark的支持呢就出现了pyspark.它依然可以通过导入Py4j进行RDDS等操作. 2 sparkContext (1) ...
- 2 pyspark学习----基本操作
1 spark的python环境部署可以参照上面一篇哟.http://www.cnblogs.com/lanjianhappy/p/8705974.html 2 pyspark的基本操作. # cod ...
- (2)pyspark建立RDD以及读取文件成dataframe
别人的相关代码文件:https://github.com/bryanyang0528/hellobi/tree/master/pyspark 1.启动spark (1)SparkSession 是 S ...
- pyspark学习笔记
记录一些pyspark常用的用法,用到的就会加进来 pyspark指定分区个数 通过spark指定最终存储文件的个数,以解决例如小文件的问题,比hive方便,直观 有两种方法,repartition, ...
- 【Spark】【RDD】初次学习RDD 笔记 汇总
RDD Author:萌狼蓝天 [哔哩哔哩]萌狼蓝天 [博客]https://mllt.cc [博客园]萌狼蓝天 - 博客园 [微信公众号]mllt9920 [学习交流QQ群]238948804 目录 ...
- pyspark 学习笔记
from pyspark.sql import SparkSession spark = SparkSession \ .builder \ .appName("Python Spark S ...
- 【Spark】快来学习RDD的创建以及操作方式吧!
目录 RDD的创建 三种方式 从一个集合中创建 从文件中创建 从其他的RDD转化而来 RDD编程常用API 算子分类 Transformation 概述 帮助文档 常用Transformation表 ...
- Spark RDD设计学习笔记
本文档是学习RDD经典论文<Resilient Distributed Datasets: A Fault-Tolerant Abstraction for In-Memory Cluster ...
随机推荐
- EC2的维护更新
2014年9月28日 近期几天.我们收到了一些客户关于我们即将进行维护更新的问题.下面是AWS全球Blog网站对这个问题的说明,供客户參照. 我们已经開始通知那些受影响的客户,关于我们即将实施的 ...
- 零基础学python-4.5 标准类型分类
1.按存储分:原子类型和容器类型 原子类型:仅仅能包括一个对象 容器类型:能够包括多个对象 分类 python类型 原子类型 数值和字符串 容器类型 列表.元组和字典 2.按能否够变化分:可变和不可变 ...
- vmware workstation14永久激活密钥
vmware workstation14永久激活密钥分享: CG54H-D8D0H-H8DHY-C6X7X-N2KG6 ZC3WK-AFXEK-488JP-A7MQX-XL8YF AC5XK-0ZD4 ...
- 解决Android Studio下Element layer-list must be declared问题
近期将一个项目从Eclipse转到Android Studio. 项目中使用了环信demo中的一些xml资源,转换后发现color资源目录下诸如layer-list或者shape等标签报Element ...
- uGUI动态加载控件位置错误(转自:https://www.cnblogs.com/mezero/p/4542939.html)
最近在使用uGUI时遇到了一个问题,在此记录一下.在Canvas的Render Mode设置为Screen Space-Overlay模式时,动态加载控件是不会发生问题的.但是在Screen Spac ...
- 【BZOJ1414/3705】[ZJOI2009]对称的正方形 二分+hash
[BZOJ1414/3705][ZJOI2009]对称的正方形 Description Orez很喜欢搜集一些神秘的数据,并经常把它们排成一个矩阵进行研究.最近,Orez又得到了一些数据,并已经把它们 ...
- 【BZOJ4668】冷战 并查集
[BZOJ4668]冷战 Description 1946 年 3 月 5 日,英国前首相温斯顿·丘吉尔在美国富尔顿发表“铁幕演说”,正式拉开了冷战序幕. 美国和苏联同为世界上的“超级大国”,为了争夺 ...
- mvn 添加本地jar包
- 在c代码中获取用户环境变量
1 extern char ** environ 这是一个字符串数组,最后一个元素是null,即\0. 2 在代码中的使用方法 直接extern char **environ,然后 直接environ ...
- PYTHON 爬虫笔记四:正则表达式基础用法
知识点一:正则表达式详解及其基本使用方法 什么是正则表达式 正则表达式对子符串操作的一种逻辑公式,就是事先定义好的一些特定字符.及这些特定字符的组合,组成一个‘规则字符串’,这个‘规则字符串’用来表达 ...