数据结构
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) 收藏 举报
浙公网安备 33010602011771号