您的位置:首页 > 其它

RDD简介

2016-07-25 19:38 183 查看
从源码来看,RDD是被定义为了一个抽象基类,里面定义了像compute(计算分区),getPartitions(获取分片),getDependencies(获取依赖)等抽象函数及一系列基本函数(catch,persist,checkpointRDD)。然后具体的像 jdbcRDD, HadoopRDD, ShuffleRDD 等都继承自RDD并有份自己的实现。

[size=large] RDD的主要属性有以下部分组成:[/size]
一组分片
一个计算分区的函数
RDD之间的依赖关系----------------->实现自动容错
一个分区函数
一个列表,一个分区优先位置-------------------->位置感知(本地化)

[size=x-large]RDD的弹性表现[/size]
1、弹性之一:自动的进行内存和磁盘数据存储的切换;
2、弹性之二:基于Lineage的高效容错(第n个节点出错,会从第n-1个节点恢复,血统容 错);
3、弹性之三:Task如果失败会自动进行特定次数的重试(默认4次);
4、弹性之四:Stage如果失败会自动进行特定次数的重试(可以只运行计算失败的阶段);只计算失败的数据分片;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: