spark系列博客-(2)spark基础(重要)
2015-05-12 14:16
381 查看
1.核心概念(非常重要)
RDD:弹性的分布式数据集,是spark的设计核心,是一个高层的抽象
Operation:作用于RDD的各种操作,spark中的操作分为transformations和actions
Job:作业,一个job含有多个RDD和作用于RDD上的多种operation
Stage:一个job分为多个阶段
Partition:数据分区,一个RDD中的数据可分为多个不同的区
DAG:有向无环图,用来反应RDD之间的依赖关系
Narrow dependency:窄依赖,子RDD依赖于父RDD中固定的分区
Wide dependency:宽依赖,子RDD依赖于父RDD中所有的分区
Caching Management:缓存管理,spark中设计的一大亮点,可对RDD的中间计算结果进行缓存管理来加快整体的处理速度以提高性能
2.Spark中的编程模型
RDD是数据集,经transformations处理之后,数据集中的内容发生改变,数据集a转换成b,经action处理后,数据集中的内容会被规约为一个具体的数值。(只有当RDD上有action操作时,该RDD及父RDD上所有的操作才会被提交到cluster上去真正的执行)
3.Spark的aplication的部署
Spark支持的3种部署模式:standalone、Mesos和yarn
说明:
(1)当有action操作作用于RDD上,该action就会作为一个job被提交。在提交的过程中,DAGScheduler模块加入计算,来计算RDD之间的依赖关系,这种依赖关系就构成了DAG。
(2)每一个job被分为多个stage(阶段),划分stage的一个依据是当前计算因子的输入是否是确定的,若是则分在同一个stage,反之分在不同的stage上,从而避免多个stage之间的消息传递的开销。
(3)当stage被提交后,由taskScheduler来根据stage计算所需要的task,然后把task提交到对应的worker。
4.RDD接口(spark核心高层抽象)
RDD的组成:
(1)partitions:partition的集合,一个RDD包含多个partition
(2)Dependencies:RDD依赖关系
(3)Compute:对于不同的数据集,需要做何种计算
(4)preferredLocations:对于data partition的位置偏好
(5)Partitioner:对于计算出来的数据结果如何的分发
5.缓存机制-caching(spark设计亮点)
RDD的所有中间数据都可被缓存,缓存位置会优先选择memory,若memory不足,就会写到磁盘中
6.容错性
为了解决从最初的RDD到衍生的最后一个RDD的过程中可能发生错误处理,因此,spark的解决方案是:只对失效的data partition进行事件回调,而不是整个数据集,这会大大加快恢复
RDD:弹性的分布式数据集,是spark的设计核心,是一个高层的抽象
Operation:作用于RDD的各种操作,spark中的操作分为transformations和actions
Job:作业,一个job含有多个RDD和作用于RDD上的多种operation
Stage:一个job分为多个阶段
Partition:数据分区,一个RDD中的数据可分为多个不同的区
DAG:有向无环图,用来反应RDD之间的依赖关系
Narrow dependency:窄依赖,子RDD依赖于父RDD中固定的分区
Wide dependency:宽依赖,子RDD依赖于父RDD中所有的分区
Caching Management:缓存管理,spark中设计的一大亮点,可对RDD的中间计算结果进行缓存管理来加快整体的处理速度以提高性能
2.Spark中的编程模型
RDD是数据集,经transformations处理之后,数据集中的内容发生改变,数据集a转换成b,经action处理后,数据集中的内容会被规约为一个具体的数值。(只有当RDD上有action操作时,该RDD及父RDD上所有的操作才会被提交到cluster上去真正的执行)
3.Spark的aplication的部署
Spark支持的3种部署模式:standalone、Mesos和yarn
说明:
(1)当有action操作作用于RDD上,该action就会作为一个job被提交。在提交的过程中,DAGScheduler模块加入计算,来计算RDD之间的依赖关系,这种依赖关系就构成了DAG。
(2)每一个job被分为多个stage(阶段),划分stage的一个依据是当前计算因子的输入是否是确定的,若是则分在同一个stage,反之分在不同的stage上,从而避免多个stage之间的消息传递的开销。
(3)当stage被提交后,由taskScheduler来根据stage计算所需要的task,然后把task提交到对应的worker。
4.RDD接口(spark核心高层抽象)
RDD的组成:
(1)partitions:partition的集合,一个RDD包含多个partition
(2)Dependencies:RDD依赖关系
(3)Compute:对于不同的数据集,需要做何种计算
(4)preferredLocations:对于data partition的位置偏好
(5)Partitioner:对于计算出来的数据结果如何的分发
5.缓存机制-caching(spark设计亮点)
RDD的所有中间数据都可被缓存,缓存位置会优先选择memory,若memory不足,就会写到磁盘中
6.容错性
为了解决从最初的RDD到衍生的最后一个RDD的过程中可能发生错误处理,因此,spark的解决方案是:只对失效的data partition进行事件回调,而不是整个数据集,这会大大加快恢复
相关文章推荐
- javaSE_8系列博客——重要的基础Java类——Excavations(异常处理机制)--3--捕捉异常或指定要求
- javaSE_8系列博客——重要的基础Java类——多线程--2--进程和线程
- javaSE_8系列博客——重要的基础Java类——Exceptions(异常处理机制)--4--总结
- javaSE_8系列博客——重要的基础Java类——Excavations(异常处理机制)--1--宏观把控
- javaSE_8系列博客——重要的基础Java类——Excavations(异常处理机制)--2--什么是异常?
- javaSE_8系列博客——重要的基础Java类——多线程--1--宏观把控
- Linux基础系列(三)Linux系统文件和目录重要知识
- 渣渣小本求职复习之路每天一博客系列——Java基础(8)
- javaSE_8系列博客——Java语言的特性(二)--高级语言的基础知识(4)-- 变量和数组
- Spark入门实战系列--2.Spark编译与部署(上)--基础环境搭建
- 渣渣小本求职复习之路每天一博客系列——Java基础(7)
- 渣渣小本求职复习之路每天一博客系列——数据库基础(MySQL)(1)
- javaSE_8系列博客——Java语言的特性(二)--高级语言的基础知识
- LAMP系列之HTTP服务重要基础概念
- 系列博客(01) – 系统集成基础
- Spark基础知识系列一(从hdfs获取文件)
- 渣渣小本求职复习之路每天一博客系列——Java基础(4)
- Spark入门实战系列--2.Spark编译与部署(上)--基础环境搭建
- Spark基础知识系列(1)
- javaSE_8系列博客——Java语言的特性(二)--高级语言的基础知识(1)-- 变量