一、Spark核心概念-RDD
RDD是弹性分布式数据集,一个RDD由多个partition构成,一个partition对应一个task。RDD的操作分为两种:Trasformation(把一个RDD转换为另外一个RDD),Action(通过RDD计算得带一个或一组值)
二、Spark组件
Driver Programe:运行main函数和创建sparkContext的处理程序(parkContext是Spark程序所有功能的唯一入口,它核心作用: 初始化Spark应用程序运行所需要的核心组件,同时还会负责Spark程序往Master注册程序)。
Cluster Manager:集群上用于资源分配的服务。比如Yarn。
Worker Node:运行Spark程序的节点。
Executor:每个应用程序都有自己的executor。每个executor包含多个task。
Operation:作用于RDD的各种操作分为Transformation和Action
三、驱动程序(Driver Program)
Job:由spark的Action算子触发,有多少个action算子就有多少个Job
Stage:每个Job都会根据RDD的宽窄依赖关系被切分为多个Stage
Task:一个分区对应一个Task,Task执行RDD中对应Stage中包含的算子
DAG(有向无环图):反应RDD之间的依赖关系
DAG Scheduler:根据Job构建基于Stage的DAG,并提交Stage给TaskScheduler