spark前置知识总结:

1.spark专业术语:

关于任务

application:
用户写的应用程序(由两部分组成: Driver program + Execuotr program)

Job:
一个action类算子触发执行的操作,有多少个action类算子就有多少个job

stage:
一组任务, map task 一组任务(task) 就是一个stage

task:
(thread) 在集群运行时最小的执行单元

关于资源集群:

Master:
资源管理的主节点
Worker:
资源管理的从节点
Excutor:
执行任务的进程
ThreadPool:
线程池,存在于Executor进程中


2.RDD的依赖关系: 窄依赖+宽依赖

1.窄依赖:

父RDD与子RDD,patition之间的关系为一对一,那么父子RDD的依赖关系为窄依赖,无shuffle操作

(shuffle: 数据的规整,根据所使用的方法进行规整
partition:一份待处理的原始数据会被按照相应的逻辑(例如jdbc和hdfs的split逻辑)切分成n份,每份数据对应到RDD中的一个Partition,Partition的数量决定了task的数量,影响着程序的并行度)

spark知识总结

2.宽依赖:

spark知识总结
关系:
一个application 有多个job组成,job的个数跟action类算子个数相关, 一个job由多个stage组成,具体个数由RDD宽窄依赖决定,一个stage由一组task组成

3.宽窄依赖的作用:为了将一个个的job切成一个个的stage
spark知识总结同一个stage中,均为窄依赖,不同stage之间均未宽依赖

相关文章: