2.Spark RDD相关知识介绍

原创 2016年06月01日 08:40:45
第一:基于工作集合的应用抽象(中间的和曾经的)
第二:RDD内幕解密
第三:RDD思考
-----------------------------------------
基于工作集合的应用抽象特点:位置感知,容错,负载均衡
基于数据集:从物理存储加载数据,操作数据,写入物理存储。
缺点:不适合大量的迭代运算,交互查询,重点是基于数据流的方式,不能复用曾经的结果或者中间计算结果
----------------------------------------------------
RDD弹性层面的特点:
1、自动进行内存和数据磁盘存储转换。
2、基于lineage的高度容错
3、task如果失败会自动进行特定次数的重试、
4、stage失败会自动进行特定次数的重试。
5、checkpoint和persist
6、数据调度弹性:DAG,task和资源管理无关
7、数据分片的高度弹性。
-------------------------------
RDD特点举例:
f(x)=x+2
x=y+1
y=z+3
每次的第一个参数都是this,父依赖。相当于函数展开的过程。
---------------------------------
常规的容错方式有2种:数据检查点和记录数据更新。
数据检查点:通过数据中心的网络,连接每台机器,复制数据集。此种情况会通过网络,严重消耗io
数据更新:每次改变都要记录(写操作)。问题:1复杂,数据更新太多2消耗性能
spark采用的方式:数据更新,之所以高效是因为
1.RDD是不可变得lazy级别,且是计算链条,不产生中间结果,只是记录的相互依赖。
例如第901步出错,可以从第900步开始计算。前提是900步进行了persist或者是stage
2.RDD的写操作是粗粒度的,但是RDD的读(查询),既可以是粗粒度,也可以是细粒度的。
---------------------------------------
repartition 默认是shuffle的
coalesce默认不shuffle
------------------------------------
RDD操作默认返回的是itorator,spark的接口可以调用子类的方法,原因就是this.type
-------------------------------------------------------------------------------------------
RDD缺点:不支持细粒度的更新操作和增量迭代计算
-----------------------------------
如果是scala集合的话,那么针对数据本地性,是数据集合会被copy到计算节点内存。
-------------------------------------------------------------
spark rdd是被分区的,对于rdd来说,每个分区都会被一个计算任务处理,并且决定并行计算的粒度,rdd的每次转换操作都会生成新的rdd。在生成新的rdd时,一般可以指定分区的数量,如果不指定分区的数量,当rdd从集合创建的时候,则默认为该程序分配到的cpu核数,如果从hdfs创建,则默认为文件的block数。
-------------------------------------------------
版权声明:

相关文章推荐

spark RDD 论文

  • 2016-09-09 11:55
  • 1.02MB
  • 下载

Spark RDD 论文

  • 2016-07-17 22:11
  • 866KB
  • 下载

Spark RDD介绍

概念Spark是一个集群计算系统,主要抽象为一个弹性分布式数据集(resilient distributed data set,RDD)。RDD创建 Hadoop InputForm(如HDFS) 其...

Spark rdd讲解

  • 2017-06-09 16:21
  • 704KB
  • 下载

spark rdd 操作详解

  • 2015-04-22 15:11
  • 527KB
  • 下载

Spark RDD使用详解2--RDD创建方式

关键字:Spark RDD 创建、parallelize、makeRDD、textFile、hadoopFile、hadoopRDD、newAPIHadoopFile、newAPIHadoopRDD

Spark RDD API扩展开发2 : 自定义RDD

在本博客的《Spark RDD API扩展开发(1)》文章中我介绍了如何在现有的RDD中添加自定义的函数。本文将介绍如何自定义一个RDD类,假如我们想对没见商品进行打折,我们想用Action操作来实现...

Spark RDD 核心总结

http://www.cnblogs.com/arachis/p/SparkRDD.html 摘要:   1.RDD的五大属性     1.1 partitions(分区) ...

spark rdd 算子

刚开始使用SPARK的同学都会因为文档说明简单无示例而导致前期开发效率较低,在网上有一位老师的博客给出了很详细的使用示例,我简单将其翻译成中文,自己顺便也熟悉一下没使用过的API。 E文版 ...

spark RDD算子(三) distinct,union,intersection,subtract,cartesian

spark伪集合 尽管 RDD 本身不是严格意义上的集合,但它也支持许多数学上的集合操作,比如合并和相交操作, 下图展示了这四种操作 distinctdistinct用于去重, 我们生成的RD...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)