数据结构

 

1.RDD

1.1定义

1.1.1 数据集

存储数据的计算逻辑

1.1.2 分布式

数据得来源,数据得存储

1.1.3 弹性

(1)血缘(依赖关系):spark可以通过特殊的处理方案简化依赖关系
(2)计算:Spark是基于内存的,性能特别高,可以和键盘灵活切换
(3)分区:Spark在创建默认分区后,可以通过指定的算子来改变分区数
(4)容错:spark在执行计算时,如果发生了错误,需要进行容错重试处理

1.1.4 数量

(1)Excutor:默认为两个,可以通过提交应用的参数设定,一个节点可以放多个excutor,一个excutor可以放多个内核,执行多个任务
(2)partition:默认情况下,读取文件采用hadoop的切片规则,
读取内存采用特定的算法设定;
多个阶段的场合,下一个阶段分区的数量取决于上一个阶段最后RDD的分区数,但是可以在相应的算子中进行修改
(3)stage:1(resultStage)+shuffle依赖的数量(shuffleMapStage),划分阶段的目的就是为了任务执行的等待,shuffle的过程需要落盘
(4)task:一个分区就是一个任务

1.2创建

(1)从内存中创建
(2)从存储中创建
(3)从其他RDD中创建

1.3 属性

(1)分区
(2)依赖关系
(3)分区器
(4)优先位置
(5)计算函数

1.4 使用

1.4.1 转换算子

单value类型
双value类型
key-value类型

1.4.2 行动算子

2.广播变量:分布式共享只读数据

3.累加器:分布式共享只写数据

posted on 2020-12-28 10:22  happygril3  阅读(63)  评论(0)    收藏  举报

导航